还有谁不知道我的网站域名更换为 doub.io 了?这都快两个月了,还有人不知道,一取消 301重定向,立马就找不到了!
逗比交流群: 531201358 / Telegram

『原创』CentOS/Debian/Ubuntu ShadowsocksR 单/多端口 一键管理脚本

Shadowsocks Toyo 243评论
文章目录
[显示]
本文最后更新于 2017年2月19日 18:41 可能会因为没有更新而失效。如已失效或需要修正,请留言!

最近经常有小白找我让我把他们安装ShadowsocksR服务端,一开始都是手动安装的,后来嫌麻烦,就打算用脚本,但是不想用别人写的,于是自己写了一个一键安装脚本,正好拿来练手学习一下Shell脚本。


更多的Shadowsocks安装教程/一键脚本请看这里:Shadowsocks指导篇

系统要求

CentOS 6+ / Debian 6+ / Ubuntu 14.04 +

推荐 Debian 7 x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。并且最容易安装锐速(锐速不支持OpenVZ)

CentOS根据大家的要求,加入了CentOS 6和7的支持,CentOS 7 自带防火墙问题自行解决,其他版本没有做测试。

脚本版本

Ver: 1.2.6

脚本特点:

目前网上的各个ShadowsocksR脚本基本都是只有 安装/启动/重启 等基础功能,对于小白来说还是不够简单方便。既然是一键脚本,那么就要尽可能地简单,小白更容易接受使用!

  1. 支持 限制 端口速度
  2. 支持 限制 端口设备数
  3. 支持 设置 定时重启
  4. 支持 显示 当前连接IP
  5. 支持 显示 SS/SSR连接+二维码
  6. 支持 切换管理 单/多端口
  7. 支持 一键安装 锐速
  8. 支持 一键安装 BBR
  9. 支持 一键封禁 垃圾邮件(SMAP)/BT/PT

安装步骤

简单的来说,如果你什么都不懂,那么你直接一路回车就可以了!

wget -N --no-check-certificate https://softs.pw/Bash/ssr.sh && chmod +x ssr.sh && bash ssr.sh

备用下载地址(上面的链接无法下载,就用这个):

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/ssr.sh && chmod +x ssr.sh && bash ssr.sh

下载运行后会提示你输入数字来选择要做什么。

如果你的安装过程中出现了什么特别的提示看不懂,那就一路回车。

输入 1 ,就会开始安装ShadowsocksR服务端,并且会提示你输入Shadowsocks的 端口/密码/加密方式/ 协议/混淆(混淆和协议是通过输入数字选择的) 等参数。

如果协议是origin,那么混淆也必须是plain !

请输入ShadowsocksR账号的 端口:
(默认端口: 2333):
——————————————————————————————
 端口 : 2333 
——————————————————————————————

请输入ShadowsocksR账号的 密码:
(默认密码: doub.io):
——————————————————————————————
 密码 : doub.io
——————————————————————————————

请输入数字 来选择ShadowsocksR账号的 加密方式:
1. rc4-md5
2. aes-128-ctr
3. aes-256-ctr
4. aes-256-cfb
5. aes-256-cfb8
6. camellia-256-cfb
7. chacha20 (需要安装libsodium)
8. chacha20-ietf (需要安装libsodium)
(默认加密方式: 2. aes-128-ctr):
——————————————————————————————
 加密方式 : aes-128-ctr
——————————————————————————————

请输入数字 来选择ShadowsocksR账号的 协议( auth_aes128_* 及以后的协议不再支持 兼容原版 ):
1. origin
2. auth_sha1_v4
3. auth_aes128_md5
4. auth_aes128_sha1
(默认协议: 2. auth_sha1_v4):
——————————————————————————————
 协议 : auth_sha1_v4
——————————————————————————————

请输入数字 来选择ShadowsocksR账号的 混淆:
1. plain
2. http_simple
3. http_post
4. random_head
5. tls1.2_ticket_auth

(默认混淆: 5. tls1.2_ticket_auth):
——————————————————————————————
 混淆 : tls1.2_ticket_auth 
——————————————————————————————

是否设置 混淆 兼容原版 ( _compatible )? [Y/n] :y
请输入 ShadowsocksR账号欲限制的设备数 ( auth_* 系列协议 不兼容原版才有效 )
 注意: 该设备数限制,指的是每个端口同一时间能链接的客户端数量(多端口模式,每个端口都是独立计算)。
(回车 默认无限):5
——————————————————————————————
 链接设备数 : 5 
——————————————————————————————

请输入 你要设置的每个端口 单线程 限速上限(单位:KB/S)
 注意: 这个指的是,每个端口 单线程的限速上限,多线程即无效。
(回车 默认无限):666

——————————————————————————————
 单端口单线程 : 666 KB/S 
——————————————————————————————

请输入 你要设置的每个端口 总速度 限速上限(单位:KB/S)
 注意: 这个指的是,每个端口 总速度 限速上限,单个端口整体限速。
(回车 默认无限):2333

——————————————————————————————
 单端口总限速 : 2333 KB/S 
——————————————————————————————
Tip:12月30日以后的SSR服务端只有 混淆 支持兼容原版,auth_aes128_* 及以后的协议不再支持(也就是加后缀 _compatible)。

同时最后也会提示是否设置 混淆 兼容原版(也就是使用原版SS也能链接),不懂 直接回车输入 y 。(协议不在兼容原版)

注意:关于限制IP数,这个协议必须是非原版并且不兼容原版才有效,也就是必须SSR客户端使用协议的情况下,才有效!

不输入一路回车就是 默认参数:

端口 : 2333
密码 : doub.io
加密 : aes-128-ctr
协议 : auth_sha1_v4_compatible
混淆 : tls1.2_ticket_auth_compatible
设备数限制: 0(无限)
单线程限速: 0 KB/S (不限速)
端口总限速: 0 KB/S (不限速)

最后会提示让你确认是否输入正确,如果没问题那就按任意键继续安装,如果输入错误,那么就使用 Ctrl + C 退出脚本。

——————————————————————————————
 请检查Shadowsocks账号配置是否有误 !

 端口     : 2333
 密码     : doub.io
 加密     : aes-128-ctr
 协议     : auth_sha1_v4_compatible
 混淆     : tls1.2_ticket_auth_compatible
 设备数限制: 5
 单线程限速: 666 KB/S 
 端口总限速: 2333 KB/S
——————————————————————————————

请按任意键继续,如有配置错误请使用 Ctrl+C 退出。

如果安装过程没有出错,那么最后就会提示:

############################################################

 你的ShadowsocksR 账号配置 : 

 I P     : xxx.xxx.xxx.xxx
 端口     : 2333 
 密码     : doub.io
 加密     : aes-128-ctr
 协议     : auth_sha1_v4_compatible
 混淆     : tls1.2_ticket_auth_compatible 
 设备数限制: 5
 单线程限速: 666 KB/S 
 端口总限速: 2333 KB/S 

 SS链接: ss://xxxxxxxxxxxxx
 SS二维码: http://pan.baidu.com/share/qrcode?w=300&h=300&url=ss://xxxxxxxxxxxxx
 SSR链接: ssr://xxxxxxxxxxxxx
 SSR二维码: http://pan.baidu.com/share/qrcode?w=300&h=300&url=ssr://xxxxxxxxxxxxx

提示:
 浏览器中,打开二维码链接,就可以看到二维码图片。
 协议和混淆后面的[ _compatible ],指的是兼容原版Shadowsocks协议/混淆。

############################################################

SS/SSR链接(格式: ss://XXXXXXX ,很长),可以从剪辑版导入Shadowsocks客户端,不懂的话看下面二维码。

SS/SSR二维码,复制后面的链接在浏览器打开,就会显示一个二维码的图片,可以用Shadowsocks客户端扫描二维码来添加。

注意:SS/SSR链接 和 SS/SSR二维码链接 换行问题已经修复了。

使用说明

运行脚本,

bash ssr.sh

输入对应的数字来执行相应的命令。

请输入一个数字来选择对应的选项。

 1. 安装 ShadowsocksR
 2. 安装 libsodium(chacha20)
 3. 显示 单/多端口 账号信息
 4. 显示 单/多端口 连接信息
 5. 修改 单端口用户配置
 6. 手动 修改 用户配置
 7. 卸载 ShadowsocksR
 8. 更新 ShadowsocksR
————————————————
 9. 切换 单/多端口 模式
 10. 添加 多端口用户配置
 11. 修改 多端口用户配置
 12. 删除 多端口用户配置
————————————————
 13. 启动 ShadowsocksR
 14. 停止 ShadowsocksR
 15. 重启 ShadowsocksR
 16. 查看 ShadowsocksR 状态
 17. 查看 ShadowsocksR 日志
————————————————
 18. 安装 锐速(ServerSpeeder)
 19. 停止 锐速(ServerSpeeder)
 20. 重启 锐速(ServerSpeeder)
 21. 查看 锐速(ServerSpeeder) 状态
 22. 卸载 锐速(ServerSpeeder)
————————————————
 23. 安装 BBR(需更换内核, 存在风险)
 24. 封禁 BT/PT/垃圾邮件(SPAM)
 25. 设置 ShadowsocksR定时重启
 26. 设置 ShadowsocksR 设备数限制
 27. 设置 ShadowsocksR 速度限制
————————————————
  0. The scripting language is English
 注意事项: 锐速/BBR 不支持OpenVZ虚拟化 !
 当前状态: 已安装 并 已启动 
 当前模式: 单端口 

文件位置

安装目录:/etc/shadowsocksr/shadowsocks

配置文件:/etc/shadowsocksr/user-config.json

其他说明

默认 ShadowsocksR 和 锐速(ServerSpeeder) 已经添加开机启动。

ShadowsocksR 默认支持UDP转发。

本脚本已经集成了 安装/卸载 锐速(ServerSpeeder)开心版,但是是否支持请查看 Linux支持内核列表 。(锐速不支持OpenVZ)

ShadowsocksR目前支持的协议和混淆:

协议(Protocol):origin,auth_sha1_v4,auth_aes128_md5,auth_aes128_sha1

混淆(Obfs):plain,http_simple,http_post,random_head,tls1.2_ticket_auth

origin 和 plain 是原版,加粗的是推荐使用的。

Tip:12月30日以后的SSR服务端只有 混淆 支持兼容原版, auth_aes128_* 及以后的协议不再支持(也就是加后缀  _compatible)。

ShadowsocksR 端口限速中 单线程限速 和 端口总限速 的区别

注意:如果要使用脚本中的这个功能,需要重新下载脚本,并重装安装 2月15日 以后的ShadowsocksR服务端才行。

 

请查看这个文章:ShadowsocksR服务端 限制设备连接数 和 限制端口速度 的方法

解决 可使用原版协议,单无法使用ShadowsocksR协议 的问题

如果发现Shadowsocks原版协议/混淆可以使用,而ShadowsocksR的协议/混淆无法使用,那么多半是 VPS时区问题

这个命令,我的ShadowsocksR脚本在安装的时候已经执行了,如果你发现没有执行,那你可以手动执行。

我们可以通过下面这个命令,把VPS的时区调整为北京时区,这样就避免了ShadowsocksR 协议/混淆 因为时差太大造成的无法验证。

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

注意,部分VPS会提示你是否覆盖文件,输入 y 然后回车。

如果你遇到,crontab设定的定时任务不按更换时区后的VPS时间执行,那么请点击展开

提示 Media change: please insert the disc labeled‘Debian GNU/Linux 7.0.0 Wheezy — Official amd64 CD 等信息是 apt源 的问题,更换 apt源

点击展开 查看解决办法

提示wget: unknown host “softs.pw” 之类的错误

这是无法解析我的域名,多半是DNS的问题,请更换DNS为谷歌DNS。

echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 8.8.4.4" >> /etc/resolv.conf

提示 wget: command not found 的错误

这是你的系统精简的太干净了,wget都没有安装,所以需要安装wget。

CentOS系统:

yum install -y wget

Debian/Ubuntu系统:

apt-get install -y wget

升级脚本

升级脚本只需要重新下载脚本文件就可以了,会自动覆盖原文件。

wget -N --no-check-certificate https://softs.pw/Bash/ssr.sh

本脚本只是本人的第一个Shell脚本学习练手作品,在逻辑结构上问题不少,大家遇到什么BUG请积极反馈!

更新日志

2017年02月19日,版本 v1.2.6

1.新增 菜单 脚本 中文/英语 语言切换选项。

—— 有部分国外友人表示看不懂中文,所以就把脚本做成了可以中英文切换的了,虽然是谷歌翻译- -。

点击展开 查看更多更新日志


更多的Shadowsocks安装教程/一键脚本请看这里:Shadowsocks指导篇

转载请超链接注明:逗比根据地 » 『原创』CentOS/Debian/Ubuntu ShadowsocksR 单/多端口 一键管理脚本
责任声明:本站一切资源均原创或收集自互联网,仅作交流学习之用,请勿用作商业!如造成任何后果,本站概不负责!

赞 (32)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(243)个小伙伴在吐槽
  1. 防火墙规则在服务器重启后就会被清空,希望加入防火墙自启动功能
    WWW2017-02-18 23:09 (2天前)回复
  2. Ubuntu 14.04 64位的在安装的时候提示JSON解析器安装失败
    wahahha2017-02-17 21:33 (3天前)回复
1 3 4 5