因为一直在使用shadowsocks的自营节点,所以就没有想到去自己搭建,昨天因为想用Google Drive,就萌生了自己搭建无限流量shadowsocks服务器(以下统称ss)的念头,搜到了前篇说到的ConoHa,折腾了一晚,总算明白了一些“真理”——不要相信广告。
回到正题,下面来总结下ss服务器的搭建过程:
一、首先你要有一个主机(这是废话),不管是云上的,还是你自己的laptop;
二、你要有清醒的头脑,知道自己在干嘛,不要像我一样,一股热血上头,就把钱扔出去了;
三、你的如果是VPS安装,最好是用KVM的(也就是说要用Linux系统),下面的“教程”也是基于此,输入以下代码查询当前环境:
apt-get install virt-what virt-what
如果是KVM,就会显示KVM;
四、开始安装:
#下载安装包 wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-libev-debian.sh #赋予可执行权限 chmod +x shadowsocks-libev-debian.sh #安装 ./shadowsocks-libev-debian.sh 2>&1 | tee shadowsocks-libev-debian.log
以上步骤成功即搭建完毕;
五、安装加速:
我试用过两种加速,一种是已经停止更新的锐速,一种是BBR,而两种加速安装之前都要先确定内核,如果不符合要求就要事先更换:
#查看内核版本 uname -r
①安装锐速:
如果要安装锐速,如果你的系统是Ubuntu14.04,那么就需要使用3.13.0-24-generic的内核:
#下载并安装内核 sudo apt-get install linux-image-extra-3.13.0-24-generic #查看现有内核 sudo dpkg --get-selections | grep linux-image #卸载多余内核 sudo apt-get purge 内核1 内核2 内核3 …… #更新 grub 系统引导文件 sudo update-grub #重启 reboot #查看当前内核 uname -r #固定内核,避免意外升级 sudo apt-mark hold linux-image
如果你的系统是CentOS6,那么需要更换为2.6.32-504.3.3.el6.x86_64:
rpm -ivh http://soft.91yun.org/ISO/Linux/CentOS/kernel/kernel-firmware-2.6.32-504.3.3.el6.noarch.rpm rpm -ivh http://soft.91yun.org/ISO/Linux/CentOS/kernel/kernel-2.6.32-504.3.3.el6.x86_64.rpm --force
如果你的系统是CentOS7,那么需要更换为3.10.0-229.1.2.el7.x86_64:
rpm -ivh http://soft.91yun.org/ISO/Linux/CentOS/kernel/kernel-3.10.0-229.1.2.el7.x86_64.rpm --force
不过建议还是使用CentOS6.X,而不是7.X;
正式安装:
wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspeeder-all.sh && bash serverspeeder-all.sh
卸载指令:
chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f
其它操作指令:
/serverspeeder/bin/serverSpeeder.sh start #启动锐速 /serverspeeder/bin/serverSpeeder.sh stop #停止锐速 /serverspeeder/bin/serverSpeeder.sh restart #重启锐速 /serverspeeder/bin/serverSpeeder.sh status #锐速运行状态
优化锐速:
打开/serverspeeder/etc目录中的config文件,编辑如下内容:
rsc="1" gso="1" maxmode="1" advinacc="1"
重启锐速服务完成优化:
service serverSpeeder restart
设置开机自启:
在/etc/init.d目录下新建ss_start文件并加入如下内容:
nohup /usr/local/bin/ss-server -c /etc/**/config.json > /dev/null 2>&1 &
在/etc/init.d目录下新建rs_start文件并加入如下内容:
/serverspeeder/bin/serverSpeeder.sh start
设置执行权限:
chmod +x /etc/init.d/ss_start chmod +x /etc/init.d/rs_start
开启自启:
sudo update-rc.d ss_start defaults 91 sudo update-rc.d rs_start defaults 91
②安装BBR:
如果要安装BBR,如果你的系统是Debian 8或者Ubuntu 14,那么需要安装4.9以上的最新内核:
#下载对应位数的内核版本 wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.5/linux-image-4.10.5-041005-generic_4.10.5-041005.201703220931_i386.deb #安装对应的内核 dpkg -i linux-image-4.10.5-041005-generic_4.10.5-041005.201703220931_i386.deb #删除内核和上面一样 #更新引导和重启也同上
如果你的系统是CentOS6,最新内核点这里:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm yum --enablerepo=elrepo-kernel install kernel-ml -y #查看是否安装成功 rpm -qa | grep kernel #删除旧内核 rpm -ev 旧内核 #更新 grub 系统引导文件并重启 sed -i 's:default=.*:default=0:g' /etc/grub.conf reboot ##开不了机的打开vps后台控制面板的vnc, 开机卡在 grub 引导, 只需要手动选择内核就可以了
如果你的系统是CentOS7,最新内核点这里:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm yum --enablerepo=elrepo-kernel install kernel-ml -y #查看内核是否安装成功 rpm -qa | grep kernel #删除旧内核 rpm -ev 旧内核 #更新 grub 系统引导文件并重启. egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \' grub2-set-default 0 #default 0表示第一个内核设置为默认运行, 选择最新内核就对了 reboot ##注意,某些服务商(如Digital Ocean)可能需要首先将VPS配置为可自定义内核,然后grub2的配置才会生效。
正式安装:
#开机后查看当前内核是否4.9以上 uname -r
#执行 echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf #保存 sysctl -p #执行-如果结果都有bbr, 则证明内核已开启bbr sysctl net.ipv4.tcp_available_congestion_control sysctl net.ipv4.tcp_congestion_control #检查-看到有 tcp_bbr 模块即说明bbr已启动 lsmod | grep bbr
六、优化内核:
修改/etc/security/limits.conf文件,加入以下内容:
* soft nofile 51200 * hard nofile 51200
修改/etc/pam.d/common-session文件,加入以下内容:
session required pam_limits.so
修改/etc/profile文件,最下面加入以下内容:
ulimit -SHn 51200
修改/etc/sysctl.conf文件,加入如下内容:
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_rmem = 4096 87380 67108864 net.ipv4.tcp_wmem = 4096 65536 67108864 net.ipv4.tcp_mtu_probing = 1 net.ipv4.tcp_congestion_control = hybla
保存后执行以下命令使配置生效:
sysctl -p
至此,架设&优化ss就全部完成,开始享受流畅的网速吧!