首页 » web开发 » CentOS下shadowsocks-nodejs一键安装脚本

CentOS下shadowsocks-nodejs一键安装脚本

作者: 低调的术木 分类: web开发 发布时间: 2015-02-02 21:51 ė浏览 1,818 次 6没有评论

shadowsocks2

本脚本适用环境:
系统支持:CentOS/Redhat/Fedora
内存要求:≥128M
日期:2014年07月12日

关于本脚本:
一键安装 Nodejs 版的 shadowsocks 最新版本,同时会安装 Nodejs 及其安装工具 npm。
备注:因为需要编译安装 Nodejs 的最新版,如果内存太小的话会安装失败,因此本人只在最低 128MB 的 VPS 上测试过该脚本。

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

客户端下载:
http://sourceforge.net/projects/shadowsocksgui/files/dist/

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

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

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

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

Welcome to visit:http://teddysun.com/355.html
Enjoy it!

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

./shadowsocks-nodejs.sh uninstall

其他事项:
客户端配置的参考链接:http://ubluesky.com/archives/673

安装完成后即已后台启动 shadowsocks 的服务器端 ssserver,运行:

ps -ef | grep ssserver | grep -v ps | grep -v grep

查看进程是否存在。
如果想要重启 ssserver 服务,按照以下步骤:
1、结束原进程。执行:killall node
2、后台开启新的进程。执行:nohup ssserver -c /etc/config.json > /dev/null 2>&1 &

本脚本安装完成后,会将 shadowsocks-nodejs 加入开机自启动。

最后,关于 shadowsocks-nodejs 版的配置文件(/etc/config.json)说明如下:

{
    "server":"my_server_ip",
    "server_port":8989,
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"teddysun.com",
    "timeout":600,
    "method":"aes-256-cfb"
}

server:服务器 IP (IPv4/IPv6),这也是服务端监听的 IP 地址
server_port:服务器端口
local_address:本地监听的 IP 地址
local_port:本地端端口
password:加密的密码
timeout:超时时间(秒)
method:加密方法,可选择 “bf-cfb”, “aes-256-cfb”, “des-cfb”, “rc4″, 等等。默认“table”是一种不安全的加密,推荐用 “aes-256-cfb”

更多版本 shadowsocks 安装:
CentOS下shadowsocks-go一键安装脚本
CentOS 下 shadowsocks-python 一键安装脚本
CentOS 下 shadowsocks-libev 一键安装脚本
Debian 下 shadowsocks-libev 一键安装脚本

更新日志:
(2014年07月12日)
1、修正获取公网 IP 时的一个问题。
2、作者官方已经停止对 nodejs 版的支持,建议选用 Python 或 libev 版。
(2014年05月27日)
1、修正开机自启动失效的问题。
2、优化是否后台启动成功的判断逻辑。

特别说明:
1、已安装旧版本的 shadowsocks 需要升级的话,需下载本脚本的最新版,运行卸载命令./shadowsocks-nodejs.sh uninstall 后,再次执行本脚本即可安装最新版。
2、关于 CentOS 的默认 iptables 防火墙规则 icmp-host-prohibited ,如果安装之后发现已经启动 shadowsocks,本地客户端却不能连接上,请检查 iptables 是不是有如下的一条规则:

REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

运行命令:

/etc/init.d/iptables status

可以查看。如果有这条规则,则添加的 8989 端口需手动更改一下,放到这条规则的上一行。编辑 /etc/sysconfig/iptables 文件,将:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 8989 -j ACCEPT

放在:

-A INPUT -j REJECT --reject-with icmp-host-prohibited

的前面。最终效果如下:

-A INPUT -p tcp -m state --state NEW -m tcp --dport 8989 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited

编辑完后,重启 iptables 防火墙。命令:/etc/init.d/iptables restart

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

本文出自 蓝天笔记,转载时请注明出处及相应链接。

本文永久链接: http://ubluesky.com/archives/681

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Ɣ回顶部