俗话说得好:预先善其事,必先利其器,作为一个程序员,经常会用到 GitHub、Google、Stack Overflow 啥的,由于国内政策原因,想要访问国外网站就得科学上网,最常见的工具就是 ShadowsocksR,又被称为酸酸乳、SSR、小飞机,目前市面上有很多很多的机场,价格也不是很高,完全可以订阅别人的,但是订阅别人的,数据安全没有保障,有可能你的浏览历史啥的别人都能掌握,别人也有随时跑路的可能,总之,只有完全属于自己的东西才是最香的!


购买 VPS

VPS(Virtual Private Server)即虚拟专用服务器技术,在购买 VPS 服务器的时候要选择国外的,推荐 Vultr,国际知名,性价比比较高,最低有$2.5/月、$3.5/月的,个人用的话应该足够了。


01

点击链接注册 Vultr 账号:https://www.vultr.com/?ref=8367048,目前新注册用户充值10刀可以赠送50刀,注册完毕之后来到充值页面,最低充值10刀,可以选择支付宝或者微信支付。


02

充值完毕之后,点击左侧 Products,选择服务器,一共有16个地区的,选择不同地区的服务器,最后的网速也有差别,那如何选择一个速度最优的呢?很简单,你可以一次性选择多个服务器,都部署上去,搭建完毕之后,测试其速度,选择最快的,最后再把其他的都删了,可能你会想,部署多个,那费用岂不是很贵,这里注意,虽然写的是多少钱一个月,而实际上它是按照小时计费的,从你部署之后开始计费,$5/月 ≈ $0.00694/小时,你部署完毕再删掉,这段时间的费用很低,可以忽略不计,一般来说,日本和新加坡的比较快一点,也有人说日本和新加坡服务器的端口封得比较多,容易搭建失败,具体可以自己测试一下,还有就是,只有部分地区的服务器有$2.5/月、$3.5/月的套餐,其中$2.5/月的只支持 IPv6,可以根据自己情况选择,最后操作系统建议选择 CentOS 7 x64 的,不然有可能搭建失败,后面还有个 Enable IPv6 的选项,对 IPv6 有需求的话可以勾上,其他选项就可以不用管了。


03

04

部署成功后,点 Server Details 可以看到服务器的详细信息,其中有 IP、用户名、密码等信息,后面搭建 SSR 的时候会用到,此时你可以 ping 一下你的服务器 IP,如果 ping 不通的话,可以删掉再重新开一个服务器。


05

搭建 SSR

我们购买的是虚拟的服务器,因此需要工具远程连接到 VPS,如果是 Mac/Linux 系统,可以直接在终端用 SSH 连接 VPS:

1
ssh root@你VPS的IP -p 22 (22是你VPS的SSH端口)

如果是 Windows 系统,可以用第三方工具连接到 VPS,如:Xshell、Putty 等,可以百度下载,以下以 Xshell 为例:

点击文件,新建会话,名称可以随便填,协议为 SSH,主机为你服务器的 IP 地址,点击确定,左侧双击这个会话开始连接,最开始会出现一个 SSH安全警告,点击接受并保存即可,然后会让你输入服务器的用户名和密码,直接在 Vultr 那边复制过来即可,最后看到 [root@vultr ~]# 字样表示连接成功。


06

07

08

09

10

连接成功后执行以下命令开始安装 SSR:

1
wget --no-check-certificate https://freed.ga/github/shadowsocksR.sh; bash shadowsocksR.sh

如果提示 wget :command not found,可先执行 yum -y install wget,再执行上述命令即可。

执行完毕后会让你设置 SSR 连接密码和端口,然后按任意键开始搭建。


11

搭建成功后会显示你服务器 IP,端口,连接密码,协议等信息,这些信息要记住,后面使用 ShadowsocksR 的时候要用到。


12

安装锐速

由于我们购买的服务器位于国外,如果遇到上网高峰期,速度就会变慢,而锐速就是一款专业的连接加速器,可以充分利用服务器带宽,提升带宽吞吐量,其他还有类似的程序如 Google BBR 等,可以自行比较其加速效果,以下以操作系统为 CentOS 6&7 锐速的安装为例。

如果你服务器操作系统选择的是 CentOS 6 x64,则直接执行以下命令,一直回车即可:

1
wget --no-check-certificate -O appex.sh https://raw.githubusercontent.com/hombo125/doubi/master/appex.sh && bash appex.sh install '2.6.32-642.el6.x86_64'

如果你服务器操作系统选择的是 CentOS 7 x64,则需要先执行以下命令更换内核:

1
wget --no-check-certificate -O rskernel.sh https://raw.githubusercontent.com/hombo125/doubi/master/rskernel.sh && bash rskernel.sh

如下图所示表示内核更换完毕,此时已经断开与服务器的连接,我们需要重新连接到服务器,再执行后面的操作:


13

重新连接到服务器后,再执行以下命令:

1
yum install net-tools -y && wget --no-check-certificate -O appex.sh https://raw.githubusercontent.com/0oVicero0/serverSpeeder_Install/master/appex.sh && bash appex.sh install

然后一直回车即可,系统会自动安装锐速。


14

15

出现以下信息表示安装成功:


16

使用 SSR

常见的工具有 ShadowsocksR、SSTap(原本是个游戏加速器,现在已经停止维护,但 GitHub 上仍然可以找到)等。

Shadowsocks 官网:https://shadowsocks.org/
ShadowsocksR 下载地址:https://github.com/Anankke/SSRR-Windows
SSTap GitHub 地址:https://github.com/FQrabbit/SSTap-Rule

不管什么工具,用法都是一样的,添加一个新的代理服务器,服务器 IP、端口、密码、加密方式等等这些信息保持一致就行了。然后就可以愉快地科学上网了!


17

18

多端口配置

经过以上步骤我们就可以科学上网了,但是目前为止只有一个端口,只能一个人用,那么如何实现多个端口多人使用呢?事实上端口、密码等信息是储存在一个叫做 shadowsocks.json 文件里的,如果要添加端口或者更改密码,只需要修改此文件即可。

连接到自己的 VPS,输入以下命令,使用 vim 编辑文件:vi /etc/shadowsocks.json

原文件内容大概如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
"server": "0.0.0.0",
"server_port": 8686,
"server_ipv6": "::",
"local_address": "127.0.0.1",
"local_port": 1081,
"password":"SSR12345",
"timeout": 120,
"udp_timeout": 60,
"method": "aes-256-cfb",
"protocol": "auth_sha1_v4_compatible",
"protocol_param": "",
"obfs": "http_simple_compatible",
"obfs_param": "",
"dns_ipv6": false,
"connect_verbose_info": 1,
"redirect": "",
"fast_open": false,
"workers": 1
}

增加端口,我们将其修改为如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"server": "0.0.0.0",
"server_ipv6": "::",
"local_address": "127.0.0.1",
"local_port": 1081,
"port_password":
{
"8686":"SSR1",
"8687":"SSR2",
"8688":"SSR3",
"8689":"SSR4",
"8690":"SSR5"
},
"timeout": 120,
"udp_timeout": 60,
"method": "aes-256-cfb",
"protocol": "auth_sha1_v4_compatible",
"protocol_param": "",
"obfs": "http_simple_compatible",
"obfs_param": "",
"dns_ipv6": false,
"connect_verbose_info": 1,
"redirect": "",
"fast_open": false,
"workers": 1
}

也就是删除原来的 server_portpassword 这两项,然后增加 port_password 这一项,前面是端口号,后面是密码,注意不要把格式改错了!!!修改完毕并保存!!!

接下来配置一下防火墙,同样的,输入以下命令,用 vim 编辑文件:vi /etc/firewalld/zones/public.xml

初始的防火墙只开放了最初配置 SSR 默认的那个端口,现在需要我们手动加上那几个新加的端口,注意:一个端口需要复制两行,一行是 tcp,一行是 udp。

原文件内容大概如下:

1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<service name="dhcpv6-client"/>
<service name="ssh"/>
<port protocol="tcp" port="8686"/>
<port protocol="udp" port="8686"/>
</zone>

修改后的内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<service name="dhcpv6-client"/>
<service name="ssh"/>
<port protocol="tcp" port="8686"/>
<port protocol="udp" port="8686"/>
<port protocol="tcp" port="8687"/>
<port protocol="udp" port="8687"/>
<port protocol="tcp" port="8688"/>
<port protocol="udp" port="8688"/>
<port protocol="tcp" port="8689"/>
<port protocol="udp" port="8689"/>
<port protocol="tcp" port="8690"/>
<port protocol="udp" port="8690"/>
</zone>

修改完毕并保存,最后重启一下 shadowsocks,然后重新载入防火墙即可,两条命令如下:

1
/etc/init.d/shadowsocks restart
1
firewall-cmd --reload

完成之后,我们新加的这几个端口就可以使用了

另外还可以将配置转换成我们常见的链接形式,如:ss://xxxxxssr://xxxxx,其实这种链接就是把 IP,端口,密码等信息按照一定的格式拼接起来,然后经过 Base64 编码后实现的,有兴趣或者有需求的可以自行百度。


扩展命令

SSR 常用命令:
启动:/etc/init.d/shadowsocks start
停止:/etc/init.d/shadowsocks stop
重启:/etc/init.d/shadowsocks restart
状态:/etc/init.d/shadowsocks status
卸载:./shadowsocks-all.sh uninstall
更改配置参数:vim /etc/shadowsocks-r/config.json


我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=mpa02hyz07v5


您的喜欢是作者写作最大的动力!❤️
  • PayPal
  • AliPay
  • WeChatPay
  • QQPay
Donate

 评论


Copyright 2018-2020 TRHX'S BLOG ICP 鄂ICP备19003281号-4MOE ICP 萌ICP备20202022号 正在载入... 百度统计

UV
PV
WordCount288.9k