Shadowsocks Python版一键安装脚本

技术 秋水逸冰 2614405浏览 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. 请问这个教程是否使用在树莓派上的安装?谢谢!
    John9年前(2015-07-30)回复
    • 不能在树莓派安装。
      秋水逸冰9年前(2015-07-30)回复
      • 额~~~我树莓派2B刷的raspbian安装成功了....
        最终幻想9年前(2015-08-03)回复
  2. shadowsocks真是个好软件,在lovvps上开了一个vps,pptp始终没弄通,那个客服推荐用了ss,感觉比v要方便多了。原来一直是手工一行一行的安装,有了这个脚本好多了,谢谢
    kala9年前(2015-07-29)回复
  3. # pip install -U shadowsocks /usr/lib/python2.6/site-packages/pip-7.1.0-py2.6.egg/pip/_vendor/requests/packag es/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib 3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning Requirement already up-to-date: shadowsocks in /usr/lib/python2.6/site-packages ========================== 执行升级命令 出现这些提示 是什么情况?
    夷青青9年前(2015-07-28)回复
    • pip 升级的网址出现 ssl 证书问题。
      秋水逸冰9年前(2015-07-28)回复
      • 求大神指导 如何解决
        夷青青9年前(2015-07-30)回复
  4. 你好,server_port":8989 ,这个不能改的吗?为什么一改成其他端口就永不了ss
    9年前(2015-07-27)回复
    • 可以改,但是改完后需要重启,并且,防火墙对应的端口也要放行。
      秋水逸冰9年前(2015-07-27)回复
  5. 能教一下如何把原本设置为IPv6的变成IPV4的吗?谢谢
    踏莎行9年前(2015-07-25)回复
  6. 请问怎么把ipv6的变成ipv4的途径呢?
    踏莎行9年前(2015-07-25)回复
  7. 老大,这个速度很慢,怎么优化,我选的是旧全的机房,下载速度只有10k,看youtube也是卡卡的
    没格调9年前(2015-07-24)回复
    • 是三藩市,不是旧金山。昨天说错。用speed.net测速很快,下载速度有8M多,可是看youtube还是卡卡的 ,几乎没法看,几秒卡一次,老大给个解决办法
      没格调9年前(2015-07-25)回复
      • 很多人都说看 youtube 卡。但这真不是我能有办法解决的。 试试看开启 hybla ,网上找下教程。
        秋水逸冰9年前(2015-07-25)回复
  8. 老大,请问一个帐号可以有俩台设备用不,比如电脑,手机一起用,需要俩个帐号还是一个帐号俩个同时都能用
    没格调9年前(2015-07-24)回复
  9. { "server":"0.0.0.0", "local_address":"127.0.0.1", "local_port":1080, "port_password":{ "18989":"Mm7758258", "18111":"Mm7758258", "19865":"Mm7758258", "17333":"Mm7758258", "16444":"Mm7758258" }, "timeout":300, "method":"rc4-md5", "fast_open": false } 这个是我的配置文件 但是配置的多端口后 时间一长就连不上 有时候一天多 有时候几小时就断 PING服务器又正常 只有重启服务器才能解决 不知道是什么原因
    666669年前(2015-07-23)回复
    • 具体应该跟哪家的 VPS 有关。
      秋水逸冰9年前(2015-07-23)回复
    • 我也是这样的,一般每天就会断一两次,每次持续时间几分钟到一小时不等,但是能ping能ssh登录 linode机房
      流歌9年前(2015-07-30)回复
  10. Python版本还带 udp吗
    JOKER9年前(2015-07-21)回复
    • 我想你在问这个问题之前,能不能稍微的看一下本页的评论。
      秋水逸冰9年前(2015-07-21)回复
    • Python 和 Go版本都不带UDP转发,libev版就有带,但默认不支持多端口
      Ave9年前(2015-07-22)回复
  11. 博主……如果我依然因为技术和运气的原因鼓捣了linode半天不管是debian还是centos都在安装过程中失败,我能付费请博主帮我安装上吗?个人私用,不用担心被ddos攻击哦问题,只要后台自动运行就行了 我把vps账号密码发给博主,开通可用后支付宝转账 博主如果同意我再联系博主
    匿名9年前(2015-07-19)回复
  12. 买了个digitalocean的VPS。自己装不来SS和PPTP,百度胡乱一搜,搜到了博主的网站,很方便的就装了上去。非常感谢博主。 另外能出一个PPTP和SS一起安装的包不?
    xxX9年前(2015-07-17)回复
  13. 用了你的键安装脚本,只是修改了单用户配置,可是就是死活链接不上。这是怎么回事呀?望大神帮忙下
    王炎9年前(2015-07-17)回复
    • 只是修改了单用户配置。 嗯,一定是修改的姿势不对。
      秋水逸冰9年前(2015-07-18)回复
  14. 求教大神 支持UDP到底怎么加 -u You can supply configurations via either config file or command line arguments. Proxy options: -c CONFIG path to config file -s SERVER_ADDR server address, default: 0.0.0.0 -p SERVER_PORT server port, default: 8388 -k PASSWORD password -m METHOD encryption method, default: aes-256-cfb -t TIMEOUT timeout in seconds, default: 300 --fast-open use TCP_FASTOPEN, requires Linux 3.7+ --workers WORKERS number of workers, available on Unix/Linux --forbidden-ip IPLIST comma seperated IP list forbidden to connect General options: -h, --help show this help message and exit -d start/stop/restart daemon mode --pid-file PID_FILE pid file for daemon mode --log-file LOG_FILE log file for daemon mode --user USER username to run as -v, -vv verbose mode -q, -qq quiet mode, only show warnings/errors --version show version information 每次都这样
    gangster9年前(2015-07-17)回复
    • Python 版不支持 udp reply,所以没有加 -u 这个参数。 libev 版则默认已经支持。启动脚本里也默认加了 -u 参数。
      秋水逸冰9年前(2015-07-17)回复
  15. 配置单个用户的时候完全正常,但是如果配置多个用户,按照你的配置sample,配置之后执行重启ss的命令,就会出现如下症状,请指教! stopping shadowsocks-go with PID 10965 starting shadowsocks-go start failed
    gabriel9年前(2015-07-14)回复
    • 肯定配置文件错了。 你在 python 版这篇文章下面评论,我看到的却是 go 版的启动失败信息。
      秋水逸冰9年前(2015-07-15)回复