关于CentOS爬墙那点事,CentOS7 VPN-Shadowsocks

接上文。接着来实现第二种方式:Shadowsocks。

今天听说软件作者被请去喝茶了,不过这种思路估计不容易被封锁吧。

项目首页(https://github.com/shadowsocks/shadowsocks

如今SS安装使用已经很简单,几句命令而已,轻量级的优点吸引了不少人。

安装
1
2
yum install python-setuptools && easy_install pip
pip install shadowsocks
启动
1
sudo ssserver -p 443(端口) -k test!ss(密码) -m aes-256-cfb(加密方式) --user nobody(运行用户)-d start
添加防火墙规则
1
2
vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
测试,添加至启动项
1
2
echo "ssserver -p 443(端口) -k test!ss(密码) -m aes-256-cfb(加密方式) --user nobody(运行用户)-d start" >> /etc/rc.local
chmod +x /etc/rc.d/rc.local
各个平台也几乎都有了SS客户端,输入服务器地址,密码, ENJOY!
其他几点以及一些实用的优化:

关于SS的管理平台

用的比较多的就是ss-panel以及whmcs,个人使用没必要安装。

查看当前连接的脚本,因为是按需连接,所以只能看到当前连接在用的用户:

1
netstat -tun|grep 端口号|sort|awk '{print $5}'|cut -d : -f 1|uniq

PHP Version:

1
<?php exec("netstat -tun|grep 端口号|sort|awk '{print $5}'|cut -d : -f 1|uniq", $ips); var_dump($ips); ?>

对于linux3.0以上内核,可以开启fast-open,启动命令中添加:

1
sudo ssserver -p 443(端口) -k test!ss(密码) -m aes-256-cfb(加密方式)--fast-open --user nobody(运行用户)-d start

当然客户端也要开启,添加到客户端配置json文件:

1
"fast_open": true,

关于TCP优化,开启Hybla算法,聊胜于无,按照网上配置吧,实测Vultr还是不优化快一点,根据使用环境按需使用

1
vi /etc/sysctl.conf
1
2
3
4
5
6
7
8
9
10
11
12
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_rmem = 4096 87380 67108864
net.ipv4.tcp_wmem = 4096 65536 67108864
net.ipv4.tcp_mtu_probing = 1
net.ipv4.tcp_congestion_control = hybla

启用Hybla模块:

1
/sbin/modprobe tcp_hybla

应用更改:

1
sysctl -p