godaddy域名+cloudflare_CDN+v2ray+caddy纪实

祖国70大寿临近,网络安全升级,vps被封。此时我只想高歌一曲:我爱你,中国。。。

http://ping.pe/ping.php ping一下你的vps,如果国内的节点100%loss,国外节点可正常访问,即说明IP被封了。此时直接通过vps搭建v2ray或ss翻墙已经行不通了。

参考网上资料通过域名+CDN+v2ray的方式成功实现翻墙,步骤如下:

godaddy购买域名

  1. 注册账号

  2. 选购域名

  3. 配置域名服务器,此处要填写cloudflare中的域名服务器

    1
    2
    bella.ns.cloudflare.com
    carter.ns.cloudflare.com

cloudflare添加域名

  1. 注册账号

  2. 添加网址

  3. 到域名购买商网站配置域名服务器,配置成cloudflare的域名服务器(即上一步骤-3)

  4. 选择DNS选项卡,添加A记录配置域名DNS解析到VPS IP地址 (在DNS选项卡里确保云朵图标是灰色)

  5. 选择SSL/TLS选项卡,选择SSL/TLS模式为Full(strict)

  6. 选择SSL/TLS选项卡,选择Origin Server子选项卡,点击Creat Certificate,创建免费证书,此时会生成两个密文,复制上面的到vps服务器保存为xxx.pem,复制下面的到vps服务器xxx.key。由于caddy向Let’s Encrypt签名证书总是失败,我们后面会使用自签名证书,指定的 证书即为这儿的xxx.pem,证书key即为这儿的xxx.key

  7. cloudflare的配置至此告一段落,然后移步至vps服务器配置v2ray和caddy,配置运行OK后,回到cloudflare,选择DNS选项卡,将云朵图标点亮为橙色(DNS Proxy,此时域名会被解析到cloudflare的IP,cloudflare会做转发到我们真正的VPS IP 地址)

v2ray管理脚本

  1. 运行v2ray管理脚本一键安装脚本: bash <(curl -s -L https://233blog.com/v2ray.sh)

  2. 运行v2ray命令,运行v2ray管理脚本,修改协议(选项2)为:websocket + tls(选项4),然后会提示输入域名,此时要确保域名解析到VPS IP 地址。一路默认,会安装caddy反向代理,但是caddy自动tls证书申请失败

  3. 此时运行v2ray status 查看v2ray和caddy运行状态都未运行

  4. 手动运行v2ray: v2ray --config=/etc/v2ray/config.json &

  5. 手动运行caddy:首先使用自签名证书,证书是cloudflare提供的免费证书,将xxx.pem、xxx.key复制到/etc/ssl/caddy目录下,配置/etc/caddy/Caddyfile:指定tls证书和key,指定https端口443,systemctl start caddy运行caddy

    1
    2
    3
    4
    5
    6
    7
    8
    xxx.com:443 {
    tls /etc/ssl/caddy/xxx.pem /etc/ssl/caddy/xxx.key
    timeouts none
    #33334 是v2ray inbound监听的端口
    proxy / 127.0.0.1:33334 {
    websocket
    }
    }
  6. 一定注意:之前使用ufw控制防火墙,ufw allow 443,但是telnet 还是不通。建议直接关掉防火墙后即可。

  7. 至此,服务器配置完成,然后移步cloudflare,将DNS选项卡的云朵点亮

  8. v2ray info 查看v2ray配置,客户端v2ray据此配置即可

分割线

靠,终于又可以用google了。。。

-------------本文结束感谢您的阅读-------------
Good for you!