科学上网教程(二)——VPS优化加速
1 2 3 4 5 6 |
更新 2016.06.26 与SSR有关部分基本完成。 2016.06.28 TCP优化部分完成 2016.06.29 gfw.press、FinalSpeed和锐速部分基本完成。 2016.12.11 重新整理相关内容,增加SSR混淆 2016.12.15 增加TCP-BBR |
TCP优化
适用场景:高延迟搞丢包线路。
- 增加TCP连接数量
1
nano /etc/security/limits.conf
添加两行:
1 2
* soft nofile 51200 * hard nofile 51200
保存(Ctrl + X —— y ——回车)
- 设置ulimit:
1
ulimit -n 51200
- 修改内核参数适合的还是hybla(高延迟高丢包率环境)
首先看一下VPS现有算法:1
sysctl net.ipv4.tcp_available_congestion_control
没有hybla时,加载hybla算法.
1
/sbin/modprobe tcp_hybla
开始修改
1
nano /etc/sysctl.conf
复制代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#TCP配置优化(不然你自己根本不知道你在干什么) fs.file-max = 51200 #提高整个系统的文件限制 net.core.rmem_max = 67108864 net.core.wmem_max = 67108864 net.core.netdev_max_backlog = 250000 net.core.somaxconn = 4096 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.ip_local_port_range = 10000 65000 net.ipv4.tcp_max_syn_backlog = 8192 net.ipv4.tcp_max_tw_buckets = 5000 net.ipv4.tcp_fastopen = 3 net.ipv4.tcp_mem = 25600 51200 102400 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 #END OF LINE
保存(Ctrl + X —— y ——回车)
应用
1
sysctl -p
- 重启SSR
1
/etc/init.d/shadowsocks restart
锐速
- 介绍
锐速(ServerSpeeder)加速软件是一种基于ZETATCP加速引擎的软件,只需单边部署就可以起到 显著加速效果的 TCP 加速技术。 - 应用场景及限制
单边加速,无需添加本地服务,但对linux内核有要求。(OVZ虚拟化不支持!)
- 锐速目前已经停止了免费用户20M的提供,商业化提供破解属于侵权行为。
- 以下提供的破解版安装方式,收集自网络。仅供个人实验使用,请支持正版。
提供两种安装方式
锐速一键安装包
参考地址
https://www.91yun.org/archives/683
http://www.bandwagong.com/vultrvps/
- 脚本自行匹配相同或相近内核,自动安装完成。
1
wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspe eder-all.sh && bash serverspeeder-all.sh
- 如果你安装没有效果,编辑一下命令
1
vi /serverspeeder/etc/config
然后rsc和maxmode设置参数修改为1.然后在进行重启
1
/serverspeeder/bin/serverSpeeder.sh restart
- 卸载
1
chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f
手动安装
参考
手动安装仅用于一键安装无效时,操作步骤在参考地址中很详细,不加累赘。
常用命令
- 启动锐速:
1
/serverspeeder/bin/serverSpeeder.sh start
- 停止锐速:
1
/serverspeeder/bin/serverSpeeder.sh stop
- 查看锐速是否正常运行
1
service serverSpeeder status
- 重启锐速
1
/serverspeeder/bin/serverSpeeder.sh restart
FinalSpeed
- 介绍
FinalSpeed是高速双边加速软件,可加速所有基于tcp协议的网络服务,在高丢包和高延迟环境下,仍可达到90%的物理带宽利用率,即使高峰时段也能轻松跑满带宽。可以与锐速共存。 - 应用场景及限制
双边加速,本地需要安装相应服务端。FinalSpeed本身只有加速功能,如需混淆、匿名等功能自行安装相应代理服务。在OVZ虚拟化的vps上只可用udp模式,udp在国内被封杀较严重,导致链接中断等。测试结果来看:- 单纯加速ss——不稳定,掉线严重。(与本地网络环境有很大关系)
- ssr特定模式无法加速。
- 其他代理服务较为稳定,基本跑满本地带宽。
- FinalSpeed现在已停止更新,官方移除了安装方法,以下安装方式来自github备份。
- 安装命令:
1 2 3 4
rm -f install_fs.sh wget https://github.com/dupontjoy/customization/raw/master/Rules/Shadowsocks/Finalspeed/install_fs.sh chmod +x install_fs.sh ./install_fs.sh 2>&1 | tee install.log
一键安装完成后,vps会自动安装java环境。
- 卸载:
1
sh /fs/stop.sh ; rm -rf /fs
- 设置开机启动:
1 2
chmod +x /etc/rc.local vi /etc/rc.local
- 然后加入
1
sh /fs/start.sh
- 每天晚上1点自动重启:
1 2
crontab -e 0 1 * * * sh /fs/restart.sh
FinalSpeed windows客户端
官方最新版本为1.2 更新日志上表明cpu占用降低30%,但是稳定性较差,时常挂掉。推荐FinalSpeed1.12测试版 个人常用版本,很稳定。
- 这一部分请参考一下网站。
常用命令
- 启动:
1
sh /fs/start.sh
- 停止:
1
sh /fs/stop.sh
- 重新启动:
1
sh /fs/restart.sh
- 运行日志:
1
tail -f /fs/server.log
gfw.press大杀器
- 介绍
GFW.Press号称新一代军用级高强度加密抗干扰海底光缆专用网络数据高速传输软件,挺神的反正。号称除白名单外,再也不能破解的协议,开发者是推特赵国劣绅石斑鱼大爷 @chinashiyu - 官网
- 高手的源码分析
https://medium.com/@FWTO_O/gfw-press%E6%BA%90%E7%A0%81%E7%AE%80%E6%9E%90-61a2714eb99f#.bgztaqa6m
- 效果
只支持http/https代理,基本够用。客户端包括pc端和android端。
搭建在vps上及其进程本身很稳定,使用过程中除了进行大流量长达半个小时的满宽带下载外,没有断过。 - 缺点
Java语言编写,对VPS有一定要求,少于512M/512M vswap的openvz vps最好不要尝试,基本跑不动。
gfw.press一键安装
- root账户登录vps
1 2
wget -O gfw3proxy.sh --no-check-certificate \ https://www.dropbox.com/s/vuj2rpfpjlnkawu/gfw3proxy.sh?dl=0
- 然后输入
1
chmod +x gfw3proxy.sh && ./gfw3proxy.sh
- 执行
1
gfw.press/server.sh
安装完毕
- 加入开机启动
1 2
chmod +x /etc/rc.local vi /etc/rc.local
- 加入
1
gfw.press/server.sh
- 增加用户/端口
编辑gfw.press/user.txt。格式是:
端口【空格一个】密码,每行代表一个用户。
例如3个用戶1 2 3
14401 xyz123MN 14402 XYZ456bc 14403 789lKpOH
- 终止进程
1
kill $(ps aux | grep 'java' | grep -v grep | awk '{print $2}')
- 重启
1
gfw.press/server.sh
- 客户端可以如下网址中下载到。安装完成后设置浏览器http/https代理,本地端口默认1080.
Kcptun
- 小内存VPS可用(64M内存服务器稳定运行),OVZ架构可用, Go 语言编写
警告!Kcptun配置较为繁琐,不当配置将带来大量流量消耗!
- Kcptun 基于 KCP 协议的 UDP 隧道,它可以将 TCP 流转换为 KCP+UDP 流。而 KCP 是一个快速可靠协议,能以比 TCP 浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。
- Kcptun 服务端安装繁琐,目前没有改为Kcptun加速的需求,收集网络一部分Kcptun搭建教程供参考。
-
小内存福音,Kcptun Shadowsocks加速方案 https://blog.kuoruan.com/102.html
Kcptun 服务端一键安装脚本,喜闻乐见的多用户支持
https://blog.kuoruan.com/110.html
SSR混淆
- 作者Jessica Lynn
转载自https://plus.google.com/113582246973758055268/posts/H51ZpzwUFDK?iem=4&gpawv=1&hl=zh-Hans-TW
- 一些混淆参数(域名)
- 国内:
sz.btfs.mail.ftn.qq.com
btrace.video.qq.com
ossweb-img.qq.com
1234-wyfqdku4kcgcabalp6rdudo7–1042249034.cmos.greencompute.org
aecpm.alicdn.com
aldh5.tmall.com
at.alicdn.com
atanx.alicdn.com
g.alicdn.com
gtms03.alicdn.com
gw.alicdn.com
img.alicdn.com - 国外:
az813057.vo.msecnd.net
az817829.vo.msecnd.net
azureedge.net
media.gettyimages.com
origin.cdn77.com
TCP-BBR
- BBR (Bottleneck Bandwidth and RTT)是由google工程师编写的新的 TCP 拥塞控制算法,目的是要尽量跑满带宽, 并且尽量不要有排队的情况, 加速效果不比锐速差,
完全开源,对隐匿性要求高而无法使用锐速的人士,也可以放心使用
开源地址 - 测试环境 Debian 7 x64 Vultr
- 启用TCP-BBR涉及VPS更换内核,所以如果步骤错误,或者VPS不兼容最新的内核,会导致无法开机等错误,脚本来自于逗逼根据地
- 锐速不支持,更换后的4.9内核
- 低版本linux内核加入TCP-BBR,正在测试中,稳定后会放出教程
- 连接SSH,输入下面命令,更新内核
1
wget -N --no-check-certificate https://soft.dou-bi.co/Bash/bbr.sh && chmod +x bbr.sh && bash bbr.sh
- Debian系统,更换内核时会询问你是否终止删除内核,选择 No 方向键 选择,回车键 确认)
- 安装完毕,自动重启VPS,重连SSH
- 修改sysctl.conf
1
nano /etc/sysctl.conf
复制代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#TCP配置优化(不然你自己根本不知道你在干什么) fs.file-max = 51200 #提高整个系统的文件限制 net.core.rmem_max = 67108864 net.core.wmem_max = 67108864 net.core.netdev_max_backlog = 250000 net.core.somaxconn = 4096 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.ip_local_port_range = 10000 65000 net.ipv4.tcp_max_syn_backlog = 8192 net.ipv4.tcp_max_tw_buckets = 5000 net.ipv4.tcp_fastopen = 3 net.ipv4.tcp_mem = 25600 51200 102400 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 = bbr #END OF LINE
保存(Ctrl + X —— y ——回车)
应用
1
sysctl -p
- 重启SSR
1
/etc/init.d/shadowsocks restart
看到有人推荐魔改版,用了,感觉 还行