第一步:一键下载并解压安装

因为下载链接太长且包含特殊字符,必须用双引号包起来下载,并重命名为 gost.tar.gz

# 1. 下载文件
wget -O gost.tar.gz "https://release-assets.githubusercontent.com/github-production-release-asset/240039769/a6d88d24-afd1-427a-a92a-b81ea1a57184?sp=r&sv=2018-11-09&sr=b&spr=https&se=2026-04-19T10%3A15%3A13Z&rscd=attachment%3B+filename%3Dgost_3.2.6_linux_amd64v3.tar.gz&rsct=application%2Foctet-stream&skoid=96c2d410-5711-43a1-aedd-ab1947aa7ab0&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skt=2026-04-19T09%3A15%3A03Z&ske=2026-04-19T10%3A15%3A13Z&sks=b&skv=2018-11-09&sig=YXwvG1GTOgh7YPG%2FmwLezeuR7zBvSgUvxeQZbg3o7U4%3D&jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmVsZWFzZS1hc3NldHMuZ2l0aHVidXNlcmNvbnRlbnQuY29tIiwia2V5Ijoia2V5MSIsImV4cCI6MTc3NjU5MDk3OCwibmJmIjoxNzc2NTkwNjc4LCJwYXRoIjoicmVsZWFzZWFzc2V0cHJvZHVjdGlvbi5ibG9iLmNvcmUud2luZG93cy5uZXQifQ.zzxeKXiBZFxwdEnWqG1gqiasPjD8tpFXHaGyzKG0Dxc&response-content-disposition=attachment%3B%20filename%3Dgost_3.2.6_linux_amd64v3.tar.gz&response-content-type=application%2Foctet-stream5"

# 2. 解压文件
tar -zxvf gost.tar.gz

# 3. 移动二进制文件并赋予执行权限
mv gost /usr/local/bin/gost
chmod +x /usr/local/bin/gost

第二步:写入最极简的配置文件

省略掉复杂的 DNS 自定义和白名单,直接开启 8888 端口(HTTP代理,供 Jenkins/Nexus 拉包)和 1080 端口(SOCKS5代理,供邮件发送):

mkdir -p /etc/gost

cat << 'EOF' > /etc/gost/gost.yaml
services:
  - name: proxy-http
    addr: ":8888"
    handler:
      type: http
    listener:
      type: tcp

  - name: proxy-socks5
    addr: ":1080"
    handler:
      type: socks5
    listener:
      type: tcp
EOF

第三步:配置 Systemd 开机自启 (使用 Root)

使用 root 用户接管服务,突破系统连接数限制,保证稳定运行:

cat << 'EOF' > /etc/systemd/system/gost.service
[Unit]
Description=GO Simple Tunnel (Gost) Service
After=network.target network-online.target
Wants=network-online.target

[Service]
Type=simple
User=root
Group=root
LimitNOFILE=65535
LimitNPROC=65535
ExecStart=/usr/local/bin/gost -C /etc/gost/gost.yaml
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

第四步:启动并放行防火墙

依次执行以下命令,启动 Gost 并让系统防火墙放行对应的两个端口:

# 启动服务
systemctl daemon-reload
systemctl enable gost
systemctl start gost

# 放行防火墙端口
firewall-cmd --zone=public --add-port=8888/tcp --permanent
firewall-cmd --zone=public --add-port=1080/tcp --permanent
firewall-cmd --reload

至此,安装全部完成!!你可以直接去内网的 Jenkins 机器(192.211.27.66)上测试代理是否生效了。

那太省事了!!

既然服务器的防火墙默认是关闭的,那第四步里的所有 firewall-cmd 命令都可以直接无视,完全不需要执行

你只需要跑到 systemctl start gost 这一句,整个 Gost 服务就已经彻底跑起来并对外网(以及内网)暴露端口了。

现在你什么都不用改,直接去那台纯内网的机器(192.211.27.66)上,敲下面这行命令验证一下:

# 测试 HTTP 代理是否能通外网
curl -x http://192.212.22.148:8888 -I https://www.baidu.com

如果屏幕上秒回 HTTP/1.1 200 OK,那就说明网络隧道已经彻底打通!!接下来你就可以放心大胆地去给你的 Jenkins、Nexus 配置 192.212.22.148:8888,给 GitLab/Jenkins 的邮件通知配置 192.212.22.148:1080 的 SOCKS5 代理了!!

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐