Shadowsocks Python版一键安装脚本

技术 秋水逸冰 2388728浏览 1333评论

本脚本适用环境:
系统支持:CentOS 6,7,Debian,Ubuntu
内存要求:≥128M
日期:2018 年 02 月 07 日

关于本脚本:
一键安装 Python 版 Shadowsocks 的最新版。
友情提示:如果你有问题,请先参考这篇《Shadowsocks Troubleshooting》后再问。

默认配置:
服务器端口:自己设定(如不设定,默认从 9000-19999 之间随机生成)
密码:自己设定(如不设定,默认为 teddysun.com)
加密方式:自己设定(如不设定,默认为 aes-256-gcm)
备注:脚本默认创建单用户配置文件,如需配置多用户,安装完毕后参照下面的教程示例手动修改配置文件后重启即可。

Shadowsocks for Windows 客户端下载:
https://github.com/shadowsocks/shadowsocks-windows/releases

使用方法:
使用root用户登录,运行以下命令:

wget --no-check-certificate -O shadowsocks.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
chmod +x shadowsocks.sh
./shadowsocks.sh 2>&1 | tee shadowsocks.log

安装完成后,脚本提示如下:

Congratulations, Shadowsocks-python server install completed!
Your Server IP        :your_server_ip
Your Server Port      :your_server_port
Your Password         :your_password
Your Encryption Method:your_encryption_method

Welcome to visit:https://teddysun.com/342.html
Enjoy it!

卸载方法:
使用root用户登录,运行以下命令:

./shadowsocks.sh uninstall

单用户配置文件示例(2015 年 08 月 28 日修正):
配置文件路径:/etc/shadowsocks.json

{
    "server":"0.0.0.0",
    "server_port":your_server_port,
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"your_password",
    "timeout":300,
    "method":"your_encryption_method",
    "fast_open": false
}

多用户多端口配置文件示例(2015 年 08 月 28 日修正):
配置文件路径:/etc/shadowsocks.json

{
    "server":"0.0.0.0",
    "local_address":"127.0.0.1",
    "local_port":1080,
    "port_password":{
         "8989":"password0",
         "9001":"password1",
         "9002":"password2",
         "9003":"password3",
         "9004":"password4"
    },
    "timeout":300,
    "method":"your_encryption_method",
    "fast_open": false
}

使用命令(2015 年 08 月 28 日修正):
启动:/etc/init.d/shadowsocks start
停止:/etc/init.d/shadowsocks stop
重启:/etc/init.d/shadowsocks restart
状态:/etc/init.d/shadowsocks status

更多版本 Shadowsocks 服务端一键安装脚本:
ShadowsocksR 版一键安装脚本(CentOS,Debian,Ubuntu)
CentOS 下 Shadowsocks-libev 一键安装脚本
Debian 下 Shadowsocks-libev 一键安装脚本
Shadowsocks-go 一键安装脚本(CentOS,Debian,Ubuntu)
Shadowsocks 一键安装脚本(四合一)

参考链接:
https://teddysun.com/339.html

更新日志

(2018 年 02 月 07 日)
1、修改:将默认端口从 8989 改为从 9000-19999 之间随机生成。

(2017 年 07 月 21 日)
1、修正:默认加密方式从 aes-256-cfb 改为 aes-256-gcm(官方原版客户端支持该加密方式);
2、新增:安装时可选 16 种加密方式的其中之一。如下所示:

aes-256-gcm
aes-192-gcm
aes-128-gcm
aes-256-ctr
aes-192-ctr
aes-128-ctr
aes-256-cfb
aes-192-cfb
aes-128-cfb
camellia-128-cfb
camellia-192-cfb
camellia-256-cfb
chacha20-ietf-poly1305
chacha20-ietf
chacha20
rc4-md5

(2016 年 08 月 18 日)
1、修正:默认安装 Github 上 master 分支最新版本(目前为 2.9.0)。
2、修正:由于原作者已经不再更新 pip 下的源代码,故不再使用 pip 安装 Shadowsocks,而是改为下载 Github 的 master 分支来安装。如果在一段时间后,版本升级了,则先卸载,并再次执行本脚本就可以升级为最新版。

(2016 年 05 月 12 日)
1、新增在 CentOS 7 下的防火墙规则设置。

(2015 年 08 月 28 日)
1、修正控制脚本 /etc/init.d/shadowsocks 在 CentOS 7 无法查看 status 的问题。

(2015 年 08 月 01 日)
1、新增自定义服务器端口功能(如不设定,默认端口为 8989);

(2015 年 03 月 10 日)
1、新增在 Debian、Ubuntu 下的一键安装;

(2015 年 01 月 21 日)
1、修正配置文件,与官方给出的 Sample 一致;
2、修改启动脚本,使用官方给出的后台启动和停止命令。

(2014 年 10 月 10 日)
跟作者反馈了多用户多端口问题,作者已更新 Wiki 页面。本教程新增多用户多端口配置文件的 sample 。

(2014 年 09 月 24 日)
如何配置多用户?详见:这里
备注:Shadowsocks 已经支持多用户,在配置文件中增加不同的端口,对应不同的密码即可。

(2014 年 07 月 12 日)
1、修正获取公网 IP 时的一个问题。建议不要使用共享公网 IP 的 VPS 来搭建 Shadowsocks 服务。

(2014 年 05 月 29 日)
1、增加 chkconfig 配置,实现 service 命令。
2、配置文件名从 /etc/config.json 改为 /etc/shadowsocks.json(与官方的命名一致)。
3、配置文件中新增 workers ,值默认为 1(与官方配置同步)。

(2014 年 05 月 27 日)
1、修正开机自启动失效的问题。
2、优化是否后台启动成功的判断逻辑。

(2014 年 05 月 04 日)
1、修正对增加防火墙端口逻辑的判断bug,对于已经放行 8989 端口的情况下,则无需再次增加。
2、修正获取服务器 IP 的判断bug,对于多 IP 的 VPS 或服务器,默认只取第一个公网 IP 写到配置文件(/etc/config.json)里。
3、加入开机自启动。

转载请注明:秋水逸冰 » Shadowsocks Python版一键安装脚本

发表我的评论
取消评论

请输入正确答案后提交评论 *超出时限。 请再次填写验证码。

表情

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

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (1333)

  1. 大神,问下怎么更改vps里ss的密码?
    ejay6年前(2017-11-28)回复
  2. [root@yuchenghu88 ~]# useradd user1 # 新增用户 user1 useradd: user 'user1' already exists [root@yuchenghu88 ~]# useradd user2 useradd: user 'user2' already exists [root@yuchenghu88 ~]# /etc/shadowsocks-libev/config.json -bash: /etc/shadowsocks-libev/config.json: Permission denied [root@yuchenghu88 ~]# vi/etc/shadowsocks-libev/config.json -bash: vi/etc/shadowsocks-libev/config.json: No such file or directory 老大,我卡在这里进行不下去了。提示是说 没有权限 和 没有这样的文件或目录。求指教 万分感谢!!
    huzi6年前(2017-11-28)回复
  3. 老大。感谢你的一键脚本,确实方便实用 特别对我这种小白 但为什么实行/etc/shadowsocks-libev/config.json这个命令总是提示我权限不够?我好像查看不了配置文件啥的 谢谢
    huzi6年前(2017-11-28)回复
  4. 老大,感谢你的一键SS脚本。我想再请教一下,我本人才刚接触SS,比较小白。VPS如果有多个IP该怎么设置,我想达到的效果是VPS有多个IP,我在本地电脑上每个SS客户端连接同一个VPS里的不同IP。万分感谢。。希望能说的详细点。
    huzi6年前(2017-11-25)回复
    • 请使用 SSR 版本,自带支持,无需特殊设置即支持多 IP
      秋水逸冰6年前(2017-11-26)回复
  5. 今天用netstat -an |grep 'ESTABLISHED' |grep 'tcp'查看连接情况,我发现我的vps被8个莫名的IP地址建立tcp连接了,查了ip,大部分来自美国,还有一个来自爱尔兰,这些ip连接的倒不是我的ss端口,是一些类似34748这样的端口,这让我有点不知怎么回事,所以来请教您。
    allen6年前(2017-11-25)回复
    • 确认是哪个进程先,如果是 httpd 或 nginx 之类的也属正常吧
      秋水逸冰6年前(2017-11-26)回复
  6. 老师你好 用两天 服务就STOPPED 是什么原因
    winlong7年前(2017-11-08)回复
  7. 你好, 用两天就需要重启服务才能用 这是什么问题呢
    winlong7年前(2017-11-08)回复
  8. 逸冰老师好 请问我用多用户文件shadowsocks.json覆盖单用户文件后,多用户上不了。在本机测试也上不了,请问该如何处理?
    huzi7年前(2017-11-02)回复
    • 多用户上不了,用centos是防火墙档了,参考 http://blog.csdn.net/helinlin007/article/details/51469656 还有如果是CentOS 7,命令有点不一样,不能照复制作者的命令。 http://www.jb51.net/article/101576.htm
      Feng7年前(2017-11-04)回复
  9. 你好 如何才能限制设备登陆数量呢
    batting7年前(2017-11-01)回复
  10. 你好,感谢分享,我按照您的流程一步步做。最后在开启服务器的时候,输入/etc/init.d/shadowsocks start却提示found an error in config.json 说是少了一个逗号,无法开启服务器。请问这个应该怎么解决?谢谢
    William7年前(2017-10-28)回复
    • 你是不是修改过配置文件? 那应该就是配置文件里有错误,不符合 json 格式导致的。请仔细排查一下,或者贴出来我可以给你看看。
      秋水逸冰7年前(2017-10-28)回复
  11. 请问,我之前一直用你的好使。换了机房,速度很快,但是有天发现用不了了,上来就是 500错误,我把SS重启也不好使。我重新卸载,然后安装,也不好使。应该怎么办呢?怎样能完全清除这个SS,然后我重新安装,我怎么感觉这个清除命令不是完全清楚呢?谢谢
    zouzhe7年前(2017-10-22)回复
    • 500 错误大多是由于客户端引起的,最好是升级一下客户端再试试看。 如果想卸载 SS 服务端,也很简单,文章里有说明。
      秋水逸冰7年前(2017-10-22)回复
  12. 配置文件改了多端口之后还要做什么呢?新增了端口但是多的端口都连不上
    妖梦7年前(2017-10-19)回复
  13. 请问,下载了脚本后从哪里使用root用户登录?
    meow7年前(2017-10-10)回复
  14. 請問安裝後可以順利連上,卻無數據傳輸流量,防火牆關閉也無法,請問是為何呢?謝謝~
    lurecoral7年前(2017-10-07)回复
  15. 感謝了~安裝成功
    ZZ7年前(2017-10-04)回复