如果你没有不过墙的 IPLC 线路的话,请不要在境外服务器上搭建 HTTP 或 SOCKS5 代理,连上以后流量稍微一大就会使 IP 被墙。
HTTP 和 SOCKS5 代理搭建的方式有很多:使用 Tinyproxy 搭建 HTTP 代理、使用 ss5 搭建 SOCKS5 代理等等……我这里使 GOST 来启动代理服务端,优点是安装方便(只有一个可执行脚本),且同时能启动加密的 HTTP 和 SOCKS5 代理服务。
附上一些我的开源脚本:
HTTP 代理:CentOS7 下一键安装 Tinyproxy 代理
SOCKS5 代理:CentOS7 下一键安装 SOCKS5 代理
同时安装 HTTP 和 SOCKS5 代理:CentOS7 下一键安装 GOST 并启动 HTTP 和 SOCKS5 代理服务
1、下载并安装 GOST
下载 GOST:
wget https://github.com/ginuerzh/gost/releases/download/v2.11.1/gost-linux-amd64-2.11.1.gz
如果境内下载慢的话可以用我 Gitee 上的源:gost-linux-amd64-2.11.1.gz
下载完成后解压出 gost 执行文件,并放在 /usr/bin
等目录下以方便在任何地方调用:
# 解压
gunzip gost-linux-amd64-2.11.1.gz
# 移动
mv gost-linux-amd64-2.11.1 /usr/bin/gost
2、启动 GOST
使用 GOST 开启 HTTP 和 SOCKS5 代理功能的命令比较简单:
gost -L $username:[email protected]:$port
参数说明及样例:
参数 | 说明 | 样例 |
---|---|---|
username | 代理认证用的用户名。 | myusername |
password | 代理认证用的密码。 | mypassword |
port | 代理服务的端口。 | 1080 |
GOST 强大的其他功能可以参考官方文档:GOST v2
启动成功并确定对应端口的防火墙和安全组开放后可以在其他 Linux 服务器上测试一下($host
为你代理服务器的 IP 地址):
curl -x http://$username:[email protected]$host:$port http://ip-api.com/json/?lang=zh-CN
3、使用 Screen 启动并设置为开机自启动
你会发现 GOST 在你退出终端后就会停止,这里使用 Screen 新建一个窗口并运行 GOST:
# 安装 Screen
yum -y install screen
# 新建 Screen 并在其中运行 GOST
screen -dmS screen-for-gost && screen -S screen-for-gost -X stuff '/usr/bin/gost -L $username:[email protected]:$port\n'
而开机自启动则需要配置 Linux 系统任务:
crontab -e
新加一条任务:
@reboot screen -dmS screen-for-gost && screen -S screen-for-gost -X stuff '/usr/bin/gost -L $username:[email protected]:$port\n'
之后重启 Cron
即可:
service crond restart
结束。