Shadowsocks-go一键安装脚本

技术 120875 次围观 456 次吐槽

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

关于本脚本:
一键安装 Go 版的 shadowsocks 最新版本 1.1.5。据说 go 版本有 buff 。与 Python 版不同的是,其客户端程序能使用多个服务端配置,本脚本安装的是服务端程序。作者默认推荐 aes-128-cfb 加密,基于一致性,脚本使用了 aes-256-cfb 加密方式。
友情提示:如果你有问题,请先参考这篇《Shadowsocks Troubleshooting》后再问。

默认配置:
服务器端口:自己设定(如不设定,默认为 8989)
客户端端口:1080
密码:自己设定(如不设定,默认为teddysun.com)

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

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

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

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

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

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

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

./shadowsocks-go.sh uninstall

其他事项:
客户端配置的参考链接:https://teddysun.com/339.html

安装完成后即已后台启动 shadowsocks-go ,运行:

/etc/init.d/shadowsocks status

可以查看 shadowsocks-go 进程是否已经启动。
本脚本安装完成后,已将 shadowsocks-go 加入开机自启动。

统一回复:
在 Bandwagonhost 的 VPS 上出现 Trace/breakpoint trap 现象的,初步认为是 Bandwagonhost 的系统问题。
经过测试发现,和版本升级无关,唯独在 Bandwagonhost 才会出现这个现象。建议换成 libev 版,或者将系统换为 CentOS 7 可以解决该问题。
本人不是 Shadowsocks Go 作者,安装程序均来自于这里

使用命令:
启动:/etc/init.d/shadowsocks start
停止:/etc/init.d/shadowsocks stop
重启:/etc/init.d/shadowsocks restart
状态:/etc/init.d/shadowsocks status

多用户多端口配置文件 sample(2015年01月08日):
配置文件路径:/etc/shadowsocks/config.json

{
    "port_password":{
         "8989":"password0",
         "9001":"password1",
         "9002":"password2",
         "9003":"password3",
         "9004":"password4"
    },
    "method":"aes-256-cfb",
    "timeout":600
}

官方版本的 sample ,详见这里

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

更新日志:
更新(2016年05月12日):新增在 CentOS 7 下的防火墙规则设置。
更新(2016年05月04日):更新 Shadowsocks-go 到版本 1.1.5。
更新(2015年08月01日):新增自定义服务器端口功能(如不设定,默认为 8989)。
更新(2015年05月11日):更新 Shadowsocks-go 到版本 1.1.4。
更新(2015年03月09日):新增支持在 Debian,Ubuntu 下安装。
更新(2015年01月08日):修改了启动脚本 /etc/init.d/shadowsocks ,按照 CentOS 的 chkconfig 标准语法修改了一下(原来使用的是作者 Github 上自带的)。去掉了以 nobody 用户启动 shadowsocks 的方式,改为直接以当前登录用户直接启动(一般是 root 用户)。开机自启动,以及修改端口号提示无权限的问题已经解决。
更新(2015年01月07日):支持在 CentOS 5,6 及 7 下安装。注意,在 CentOS 7 中是没有 iptables 的,默认的 firewalld 用起来比较麻烦,请参考《CentOS 7下LAMP一键安装》一文,用经典的 iptables-services 来替代 firewalld 。

参考链接:
https://github.com/shadowsocks/shadowsocks-go

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

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

已有评论 (456)

  1. 请教博主,go版要如何开启udp转发?
    mk479小时前回复
  2. 博主我想问一下,同一个端口可以设置多账号和密码吗?
    傲魂2天前回复
    • 不可以。一个端口只能设置一个密码(一个萝卜一个坑)。
  3. 秋大你好,发现这个go版本是没有生成log文件的, 而查看源代码是有的(https://github.com/shadowsocks/shadowsocks-go/search?utf8=%E2%9C%93&q=log),所以你修改了源码?
    i24天前回复
    • 生不生成 log ,是要看启动命令 /etc/init.d/shadowsocks 的,我在该启动脚本里写的就是不生成 log,而不是我修改了源码。
  4. 博主你好,为什么我多端口用不了,是因为我装了finalspeed的原因吗? 还有我运行这条命令/etc/init.d/shadowsocks status会出现 Could not find PID file /var/run/shadowsocks.pid, shadowsocks-go does not appear to be running 这个错误,怎么解决
    Bazinga1周前 (2016-07-15)回复
  5. 今天新vps用centos6.7,遇到连不上的问题,测试半天找到问题,默认规则里有一条 Chain INPUT REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited 导致开端口了ss能telnet上端口但客户端还是连接超时,有上行数据没反馈数据。 建议一键脚本里加判断如果有这条可以删除掉。
    UClinux1周前 (2016-07-14)回复
    • 这个 iptables 的规则不是默认生成的。应该是你的 VPS 商搞出来的。 脚本只会添加对应端口的规则,不会作其他改变。
      秋水逸冰1周前 (2016-07-14)回复
      • 嗯。那看来是我这个vps商默认规则多出来的。既然搞一键可以增加下判断方便大家。 还有建议给CentOS的/etc/crontab增加个定时任务监控服务进程。下午跑到现在刚才发现服务进程自动消失了。 准备加个定时任务监控进程。
        UClinux1周前 (2016-07-15)回复
  6. 博主你好,之前版本用单端口密码多用户用经常出问题,现在这个版本有解决吗?
    miemie2周前 (2016-07-14)回复
    • 根本不是版本的问题。该版本的多端口我用的好好的。多数情况下,是其他什么地方出了问题。
      秋水逸冰1周前 (2016-07-14)回复