Shadowsocks Python版一键安装脚本

技术 251267 次围观 990 次吐槽

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

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

默认配置:
服务器端口:自己设定(如不设定,默认为8989)
客户端端口:1080
密码:自己设定(如不设定,默认为teddysun.com)
备注:脚本默认创建单用户配置文件,如需配置多用户,安装完毕后参照下面的教程 sample 手动修改配置文件后重启即可。

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

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

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

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

Congratulations, shadowsocks install completed!
Your Server IP:your_server_ip
Your Server Port:your_server_port
Your Password:your_password
Your Local IP:127.0.0.1
Your Local Port:1080
Your Encryption Method:aes-256-cfb

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

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

./shadowsocks.sh uninstall

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

{
    "server":"0.0.0.0",
    "server_port":8989,
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"yourpassword",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open": false
}

多用户多端口配置文件 Sample(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":"aes-256-cfb",
    "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)

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

更新日志:
(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版一键安装脚本

发表评论
取消评论
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
表情

已有评论 (990)

  1. SSR 和 Python的版本上,都可以做多用户吗? SSR的連接设定上还要设定 Protocol, obfs之类的,是增加安全性?比python的不容易被干扰吗? 话说现在很多人用了AES-256-cfb ,新版的SS有 AES-256-CTR之类的的加密,有推荐的吗? 谢谢~~
    okz18小时前回复
  2. 能不能做下Amazon linux的兼容?或者修改建议,我把你的脚本改动了下让检测amazon linux当做centos运行,是能安装上,但是运行报错 shadowsocks is not running /etc/init.d/shadowsocks: line 21: /usr/bin/ssserver: No such file or directory shadowsocks start failed 我改动的位置 if [ ! -z "`cat /etc/issue | grep Amazon`" ];then OS=CentOS
    kwkwkkk24小时前回复
    • 抱歉,我没有 AWS 测试环境。 暂时做不到兼容。 如果你有兴趣,可以联系我,我来做个适配。
      • 这个可以有,我可以吧我的key发给你
        kwkwkkk19小时前回复
  3. 对了,给shadowsocks设置的端口是1080,然后我也把SS服务启动起来了,但是我用netstat看,发现1080端口是关闭的。这是不是说明SS启动失败了?
    huangmou373天前回复
    • 看你贴出来的配置文件,端口是 8989
      • 可能是我表达错误,的配置文件是用你的安装包里面的默认配置,就是local port是1080,server port填8989。 然后在shadowsocks的windows客户端里,“服务器端口”我填8989,“代理端口”填1080,是正确的吧? 可是代理就是不成功。是不是还有哪里是我疏忽了呢?我研究了一个周末也没什么进展。。
        huangmou3723小时前回复
        • 仔细检查一下你的本地客户端设置,或者浏览器插件配置
          • 谢谢你!果然是浏览器插件的问题。最近chrome自动同步了代理插件,里面的代理配置信息是错误的,导致google, youtube自动走一个无效的代理。难怪一直访问不了。 希望我这个愚蠢的经验对大家遇到的问题也可以有帮助。。。
            huangmou378小时前回复
  4. 你好。我用你发的教程,成功跑了一段时间shadowsocks了,不过从昨天开始shadowsocks就翻墙不成功了。我重启过VPS,也看过shadowsocks的日志,看不出什么问题来。 [2016-08-27 19:41:27] Shadowsocks started [2016-08-27 19:41:49] Socket connected to ss server: 45.55.252.251:8989 [2016-08-27 19:41:49] connect to api.github.com:443 [2016-08-27 19:42:23] Shadowsocks started [2016-08-27 19:44:34] Socket connected to ss server: 45.55.252.251:8989 [2016-08-27 19:44:34] connect to safebrowsing.google.com:443 [2016-08-27 19:44:36] Socket connected to ss server: 45.55.252.251:8989 [2016-08-27 19:44:36] connect to safebrowsing-cache.google.com:443 [2016-08-27 19:50:27] Shadowsocks started 这是我的shadowsocks.json配置文件(就是默认的那个): { "server":"0.0.0.0", "server_port":8989, "local_address":"127.0.0.1", "local_port":1080, "password":"teddysun.com", "timeout":300, "method":"aes-256-cfb", "fast_open":false } 检查了防火墙,所有防火墙都处于未启用状态(inactive)。 想请问下你有没有什么建议?我现在不知道从哪里下手了。。。
    huangmou373天前回复
  5. 你好, 我主机在日本,我有放到你都shadowsocks.be介绍haproxy 中转,但是請問下,我是外国人,我要在中國国内租一个VPS比较好,还是用香港,台湾,日本临近的VPS做中转隐藏我的真实SS IP呢? 中國国内的有价格便宜,稳定的VPS吗?适合做中转的 谢啦
    okz4天前回复
    • 都可以啊。国内的 VPS 随便买喽,不过一般也就推荐阿里云吧。
  6. 博主,为什么在每次重启VPS后SS的进程都没在内存中,客户端都连不上。
    bitfish4天前回复
  7. 每当用个三五天就回连接不上了,用的manyuser,主账号能连接,一些子账号就连接不上了,是不是被系统进程杀掉了什么东西,每次重新安装就有好了,不过重新安装挺麻烦的,大神给支个招呗
    x4天前回复
  8. 你好,配置完以后访问网页提示502错误怎么解决呢?
    zyx6天前回复
  9. 秋大,你这最新的脚本怎么还是安装的2.8.2版本的ss,你查看下,是不是搞错了?
    g67g6天前回复
    • 你应该下载最新版代码来安装。
      • 最新版的代码来安装啥意思?用你这最新的脚本不是安装的最新的代码么
        g67g2天前回复
  10. 加密方式能够安装好有手动修改 /etc/shadowsocks.json这个档案吗? 加密方式我要用salsa20, chacah20, aes-256-ctr 目前好像用不了
    okz7天前回复
  11. 您好我是新手,已经安装成功了,也可以使用的,但是在配置多用户时总是失败,显示如下,想问一下我是错在了哪里?谢谢 [[email protected] ~]# { > "server":"0.0.0.0", > "local_address":"127.0.0.1", > "local_port":1080, > "port_password":{ > "8989":"888", > "9001":"888", > "9002":"888" > }, > "timeout":300, > "method":"aes-256-cfb", > "fast_open": false > } -bash: server:0.0.0.0,: command not found -bash: local_address:127.0.0.1,: command not found -bash: local_port:1080,: command not found -bash: port_password:{: command not found -bash: 8989:888,: command not found -bash: 9001:888,: command not found -bash: 9002:888: command not found -bash: },: command not found -bash: timeout:300,: command not found -bash: method:aes-256-cfb,: command not found -bash: fast_open:: command not found
    journey7天前回复
    • 如果你不会用 vim 来改的话,把配置文件下到本地来改好再上传覆盖
      • [[email protected] download]# /etc/init.d/shadowsocks start INFO: loading config from /etc/shadowsocks.json /usr/lib/python2.6/site-packages/shadowsocks-2.9.0-py2.6.egg/shadowsocks/shell.py:156: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 e.message) ERROR: found an error in config.json: Expecting property name: line 7 column 3 (char 128) shadowsocks start failed
        单纯耗子5天前回复