免费Cloudflare隧道隐藏公网IP

前言:使用duckdns免费托管了域名后无法备案而只能使用公网IP+端口访问,安全性不高,于是尝试使用Cloudflare隧道,完全不映射端口到公网,域名访问、源 IP 隐藏。

一、服务器 SSH 执行安装命令

复制代码
wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -O /usr/local/bin/cloudflared
chmod +x /usr/local/bin/cloudflared

二、启动隧道,反向代理你本地服务

2.1 代理 80 网站服务

复制代码
cloudflared tunnel --url http://127.0.0.1:80

运行后终端会生成一个地址,类似:https://xxx.trycloudflare.com,直接打开这个地址访问网站。

2.2 代理 8080 业务端口

复制代码
cloudflared tunnel --url http://127.0.0.1:8080

2.3 后台常驻运行(挂机不中断)

复制代码
nohup cloudflared tunnel --url http://127.0.0.1:80 &

三、固定域名访问

3.1 服务器执行创建命名隧道(永久固定域名,不会变 trycloudflare 随机地址)

复制代码
#执行登录绑定 CF 账号命令
cloudflared tunnel login

# 创建隧道,名字随便取,比如 my-tunnel
cloudflared tunnel create my-tunnel

执行后会生成一串 UUID.json 凭证文件,记下路径,比如 /root/.cloudflared/xxx.json

3.2 把你的 duckdns 域名绑定到这条隧道

复制代码
cloudflared tunnel route dns my-tunnel 你的子领域.duckdns.org

3.3 后台常驻启动隧道代理 8080 端口

复制代码
cloudflared tunnel --config /root/.cloudflared/xxx.json run --url http://127.0.0.1:8080 my-tunnel

✅ 效果:直接访问 https://你的子领域.duckdns.org 就反向代理到你服务器 8080,源站 IP 完全隐藏。

四、Systemd 系统服务(开机自启、崩溃自动重启)

4.1 新建服务文件

复制代码
vi /etc/systemd/system/cloudflared-duckdns.service

4.2 粘贴下面内容,只修改其中的 UUID.json 路径

复制代码
[Unit]
Description=Cloudflare Tunnel for wsincdut.duckdns.org
After=network.target

[Service]
User=root
ExecStart=/usr/local/bin/cloudflared tunnel --config /root/.cloudflared/UUID.json run --url http://127.0.0.1:8080 duckdns-tunnel
Restart=on-failure
RestartSec=5s
StandardOutput=append:/var/log/cloudflared.log
StandardError=append:/var/log/cloudflared.log

[Install]
WantedBy=multi-user.target

4.3 重载系统服务、设置开机自启、立即启动

复制代码
# 重载配置
systemctl daemon-reload

# 设置开机自启
systemctl enable cloudflared-duckdns.service

# 立即启动服务
systemctl start cloudflared-duckdns.service

4.4 常用运维命令

复制代码
# 查看运行状态
systemctl status cloudflared-duckdns.service

# 查看实时日志
journalctl -u cloudflared-duckdns.service -f

# 重启服务(改配置后用)
systemctl restart cloudflared-duckdns.service

# 停止服务
systemctl stop cloudflared-duckdns.service

# 取消开机自启
systemctl disable cloudflared-duckdns.service

以上结束

相关推荐
wangruofeng2 小时前
一个 Markdown 文件攒下 37k 星,i-have-adhd 给 AI 输出立了 10 条规矩
github·aigc·ai编程
一技安身3 小时前
【信创】银河麒麟V10、统信UOS解压7Z文件
linux·运维·服务器
怕浪猫3 小时前
长会话不崩盘:DeepSeek Harness 的上下文压缩与目标管理策略
面试·github·agent
奔跑的架构师4 小时前
[A-50]ARMv9/v8-DVFS系统架构
linux·arm开发·架构·系统架构·arm
迷途呀4 小时前
CI/CD 自动化部署实践:让代码提交后自动上线
linux·运维·nginx·ci/cd·自动化
隐擎fox4 小时前
高性能网络爬虫架构设计:基于 Python 的长连接复用与分布式会话池调度实践
分布式·python·网络协议·tcp/ip·高并发·网络爬虫、
DogDaoDao4 小时前
SimToolReal 解读:用“物体中心“视角重新定义灵巧工具操作
人工智能·机器人·github·关键点·人形机器人·gpt-4o·simtoolreal
赴生-4 小时前
Liunx 操作系统 进程概念(上)
linux
binqian5 小时前
【linux】OpenSSH升级文档
linux·运维·网络
吴声子夜歌5 小时前
Shell编程——if条件语句
linux·运维·shell