img
img

此教程适合于 服务器 IP 被墙却无法退款只能吃灰对速度要求低只需要保证服务器不会动不动就被墙 IP 的人观看。
如果你的 IP 已经被墙了,那么可以用这种方式让你的被墙 IP 的服务器继续拿来做代理,如果你服务器还没有被墙,那么可以预防 IP 被墙。

注意:通过套 CDN 的方式来链接代理服务器,可能会导致速度下降,速度取决于 你与 CDN 之间的网络质量 和 CDN 与你代理服务器之间的网络质量。总归,做好心理准备,别指望速度快,这种强行续命的方子总会有其不可忽视的弊端。。。

Gofly­way 一键脚本 已支持配置 HTTP 伪装,Gofly­way Tools 客户端已支持 CDN 模式启动。

原理说明:

本质上 Gofly­way 是一个 HTTP 服务,所以他也支持反向代理,可以用来 HTTP 伪装,而他又支持 Web­Socket 协议,所以它同样可以经过 CDN 来传输数据,也就是:Goflyway + WebSocket + HTTP + CDN。目前能实现套 CDN 方式的代理软件只有 Gofly­way 和 V2ray。

以下教程以 Cloudflare CDN 为例,其他支持 WebSocket 协议的 CDN 均可使用(大型一些的 CDN 都支持)。

假设你的 IP 1.1.1.1 被墙,那么你无法直接连接这个 IP,那么就可以用免费 CDN 中转一下,你去链接免费 CDN 的节点 IP 即可。

Goflyway客户端 <=> Cloudflare CDN节点 <==> Goflyway服务端(被墙IP)

首先你需要有个域名(免费域名也可以),因为使用 CDN 必须要有域名,例如:a.com
然后服务端配置反向代理 b.com 这个域名,接着在 CDN 中把域名解析到你被墙的 IP(a.com --> 1.1.1.1),最后等待 CDN 解析生效,生效后你使用 Gofly­way 客户端链接该域名,CDN 就会转发数据到到 Gofly­way 服务端(被墙 IP),而你如果直接访问域名 a.com ,就会看到 b.com 网站的内容。

配置 Cloudflare CDN

如果你有 Cloud­flare CDN 的账号,那么请 登陆,如果没有请 注册

去自己的域名服务商更改 DNS 解析地址,等待生效!

取消自带 SSL

因为 Gofly­way 是一个 HTTP 代理,所以我们需要关闭 Cloud­flare CDN 自带 SSL 证书,避免报错。

点击页面顶部 Crypto 按钮,然后找到 SSL 配置并改为 Off 选项(如下图所示)。修改后直接应用生效。

img
img

设置域名解析

我们还需要配置一下域名解析。

点击页面顶部的 DNS 按钮,然后如下图所示,在第一个红框圈中的地方填写域名解析信息,下图示例解释:

  1. A:代表A记录,也就是域名解析为IP。
  2. go:指的是域名记录,也就是子域名:go.doub.cf,你可以填写为 @ ,这代表域名 doub.cf
  3. 45.62.xx.xx:指的是域名要解析的IP,这里写上你的被墙服务器的IP。

然后点击 Add Record 按钮添加域名解析记录。

添加后就如下图第二个红框所示

img
img

生效示例

当你在首页 [Overview] 看到如下图所示时,则代表域名 DNS 修改已经生效。

img
img

Goflyway 服务端配置(可选)

注意:此步骤 (反向代理 HTTP 伪装) 为可选步骤,无论是否配置反向代理 HTTP 伪装,都不会影响客户端使用,服务端只需要配置端口为 指定 HTTP 端口 就行了。当然,配置 HTTP 伪装可以更好的伪装,所以还是建议配置。

服务器 IP 被墙,如何安装 Goflyway 服务端?

让 SSH 软件走代理(putty xshell 都支持配置代理服务器,例如 SS/​SSR 的本地代理 SOCKS5 127.0.0.1 1080),不会设置的话,用这个软件让 SSH 软件走代理。

注意:以下 HTTP 伪装示例网址是:http://kernel.ubuntu.com/~kernel-ppa/mainline/,但是我不希望大家都照着教程里写,最后则都是千篇一律的 HTTP 伪装网址,那反而会成为特征。

建议自己寻找合适的反向代理伪装网址,个人建议按照重要性排序需要满足:

1. 该网站位于海外;

2. 必须是 HTTP 协议的网站(http://xxx,没有 HTTPS 或者不会自动重定向到 HTTP 的网站);

3. 最好该网站是 会用来传输大流量 的,例如我示例选用的 Ubuntu 内核仓库网址,平时大流量传输很正常(下载内核)。

如果是一键脚本搭建的请看:

首先确保 goflyway.sh 脚本版本号为 v1.0.4 以后,如果不是请更新脚本并重装 Goflyway。

然后运行脚本,安装 Gofly­way 时会提示你输入伪装地址,如下示例填写即可:

请输入 GoFlyway 要伪装的网站(反向代理,只支持 HTTP:// 网站)
(默认不伪装):http://kernel.ubuntu.com/~kernel-ppa/mainline/
========================
    伪装 :  http://kernel.ubuntu.com/~kernel-ppa/mainline/
========================

如果是手动教程搭建的请看:

服务端手动教程:https://doub.loan/goflyway-jc1/# 服务端配置

# 先进入你的 Goflyway 服务端安装目录:
## 如果你是手动安装的,那么假设服务端安装在 /root 目录下:
cd /root/goflyway

# 然后运行启动目录。
nohup ./goflyway -k="doubi233" -l=":80" -proxy-pass="http://kernel.ubuntu.com/~kernel-ppa/mainline/" > /tmp/goflyway.log 2>&1 &
# doubi233 是密码
# 80 是端口
# http://kernel.ubuntu.com/~kernel-ppa/mainline/ 是HTTP伪装的网站,必须是HTTP网站才行,这个网站就是我们平时更换内核开启BBR的 Ubuntu内核仓库。

# 因为要经过 Cloudflare CDN,所以端口有限制,只能使用以下端口之一:
80 8080 8880 2052 2082 2086 2095

停止

kill -9 $(ps -ef|grep "goflyway"|grep -v grep|awk '{print $2}')

查看日志

tail -f /tmp/goflyway.log

Goflyway 客户端配置

如果是使用 Goflyway Tools 客户端的请看:

运行 Gofly­way Tools 客户端并添加账号,服务器 IP 处填写你的 Cloud­flare CDN 配置的域名(端口和密码照常填写),然后选择 CDN 模式,再启动代理即可。

如果是手动教程客户端的请看:

客户端手动教程:https://doub.loan/goflyway-jc1/# 客户端配置

我们只需要修改一下客户端手动教程内写入的运行脚本内容即可:

# 原客户端教程 脚本内容
goflyway.exe -up="1.1.1.1:80" -k="doubi233" -l=":8100"
pause>nul

# 修改后 脚本内容
goflyway.exe -up="cf://go.doub.cf:80" -k="doubi233" -l=":8100"
pause>nul
# 记得把 go.doub.cf 替换为你的域名,端口号就是 Goflyway 服务端监听的端口,必须填写。

其他说明

CDN模式下 Goflyway 服务端经常无法连接的问题

最近经过观察和反馈(我分享的 Gofly­way CDN 模式免费账号),发现在 CDN 模式下,Gofly­way 服务端经常会无法连接,重启 Gofly­way 服务端后正常。

目前不清楚为什么会这样,所以只能采取定时重启 Goflyway 服务端来解决这个问题,方法如下:

首先你要安装 Crontab 定时任务程序:

crontab -l
# 通过上面这个命令,判断服务器是否安装了 crontab ,如果提示命令不存在,那么安装:
# CentOS系统:
yum install crond -y
# Debian/Ubuntu系统:
apt-get install cron -y

确定安装成功后,接着添加定期重启任务

crontab -l > "crontab.bak"
sed -i "/goflyway restart/d" "crontab.bak"
echo -e "\n*/30 * * * * /etc/init.d/goflyway restart" >> "crontab.bak"
crontab "crontab.bak"
rm -r "crontab.bak"
# 如果你要删除定期重启任务,那么只需要在执行一遍上面的代码,但是需要跳过第三行代码。
# 上面的代码 */30 * * * * 指的是 每30分钟 重启。
# 代码 1 * * * * 指的是 每1小时01分时 重启。
# 代码 1 */2 * * * 指的是 每2小时01分时 重启。
# 最后你可以通过 crontab -l 代码来查看当前的定时任务。

转自:逗比大佬 - Goflyway 进阶教程:免费域名 + 免费 CDN+HTTP 伪装 = 被墙的 IP 继续做代理