Shadowsocks Python版一键安装脚本

技术 秋水逸冰 2613626浏览 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. 为什么我电脑可以翻过去,手机上用影梭连接上了,但是上不了被墙的网呢?
    UMMMMMMM9年前(2015-03-13)回复
    • 可能的原因是 DNS 污染,此时需要在服务器端安装 libev 版(脚本默认是开启 UDP 转发),然后在手机端勾选 UDP 转发后再试。
      秋水逸冰9年前(2015-03-13)回复
  2. 你好,请问这个Python版本的支持udp转发吗?
    小圈9年前(2015-03-08)回复
    • Python 版不支持 udp 转发,libev 版是支持的。
      秋水逸冰9年前(2015-03-08)回复
      • 我已经安装了你的Python版本,是不是需要卸载了再去安装libev版本呀?
        小圈9年前(2015-03-08)回复
        • 是的,要卸载,不然端口会冲突的。
          秋水逸冰9年前(2015-03-09)回复
  3. python的包可以用在debian 7吗?
    gladuo9年前(2015-03-08)回复
  4. 站长您这个安装方法确实高效,本人小白,试了网上很多其他的SS安装教程,都没成功。有一点我很困惑,其他的教程(mengskysama-manyuser)涉及到了shadowsocks.sql(https://github.com/mengskysama/shadowsocks/tree/manyuser),而本教程并没有用到数据库,那我在装ss-panel的时候shadowsocks.sql怎么解决呢?很抱歉问这么幼稚的问题,还望赐教!谢谢!
    sunnyhall9年前(2015-03-07)回复
    • ss-panel是一个前端面板,SS 不依赖这个,根本无需数据库。 关于这个面板的问题,你去作者的 Github 页面去看看比较好。
      秋水逸冰9年前(2015-03-07)回复
  5. 您好..我注册了一个VPS按照教程顺利安装了,检查状态以及ping服务器IP的时候都没有问题,但使用起来的时候却怎么也连不上````不知道怎么办好了
    Ein9年前(2015-03-05)回复
    • 我也不知道你是哪个步骤出了问题。也许是客户端配置?
      秋水逸冰9年前(2015-03-05)回复
  6. 博主,wget一键脚本下不了啊,400错误
    xzm9年前(2015-03-04)回复
    • 请复制完整命令: wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
      秋水逸冰9年前(2015-03-04)回复
  7. 你好,debian想配置多用户配合ss-panel使用,这个教程能行的通吗?小白一枚......
    Soaper9年前(2015-02-26)回复
    • 脚本只是安装 ss ,而 ss-panel 是前端控制面板,多用户的话,多搞几个端口出来就可以了。 Debian 下安装 ss,作者的 Github 页面有简便的方法安装。
      秋水逸冰9年前(2015-02-26)回复
      • 嗯,谢谢了。我看了另外一个作者的ss(非ss-panel)的教程配置了一次。后来我在运行的时候发生db thread except:(2003, “Can’t connect to MySQL server on ‘localhost’ (110)”)这个错误,那个教程的作者也解释不清这个问题,问一下,您能帮忙看下这个错误是什么吗?http://sunweiwei.com/1915/ 顺带贴一下他那个地址。麻烦您了。
        Soaper9年前(2015-02-27)回复
        • 他这个就是带了前端 ss-panel 的安装教程,写的语焉不详。 根据错误提示,应该是无法连接 MySQL 错误,检查 MySQL 进程是否启动了。
          秋水逸冰9年前(2015-02-27)回复
          • 十分感谢。当时从字面来看就是Mysql的的错误,经过几天的磨练,学习了一些基本的shell指令还有一些知识,我已经解决了这个问题了,是在AMH面板下,Mysql的端口监控默认是Off的,开启之后已经成功的配置了前端与后端。谢谢博主的技术博文。那篇教程的确是语焉不详,看得我这小白基本都乱了。
            Soaper9年前(2015-02-28)回复
            • 我和你出现的同样问题,用的是军哥的lnmp,请问,Mysql的端口监控是怎么开启的呀?谢谢
              sunnyhall9年前(2015-03-07)回复
  8. 谢谢,我按照你的教程配置成功了。请问,我可以转载这个文章吗?
    huiyu9年前(2015-02-24)回复
  9. 你好。安装成功后/etc/init.d/shadowsocks status查询一直显示 shadowsocks is not running。麻烦了
    guaitai9年前(2015-02-22)回复
  10. 怎样才能修改加密方式和端口呢
    lsqhaha10年前(2015-02-17)回复
  11. 我是新手,弱弱的问下,我之前在按照这个教程https://plus.google.com/u/0/103234343779069345365/posts/Xce4EJpLGhX用putty安装的ss。现在问下你这个一键安装脚本也是要在类似putty客服端安装吧,请问这个客户端叫什么啊?大神指导一下我吧!
    新手10年前(2015-02-15)回复
    • 是个ssh客户端就行吧
      lhac9年前(2015-03-04)回复
  12. 这啥,看起来好难的样子
    10年前(2015-02-11)回复
  13. 赞一个!!!
    ff10年前(2015-02-10)回复
  14. 同一个VPS,shadowsocks没有PPTP VPN那么稳定,这种情况是shadowsocks连接被干扰了吗?? 用shadowsocks看youtube视频缓冲到一半就卡住不动了,用PPTP就可以从头到尾一直缓冲下去不会卡。
    Lucy10年前(2015-02-08)回复
    • 建议换个服务端端口再试试。比如将 8989 换成 9898
      秋水逸冰10年前(2015-02-08)回复
      • 早就试过换端口了,换过N个端口试过都一样。 VPS是搬瓦工9.9刀那个,洛杉矶和凤凰城机房都试过,加上我用电信和移动不同线路都有一样的问题。
        Lucy10年前(2015-02-08)回复
        • 被干扰倒是不至于,我自己用的也是搬瓦工,720p完全无压力。 可能还是本地网络的问题吧。或者你试试看卸载后重装。
          秋水逸冰10年前(2015-02-09)回复
    • 建议用Proxifier,可以把shadowsocks全局,速度提升很明显
      四弦10年前(2015-02-14)回复
  15. { "server":"0.0.0.0", "server":"::", "local_address": "127.0.0.1", "local_port":1080, "port_password":{ "8989":"password0", "9001":"password1", "9002":"password2", "9003":"password3", "9004":"password4" }, "timeout":300, "method":"aes-256-cfb", "fast_open": false } 这样就让V6 也支持了
    LookBack10年前(2015-02-07)回复
    • “server”:”0.0.0.0″, “server”:”::” ip是留空的还是填VPS给出的ipv6的地址啊,可以ipv6和ipv4一起用么?该怎么写?我买的VPS同时提供ipv4和ipv6的地址,谢谢了
      starrynight10年前(2015-02-11)回复
      • 国内的话就别折腾 ipv6 了,原因你懂的。
        秋水逸冰10年前(2015-02-11)回复