0.前言
我记得在一次《编译原理》课上,老师很惊讶的说:“你们作为学计算机的人,居然还用百度,不知道科学上网google吗?再不济也应该用bing啊!”
科学上网的大业势必是我们成长中的必经之路,本着无聊又眼馋隔壁大佬自行搭建VPN,决定自行搭建一个VPN服务器,听说github有student package嘛,50刀不用白不用!
1.谁比较需要单独搭建VPS科学上网?
- 其实,好多专业的同学并没有科学上网的需求,以至于我都不知道该把我的VPN分享给谁好。
- 只是翻墙简单浏览网页,就不必要再单独花费人民币了,蓝灯、和各个网站的免费ss账户,enough!例如,你可以在逗比根据地找到免费的SS帐号(此网站需要翻墙,可以先使用蓝灯翻出去搜索)。
- 偶尔看看视频、不想画太多精力在寻找免费资源上。可以直接购买现成的ss/vpn账户,在某宝上就可以找到很多比较靠谱的店家。
- 常年泡视频网站又受不了国内视频网站乱七八糟、24h使用google服务、对稳定性和流量有一定要求、愿意使用一点时间来折腾VPS。比较适合单独购买VPS来科学上网。
- 搜索文档,更新软件源、折腾个人网站又不想备案的、折腾开源的。这大概也是一条搭建VPS的理由吧,一举多得。
2.准备
首先,你得做好如下准备工作:
1、一台位于国外的云服务器(我自己使用的是Ubuntu16.04);
2、SSH远程连接软件,例如XShell;
3、FTP远程文件传输,例如XFtp;
2.2关于云服务器的选择
- 如果你是学生,拥有edu后缀的邮箱,那你可以考虑github的学生福利,点击首页的“Get the Student Developer Pack”,你将获得一张价值50美刀的优惠券。然后,你可以进入DigitalOcean,注册并花费5美刀激活帐号,Create一个Droplets实例。优惠码可在个人中心里使用。
- 如果你不能享受学生优惠,那推荐vultr、搬瓦工、DigitalOcean,这是比较常用的几个服务器提供商吧,但是近期服务器质量有待考证,有需要的朋友最好看看其他测评。在此,同样推荐一个帖子供大家参考。
3.服务器准备工作
创建好一个云服务器的实例,并通过XShell等远程链接上服务器。
4.部署ShadowSocksR
4.1 SSR相关网站
- 由于原版github上的SSR已经被删除,这里提供个人服务器上的下载链接,如果不放心,可以尝试在逗比根据地上寻找SSR资源。
- ShadowSocksR-windows版(C#)下载链接,这是我fork的一份源码,开源放心。
- 跨平台electron-ss客户端可以fork此处项目,但上游项目已删除,暂停维护。
- Android用户请点击这里,多种VPN软件可供选择。另有ShadowSocksreleases版可选。
- IOS平台,此处推荐一个帖子,自行参考下载。
4.2 安装SSR
复制以下代码到登陆成功的XShell
123wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.shchmod +x shadowsocksR.sh./shadowsocksR.sh 2>&1 | tee shadowsocksR.log接下来进入SSR参数设置,一般设置有Default参数,可直接回车,也可自行修改。
“method”:”aes-256-cfb” 或者 “chacha20” // 加密方式
“protocol”:”auth_sha1_v4”, // 协议
“protocol_param”:””, // 可选填
“obfs”:”http_simple”, // 混淆
“obfs_param”:”bing.com”, // 混淆参数,可自行修改完成此步之后,SSR已经可以使用了,你可以开始享受科学上网的快乐了!但由于VPS服务器限制,5刀的网速大概只有100KB/S,接下来就需要加速器了!请看后文。
4.3 shadowsocks.json配置文件修改
- shadowsocks.json文件中定义SSR的访问端口,加密方式等,我们可以使用XShell远程连接,使用vim命令修改;也可以使用XFtp下载到本地,使用任意编辑器进行修改。
- shadowsocks.json文件可在/etc目录下找到。
注释,不可直接使用,需删除注释:
12345678910111213141516171819202122232425262728{"server":"0.0.0.0","server_ipv6":"::","local_address":"127.0.0.1","local_port":1080,"port_password":{#纯 SS 不带混淆 端口25 密码为123456."25":"123456",#端口443,密码123456 ,protocol选择auth_chain_a。obfs选择tls1.2_ticket_auth,具体插件的介绍如下参考资料中"443":{"protocol":"auth_chain_a", "password":"123456", "obfs":"tls1.2_ticket_auth", "obfs_param":""},#注意无论怎么变化,最后一个端口设置,不带逗号!"3389":{"protocol":"auth_aes128_md5", "password":"123456", "obfs":"tls1.2_ticket_auth", "obfs_param":""}#此处没有逗号!},"timeout":400,#默认全局的加密方式,即上边各个端口的默认加密方式。一般为aes-256-cfb, 此处,选择为chacha20,移动设备性能较好。"method":"chacha20",#protocol.协议定义插件的默认值,origin即使用原版SS协议,不混淆。即上面端口配置中,你没有设置 protocol 和 obfs 情况下,使用的默认值。"protocol": "origin","protocol_param": "",#protocol.协议定义插件的默认值,plain即使用原协议,不混淆。"obfs": "plain","obfs_param": "","redirect": "","dns_ipv6": true,#TCP FAST OPEN ,打开"fast_open": true,"workers": 1}无注释版本,可直接复制粘贴,覆盖原始文件:
123456789101112131415161718192021{"server":"0.0.0.0","server_ipv6":"::","local_address":"127.0.0.1","local_port":1080,"port_password":{"25":"123456","443":{"protocol":"auth_chain_a", "password":"123456", "obfs":"tls1.2_ticket_auth", "obfs_param":""},"3389":{"protocol":"auth_aes128_md5", "password":"123456", "obfs":"tls1.2_ticket_auth", "obfs_param":""}},"timeout":400,"method":"chacha20","protocol": "origin","protocol_param": "","obfs": "plain","obfs_param": "","redirect": "","dns_ipv6": true,"fast_open": true,"workers": 1}修改并保存(vim编辑模式下,按“:wq”保存并退出),然后重启SSR:
1/etc/init.d/shadowsocks restart
4.4 更新SSR
- VPS端,需要先保存shadowsocks.json文件,再执行卸载:之后,重新执行安装脚本即可。1./shadowsocksR.sh uninstall
5.BBR加速VPS服务器
5.1 安装BBR
此处提供给大佬们一个帖子,Debian8/Ubuntu14/CentOS6/CentOS7可参考。
脚本安装,使用root用户登录,运行以下命令:
123wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.shchmod +x bbr.sh./bbr.sh安装完成后,脚本会提示需要重启 VPS,输入 y 并回车后重启。
重启完成后,进入 VPS,验证一下是否成功安装最新内核并开启 TCP BBR,输入以下命令:
1uname -r查看内核版本,含有 4.13 就表示 OK 了
查看其他返回值:
1sysctl net.ipv4.tcp_available_congestion_control返回值一般为:
net.ipv4.tcp_available_congestion_control = bbr cubic reno
|
|
返回值一般为:
net.ipv4.tcp_congestion_control = bbr
|
|
返回值一般为:
net.core.default_qdisc = fq
|
|
返回值有 tcp_bbr 模块即说明bbr已启动。
- 一般来说,使用了BBR加速后,观看youtube视频可达1MB/S,网速明显提升。
6.结语
为了满足个人心愿,写了此水教程,希望能帮助到大家。
转载请注明出处,无偿提供。