Cloudflare Tunnel + Nginx Proxy Manager:服务穿透

💡 原文中文,约2400字,阅读约需6分钟。
📝

内容提要

Nginx Proxy Manager是一个可视化代理管理器,适合与Docker搭建的应用配合使用。它可以一键申请SSL证书,并自动续期。Cloudflare Tunnel可以创建一个Cloudflared类型的隧道,用于将内网服务映射到外网。通过Nginx Proxy Manager和Cloudflare,内网服务可以通过Tunnel转发到外网。可以通过重写DNS将域名直接指向Nginx Proxy Manager,提升访问体验。

🎯

关键要点

  • Nginx Proxy Manager 是一个可视化代理管理器,适合与 Docker 搭建的应用配合使用。

  • Nginx Proxy Manager 可以一键申请 SSL 证书,并自动续期。

  • Cloudflare Tunnel 可以创建一个 Cloudflared 类型的隧道,将内网服务映射到外网。

  • 通过重写 DNS,可以将域名直接指向 Nginx Proxy Manager,提升访问体验。

  • 创建 Cloudflare Tunnel 需要在管理面板中进行配置,并获取 Tunnel 的 token。

  • Docker 启动 Cloudflare Tunnel 时需设置网络模式为 host,Transport 协议可设置为 http2。

  • 在 Nginx Proxy Manager 中新增 Proxy Host 时,需配置为 Publicly Accessible,并不配置 SSL。

  • 在 Cloudflare Tunnel 配置中,需填写域名和转发目标 Service 的 URL。

  • 申请 SSL 证书后,需在 Cloudflare Tunnel 配置中将 Service 的 Type 切换成 HTTPS。

  • 通过 Cloudflare 和 Nginx Proxy Manager,内网服务可以成功映射到外网。

延伸问答

Nginx Proxy Manager 的主要功能是什么?

Nginx Proxy Manager 是一个可视化代理管理器,适合与 Docker 搭建的应用使用,支持一键申请和自动续期 SSL 证书。

如何创建 Cloudflare Tunnel?

在 Cloudflare 管理面板中,进入 Zero Trust - Network - Tunnels,点击 Create a tunnel,输入 Tunnel 名称并获取 Tunnel 的 token。

在 Docker 中启动 Cloudflare Tunnel 时需要注意什么?

启动时需设置网络模式为 host,Transport 协议可设置为 http2,并确保 DNS 能解析 Cloudflare 相关域名。

如何在 Nginx Proxy Manager 中配置 Proxy Host?

新增 Proxy Host 时需配置为 Publicly Accessible,并不配置 SSL,之后在 Cloudflare Tunnel 配置中填写域名和转发目标 Service 的 URL。

申请 SSL 证书后需要做什么?

申请 SSL 证书后,需要在 Cloudflare Tunnel 配置中将 Service 的 Type 切换成 HTTPS,以避免无限重定向。

如何提升内网服务的访问体验?

可以通过重写 DNS,将域名直接指向 Nginx Proxy Manager,减少链路长度,从而提升访问速度。

🏷️

标签

➡️

继续阅读