Shadowsocks及BBR等搭建记录

in 技术分享 with 0 comment

去年年初自己搭过梯子,openvz的框架,所以超售严重,好在不贵。后来自己也在一些机场订购过服务,优点是节点多,有问题客服解决,适合流量不大不想折腾的用户。后来自己需求大了,发现机场的流量不够,加流量的话性价比不高,所以把目光转向自己搭梯子。

一个月前看到老牌vps商家vultr在搞活动,新用户注册送25刀。用每个月3.5刀的那款,有500g流量,也是比大部分机场够用了,关键是还有送的25刀给你用,意味着你花3.5刀可以用将近10来个月,购买后里面还有分享送钱的活动,大概有两三刀吧好像。不过最近vu的速度有点跌落,不知道是不是用的人太多的缘故,但是竟然可以看Netflix,Dallas的节点。我的vu目前只做备用。(vu已经退款,感觉没啥必要弄那么多机器留在手上,用不完。)

说说我目前用的主力,AWS,世界上数一数二的云服务商,我用的是lightsail产品。电信移动用新加坡和日本的速度都很不错,下载基本可以满速。
本文只作为自己搭梯子一个备忘录。

背景:

Mac自带终端,aws和vultr选用的Centos7和Debian8,脚本是ss不是ssr,ios用的quantumult,shadowrocket,pharos。安卓用的shadowsocks,surfboard。Mac用的shadowsocks,Surge2。

连接Vultr:

打开终端:
ssh root@ip
如果出现「WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!」这样的错误提示,可以输入ssh-keygen -R ip 接着就是Yes搞定。这个就是删除之前已经存储认证的ip地址。
因为已经是root权限登录了,所以直接安装梯子和BBR(加速器)就好了,当然了,有需要的情况下,也可以安装一个统计流量的vnstat。

连接AWS

aws因为需要密钥连接,Windows我不了解,Mac的具体如下,打开终端:
首先对下载下来的密钥进行授权:
chmod 600 xxx.pem
其实在Mac上,输入完chmod 600 后,直接把密钥拖进终端即可。
然后:ssh -i xxxx.pem centos@ip
可能会提示yes/no,直接yes就好了,连接上会发现是centos@ip:这样的开头,如果安装梯子和其他软件,还是需要root权限的,那么直接sudo -i就好了,就会发现是root@ip了。
到此连接完毕。

第一步安装梯子

vultr的安装很简单,登录到root@ip后:
依次运行下面的命令,是依次,不是一次性全部复制粘贴。(建议系统使用debian或者centos,安装时提示会有4个版本,建议使用Go或者libev版本,但libev版不能通过修改配置文件来多端口,只能开启多进程,如果你需要多端口请安装Python或Go版)。

wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh

chmod +x shadowsocks-all.sh

./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log

安装时,需要输入的有梯子连接密码,端口号,加密方式(我选的7,aes-256-cfb。其他自行尝试。)然后按任意键进行安装。
有的教程说需要开启vultr的防火墙,但是我的没有开启,一样使用,不知道为啥,也没去折腾。如果不能用的,可以参考此条。

常用命令

# 卸载
./shadowsocks-all.sh uninstall

启动脚本:以及后面的参数含义,从左至右依次为:启动,停止,重启,查看状态.

Shadowsocks-Python 版:
/etc/init.d/shadowsocks-python start | stop | restart | status
ShadowsocksR 版:
/etc/init.d/shadowsocks-r start | stop | restart | status
Shadowsocks-Go 版:
/etc/init.d/shadowsocks-go start | stop | restart | status
Shadowsocks-libev 版:
/etc/init.d/shadowsocks-libev start | stop | restart | status

各版本默认配置文件:
Shadowsocks-Python 版:
/etc/shadowsocks-python/config.json
ShadowsocksR 版:
/etc/shadowsocks-r/config.json
Shadowsocks-Go 版:
/etc/shadowsocks-go/config.json
Shadowsocks-libev 版:
/etc/shadowsocks-libev/config.json

#至于如何编辑保存,请自行搜索vi命令。

第二步安装BBR

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
就一行命令,按照命令提示就好了。

AWS的安装比vultr多一个步骤,安装wget工具:
yum install wget

安装好wget后,按照上面第一步和第二步依次进行,一样的操作。另外aws是需要开启防火墙的,在lightsail网页后台,TCP+UDP全部开启。
aws还有一个问题,就是每次重启(网页上的重启)ip就会变了,虽然这个概率很低,也或者为了刷一个比较好的ip。你需要绑定一个静态ip,这个就不展开说了。

安装vnstat

还有一点,aws没有像vultr那样直观的流量统计图,所以需要(按需)安装一个vnstat:

# Debian系统不需要安装epel,直接 `apt-get install vnstat` 就可以了,Debian有的需要修改网卡,有的不需要,用ifconfig命令查看一下网卡就行了,一般默认的是oth0,这里不展开说,具体安装方法可以Google。下面的命令是centos7下的安装方法(建议在root用户下):
yum -y install epel-release    #安装epel
yum -y install vnstat    #安装vnstat
vnstat -u -i eth0    #生成数据库,有的Debian也是eth0,有的不是,不是的话,改成显示的网卡名称就好。
service vnstat start    #启动服务
chkconfig vnstat on    #开机启动

# 如果有类似 Error: Unable to read database "/var/lib/vnstat/eth0".的报错,是权限问题,可以在root用户下用命令 chmod -R 777 /var/lib/vnstat/ 来解决。

常用命令

vnstat -q, –query query database 季度
           -h, –hours show hours 小时
           -d, –days show days 天
           -m, –months show months 月
           -w, –weeks show weeks 周
           -t, –top10 show top 10 days 流量排名前十
           -s, –short use short output 使用短输出
           -u, –update update database 更新数据库
           -i, –iface select interface (default: venet0) 选择接口(默认venet0)
           -?, –help short help 帮助
           -v, –version show version 当前版本
           -tr, –traffic calculate traffic 计算流量
           -ru, –rateunit swap configured rate unit 交换配置速率单位
           -l, –live show transfer rate in real time 实时网速

文章没有图片,备忘为主,有问题可以留言或者TG联系。

Responses