这个是逗比根据地的备份镜像站(非官方)。牢记域名: [doubibackup.com]。搜索:标签云
投稿文章 | 广告合作 | Telegram 群组 / 公告频道 / 使用教程
广告

GoFlyway 进阶教程:代理服务器自定义搭建HTTP伪装网站,降低被墙几率

网络资源 Toyo 74评论
广告
本文最后更新于 2018年10月12日 11:16 可能会因为没有更新而失效。如已失效或需要修正,请留言!

前段时间我写了个 Goflyway 进阶教程:免费域名+免费CDN+HTTP伪装=被墙的IP继续做代理 教程,当时是考虑到很多人的代理服务器IP被墙,所以才介绍大家这样搞。但是套CDN这种方式缺陷很明显,就是大部分人使用起来都是减速的。。。

所以本文章就把 HTTP伪装 单独摘出来介绍说明,同时说一下如果在服务器搭建一个HTTP网站,然后让这个网站变成HTTP伪装网站。

当你访问你的IP或域名时,会显示HTTP网站,当你用 Goflyway 客户端链接时,会建立代理。

注意:该教程仅适用于没有被墙IP的服务器,主要是降低使用 Goflyway 时的被墙几率


其他 Goflyway 教程请看:https://doub.io/tag/goflyway/

原理说明

依靠 Goflyway 服务端的HTTP反向代理功能,我们上个文章只介绍了反向代理别人网站的配置,今天主要介绍自己在服务器上面建一个HTTP网站,然后让 Goflyway 服务端反向代理这个网站(例如:http://127.0.0.1:8080)。

反向代理别人的网站也有缺点,比如:

  1. 你需要找个纯HTTP的网站,因为现在SSL证书的普及,导致这就很麻烦;
  2. 其次你找的HTTP网站还不能引用太多的外链(图片、CDN)之类的,否则网页会显示不正常;
  3. 最后如果你反向代理较为出名的网站,这样反而会成为特征,因为你的域名与该网站内容的真实域名明显不对应。

而如果我们自己建立一个简单的HTTP网站,那么这些都不是问题了:

  1. 你可以什么网页文件都不放,只放一些大点的文件,形成一种目录列表程序下载文件的网站。
  2. 你也可以去网上找一些 HTML网站模板,然后简单改改放上去即可伪装成一个正常一点的网站。
  3. 又或者你可以去别人的网站右键另存为 xxx.html 文件并改名为 index.html ,然后上传上去也行。

总归这样玩更多样化更自定义,避免了大家都是一个样的尴尬和特征。

域名相关

尽管不需要域名也可以做下去,但是我还是建议搞个域名来做,毕竟这样真实一点。

如果你已经有了域名跳过这一步,如果你还没有,那么可以去随便申请个免费域名:教你申请.tk/.ml/.cf/.gq/.ga等免费域名

申请域名后配置好域名DNS解析,不需要套CDN什么的。

注意:免费域名有可能会被收回,如果想要稳定,可以随便买个便宜域名,几美元一年的域名很多,建议海外购买域名(例如 namecheap)。

HTTP网站配置

正如前面 原理说明 的那样,你可以准备几个大点的文件(多一点好些),或者网上找个HTML模板改改,或者去别人网站另存为本地 index.html 文件。

准备好这些后,我们就需要搭建 HTTP服务了,这里我用的是 Caddy ,如果你用其他的例如 Nginx Apache 都可以的。

安装 Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager

安装 Caddy 成功后,继续新建一个用于使用的虚拟主机文件夹,例如 goflyway(可以自己改):

mkdir /home/www/ && mkdir /home/www/goflyway

然后你无论是用 SFTP 还是其他方式,只要把你准备的文件上传到 /home/www/goflyway 文件夹即可(如果是网页文件请确保 /home/www/goflyway/index.html 文件存在)。

配置 Caddy

然后我们还需要写入 Caddy 配置:

# 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
# :8080 指的是监听 0.0.0.0:8080 。
# /home/www/goflyway/ 这是虚拟主机文件夹,如果不一样请修改
echo ":8080 {
 root /home/www/goflyway/
 timeouts none
 gzip
}" > /usr/local/caddy/Caddyfile

这里我们并不需要配置域名,直接绑定 IP 就行,8080是端口,可以随意改,不建议与我一样。


如果你想要做成目录列表程序下载网站,那么请看下面这种示例:

点击展开 查看更多

启动 Caddy

最后就是启动 Caddy 了:

/etc/init.d/caddy start

如果启动失败,请检查日志: cat /tmp/caddy.log 并在下面评论里告诉我。

如果启动成功,那么请访问 http://你VPS的IP:8080 看看是否能看到你的网站内容,如果没有请检查上面的步骤,如果有就继续。

Goflyway 服务端配置

服务端配置就简单了,以我的 Goflyway 服务端一键脚本为例,如果是第一次安装,那么安装的时候伪装域名处直接填写 http://127.0.0.1:8080 即可。

如果是已经安装过的,请 运行脚本 - 7.设置 GoFlyway 账号 - 4.修改 伪装配置(该功能请确保脚本是 v1.0.5版本以后)来修改伪装域名配置。

另外,建议 Goflyway 服务端使用 80 端口,这样效果最好。

修改成功并重启服务端后,我们前面配置好的域名DNS解析也应该生效了。

这时候我们访问你配置的域名:http://你的域名/ 应该就能看到访问 http://你VPS的IP:8080 时看到的网站内容了。

至于客户端,照常使用,不过服务器IP处要填写你的域名。


另外突然想起来 Goflyawy 还支持 WebSocket ,那么我感觉我可以稍后研究一下,下次可能会单独写个 WebSocket 配置教程。

转载请超链接注明:逗比根据地 » GoFlyway 进阶教程:代理服务器自定义搭建HTTP伪装网站,降低被墙几率
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!

赞 (58)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(74)个小伙伴在吐槽
  1. 自签似乎只能80+443端口,文章里是8080端口能同时tls自签443端口吗
    Kaku2018-10-15 21:23 回复
    • SSL证书和域名网站端口是没有必然联系的。
      443是标准的 HTTPS 端口,但是不代表你不用 443 就不能用SSL证书了。
      不过你要靠 Caddy 自动申请SSL证书,需要 80 端口是空闲的,这是申请证书需要的必要验证条件。
      至于 HTTPS 端口,你可以在 Caddy 的域名配置后面加上 :8080 这样的端口号即可。
      xxx.xx:8080 {
      
      不过,Goflyway 是HTTP伪装,你不能搞 HTTPS 网站。
      Toyo2018-10-15 21:38 回复
      • 想80上走通过CDN的Goflyway 的同时 443上WebSocket+TLS+Web直连, 同ip第二个域名网站8080端口走其他的CDN…………瞎想想。谢谢解释不让强制http重定向https
        Kaku2018-10-16 21:01 回复
  2. 不建议在ss服务器上做web服务。当前根据国内法律,国际未注册的web服务一概封杀,同理ssr也不要伪装成http流量。只用最基本的ss服务,不要混淆和伪装,不要开多端口!
    jake2018-09-18 09:32 回复
    • 什么叫:国际未注册的web服务一概封杀?
      Toyo2018-09-18 12:14 回复
  3. Goflyway连接后,访问Facebook不能正常加载页面,而Twitter也有问题不能登录,求大佬帮忙……
    大只猫2018-09-10 13:11 回复
  4. 这个教程不是很详细。。假如没有申请域名或者vps的ip绑定了多个域名,这时候该怎么做呢?还有caddy能卸载吗?
    ga2018-08-24 19:02 回复
    • 申请域名步骤写了 #域名相关,不过是免费域名的,至于付费域名,各网站我不可能都做一遍图。
      caddy 支持 多域名配置,caddy 要卸载,只需要把安装代码里的 install 改成 uninstall 即可。
      Toyo2018-08-24 19:55 回复
  5. 大佬, caddy启动不成功, log显示如下所示: Activating privacy features... done. http:// Activating privacy features... done. http:// Activating privacy features... done. 2018/08/10 05:08:43 listen tcp :80: bind: address already in use
    leo2018-08-10 11:10 回复
    • 80端口被占用:
      netstat -lntp
      # 查看是哪个程序占用了 80 端口,关掉它(程序名格式为:PID/程序名,PID即进程ID)。
      # 通过 kill -9 PID数字 来结束进程。
      
      Toyo2018-08-10 14:07 回复
      • fuser -k 80/tcp更简单。。。。
        Ham Jin2018-08-13 22:15 回复
      • 大哥 ,brook 可以这样伪装吗
        agony2018-08-17 18:10 回复
        • Brook 并不支持该伪装方式。
          Toyo2018-08-17 19:39 回复
          • 大哥 brook 中国联通4g连上有问题,有更好的brook 伪装方式吗 还有大佬,goflyway有安卓端的客户端吗
            agony2018-08-17 21:54 回复
  6. 请问直接在代理服务器上搭建网站,是不是可以达到同样的效果呢?
    小菜菜2018-07-24 21:54 回复
    • 不能,两者不是一个概念。
      Toyo2018-07-25 08:37 回复
  7. 2018/07/04 13:16:34 error inspecting server blocks: parse //:8080 {
     root /home/www/goflyway/
     timeouts none
     gzip
    }: invalid character " " in host name
    
    请问这个是什么原因??上面写可以不用域名而用VPS地址,我就是的,但是运行caddy后永远是这个错误。
    解药2018-07-04 13:20 回复
    • 请贴出配置文件内容。
      Toyo2018-07-05 09:09 回复
      • # 以下全部内容是一个整体,是一个命令,全部复制粘贴到SSH软件中并一起执行!
        # :8080 指的是监听 0.0.0.0:8080 。
        # /home/www/goflyway/ 这是虚拟主机文件夹,如果不一样请修改
        echo ":8080 {
         root /home/www/goflyway/
         timeouts none
         gzip
        }" > /usr/local/caddy/Caddyfile
        
        配置就是复制的这个,一个字母都没有改
        解药2018-07-06 13:00 回复
        • 注意,是一次复制下面所有代码,并直接粘贴到SSH中执行,而不是把下面代码粘贴到配置文件中。
          echo ":8080 {
           root /home/www/goflyway/
           timeouts none
           gzip
          }" > /usr/local/caddy/Caddyfile
          
          Toyo2018-07-07 10:15 回复
    • 你的8080端口被封了。换别的端口就好
      konds2018-07-18 19:36 回复
  8. 在酸酸乳搭建完成后,我在搭goflyway。还能用酸酸乳链接节点吗?还是说需要用goflyway链接?
    啊啊啊2018-06-29 01:39 回复
    • SSR 和 Goflyway 是两个独立的代理软件,都需要用各自配套的客户端连接。
      Toyo2018-06-29 11:42 回复
  9. -_-|| 22号手里某工傻瓜式ss挂了,折腾两天还是能ping通连不上ss,最后还花了9美刀换ip还是不行,brook也不能访问,然后换乱个主机商装了大佬的brook能连上了虽然速度慢,最后研究某工的时候装了个面板偷了个模板挂了个网页上去,brook居然又能访问了。目前我这边连不上ss
    manami2018-05-25 21:23 回复
    • ss现在会被运营商封端口,但不墙IP
      anderson2018-05-30 21:08 回复
  10. 先表示感谢!之前被樯ip就是这里找到解决办法的。现在ip居然解封了…… 然后按本帖子工作正常,就是速度很慢,看y2b比原来差了很多,怎么解决呢?谢谢!
    kuisha2018-05-04 12:04 回复
  11. 视频教程https://www.youtube.com/watch?v=OLja543vp0U
    Billy2018-04-26 23:01 回复
  12. 做个公益站,做做公益!
    小男生2018-04-24 02:07 回复
  13. 大佬,请教一下,我在Caddyfile中配置好了root路径,放了一个index.html是可以访问到的,但是换成文件,就是404 not found了,是还有哪里需要配置嘛?
    razen2018-04-19 14:16 回复
    • 换成文件是什么意思?
      Toyo2018-04-19 16:03 回复
      • “你可以什么网页文件都不放,只放一些大点的文件,形成一种目录列表程序下载文件的网站。” 我就放了一些文件,好像不能直接访问下载,要怎么形成这样的下载文件网站呢?
        razen2018-04-24 11:34 回复
        • 你不说我都忘了,Caddy 要做目录列表程序方式显示,需要再配置文件类加上一行代码:browse ,教程更新了示例。
          Toyo2018-04-25 14:01 回复
          • 谢谢大佬
            razen2018-04-25 15:02 回复
  14. 这个GOFLYWAY 老是断流怎么办啊 changeip
    古本2018-04-18 16:07 回复
  15. 请问下站长老大,申请好域名做dns解析目前除了cloudflare外,还有什么比较好的解决途径
    sdoubi2018-04-15 14:09 回复
    • 你指的是 仅仅DNS解析,还是说 Goflyway 的CDN模式(想要速度快什么的)?
      Toyo2018-04-15 15:11 回复
  16. 大佬,升级之后启动不了,从1.05的版本升级到1.2.0a,然后就启动不了,提示配置文件找不到,怎么办?是要改sh之类的吗?
    xman2018-04-14 17:48 回复
    • v1.0.5 是脚本版本,v1.2.0a 是Goflyway 版本,旧脚本版本有BUG,已经更新(最新版本 v1.0.7)。
      运行下面代码创建一个空的配置文件(否则卸载报错),然后卸载 Goflyway ,升级脚本,再安装 Goflyway 。
      echo -e 'port=\npasswd=\nproxy_pass=' > /usr/local/goflyway/goflyway.conf
      
      Toyo2018-04-14 20:59 回复
  17. https的情况下是不是ssr就不能用443端口了?
    zzz2018-04-06 21:42 回复
  18. Caddy安装成功后,系统重启不能自动启动呢,脚本里面能不能加上Caddy安装后加入启动脚本的代码呀,谢谢哦
    jelly2018-04-06 07:19 回复
    • Caddy 安装后,会注册服务脚本,并且默认配置其开机启动,如果没有开机启动,怕是有其他的问题。
      首先你查看日志 cat /tmp/caddy.log 看看你重启服务器时是否有日志输出,看看是不是启动了但是因为什么原因而启动失败?
      另外使用 netstat -lntp 看一下是否有其他的程序占用了 80端口(并且还是开机自启动,例如很多系统自带 apache2 nginx)。
      Toyo2018-04-06 17:18 回复
      • caddy安装成功后,重新启动VPS,查看tmp文件夹是空白的,也没有什么错误提示。手动运行# /etc/init.d/caddy start 会提示这个信息 nohup: appending output to ‘nohup.out’ [信息] Caddy 启动成功 !,还是不能自启。不知道是什么原因系统是Ubuntu 14.04
        jelly2018-04-10 13:56 回复
        • 重装一下 Caddy 。
          Toyo2018-04-10 14:27 回复
          • 重装几次了还是不能自启。每次VPS重启必须手动运行caddy启动命令才可以呢。
            jelly2018-04-10 16:31 回复
            • 那么我就不清楚了。
              Toyo2018-04-11 11:39 回复
  19. 这个可以增加个前置代理 前置代理 的选项么 这个可以增加个前置代理 前置代理 的选项么
    ysh2018-04-05 09:42 回复
    • Goflyway 似乎并不支持设置前置代理。
      Toyo2018-04-05 14:50 回复
      • https://github.com/coyove/goflyway/wiki/%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B#https-%E5%89%8D%E7%BD%AE%E4%BB%A3%E7%90%86 HTTP(S) 前置代理
        ysh2018-04-05 21:40 回复
        • 应该是可以的,但是 我需要HTTP HTTPS 代理用来测试效果,网上公开分享的那些代理账号都很烂,没几个能用的。。。
          有兴趣可以去 Telegram群组(TG使用教程)私聊联系我讨论。
          Toyo2018-04-06 17:41 回复
  20. 我想說的是,发现之前牆了没有换IP的,又已经是复活了。Hostus和搬瓦工各一个已恢复
    啫喱2018-04-04 15:14 回复
  21. 禁止搜索引擎搜到 【wget -P /var/www/html https://raw.githubusercontent.com/wxlzmt/wxlzmt.github.io/master/resource/script/robots.txt】 。。。。。。。。。。。。。。 探针(简体中文) 【wget -P /var/www/html https://raw.githubusercontent.com/wxlzmt/wxlzmt.github.io/master/resource/script/tz.php】 。。。。。。。。。。。。。。 放一个静态网站 【wget https://raw.githubusercontent.com/wxlzmt/bigfiles/master/jdk1.8-api.zip】 【unzip -n jdk1.8-api.zip -d /var/www/html】 。。。。。。。。。。。。。。 /var/www/html按需修改为自己网站的根目录。
    iuha2018-03-31 16:50 回复
  22. 之前买的VPS用了半个月就挂了ಥ_ಥ,Goflyway套CDN成功复活,速度也很不错。就是用Goflyway tool会导致任务栏消失...要手动运行explorer再重启它才能恢复,然后恢复之后tool的图标也会消失。再然后就是不能挂在路由器上比较可惜,Goflyway的github有个魔改自ssr的android客户端,然而似乎并不能用CDN模式...
    Franz2018-03-29 22:31 回复
  23. 安装coddy之前还能打开域名 安完完全打不开了 哈哈 网页显示 错误 您所请求的网址(URL)无法获取
    树枝上的小黑猫2018-03-29 15:12 回复
    • 信息太少,无法判断,估计还是哪里步骤做错了。
      Toyo2018-03-30 15:24 回复
  24. 安装完caddy 创建文件夹时 提示 cannot creaate directory ‘/home/www/':File exists 是怎么回事啊
    树枝上的小黑猫2018-03-29 15:01 回复
    • /home/www 文件夹已存在,跳过这个步骤,执行 mkdir /home/www/goflyway
      Toyo2018-03-29 15:04 回复
  25. 能不能加Goflyway开机自启动加上呀,谢谢哦
    jelly2018-03-29 12:53 回复
    • Goflyway 服务端一键脚本默认配置了服务开机启动。
      Goflyway Tools 则也有开机启动功能,不过可能需要以管理员方式启动才能设置(添加注册表)
      Toyo2018-03-29 13:18 回复
      • 我的Ubuntu 14.04 用Goflyway 服务端一键脚本 安装配置成功后,开机没有自启动哦。不知道是什么原因。
        jelly2018-03-29 14:07 回复
        • 不清楚,重启服务器后看看日志有没有内容。
          安装 Goflyway 后,会下载并注册系统服务,并默认配置开机启动。
          Toyo2018-03-29 15:07 回复
          • Caddy安装配置成功后,重启服务器Caddy服务不能自动启动呢。系统使用的是Ubuntu
            jelly2018-03-29 15:42 回复
  26. 要实际尝试是否可以避免被墙可以去重灾区的机房开一个机器测试一下。。。
    fireka2018-03-29 10:45 回复
    • 只是减少被墙的几率罢了,并不能保证不会被墙。。。
      Toyo2018-03-29 12:30 回复
  27. 学习了,IP已经被Q了,套了一个壳子,速度依旧很满意。多谢大神
    朕自逍遥2018-03-28 21:34 回复
  28. 这样行不行,客户端设置成cloudflare模式,ip没有被q就把cloudflare网站里面的域名cdn取消,被q就开启cdn。
    aaa2018-03-28 18:38 回复
    • 都可以。另外,CDN模式准确说也是 WebSocket 模式,所以我这两天更新一下客户端,新增 WebSocket 模式,服务端不需要任何设置(反向代理只是为了HTTP伪装,降低被墙几率),用什么模式只取决于客户端怎么设置,Goflyway 服务端会自动辨别。
      Toyo2018-03-29 12:56 回复
  29. 用这个方法 速度会和原来的速度保持的几乎一样么? 还是说 只是会减少一点
    树枝上的小黑猫2018-03-28 16:34 回复
    • 反正我测试没区别,Goflyway 会自动判断你的目的,你用域名访问,他就显示网页,你用客户端访问,他就建立代理链接。
      Toyo2018-03-29 12:58 回复
      • 感谢大佬~~ 一会搭一下试试~! :lol:
        树枝上的小黑猫2018-03-29 13:53 回复
  30. 抢个沙发 顺便问下 大佬!请问一个小鸡的使用人数是根据带宽还是内存老判断呢?512m的小鸡的话够多少人同时在线呢
    谢谢2018-03-28 15:56 回复
    • VPS做代理的话,除了网络宽带质量,需求大概是:CPU>内存>其他所有硬件配置。
      特别是像 SSR 这种对CPU要求高(主要是协议和加密方式的原因),往往你的服务器宽带没跑满,但是CPU性能造成了瓶颈,导致速度上不去,不过不同代理软件对CPU和内存的占用都不同,Brook Goflyway V2ray 这类可能是因为用了 Golang 的原因,对CPU和内存都占用特别低,反正我分享的免费账号,以前是SSR,老是动不动80-100%的,现在换成Brook Goflyway免费账号,平时都是 10%以下,内存就更别提了,都感觉不到了。。。
      Toyo2018-03-29 13:04 回复
      • Python版的SS/SSR占用内存比较高,如果VPS内存小的话可以Libev或者Go版的,SSR貌似也有Libev版的
        lalala2018-03-30 16:41 回复
  31. 666,感谢大佬的教程
    peter2018-03-28 15:55 回复