Podman 网络优化与进阶业务拓展笔记(二)

本笔记聚焦于 Podman Compose 网络防错规范非网页服务(Windows 3389 远程桌面)的隧道搭建,以及如何利用腾讯云 EdgeOne 为全站架构引入全自动的边缘安全加速。


第一部分:Podman Compose 网络引用规范

在 Podman 容器化部署中,如果需要加入宿主机上已经存在的外部虚拟网络(如 podmanfrp-net),必须遵循严格的 YAML 语法,以防止某些 Compose 版本因“别名解析失败”而报错。

1. 错误写法示范(内外名字不一致)

services:
  frpc:
    networks:
      - podman-network    # Compose 内部管这个网络叫 "podman-network"

networks:
  podman-network:         # 定义一个 Compose 内部的代号
    external: true
    name: podman          # 映射到宿主机上真正的网络名 "podman"
  • 隐患: 在某些特定或老旧的 podman-compose 版本中,解析引擎极易忽略 name: podman 属性,从而直接在宿主机寻找 podman-network,引发 network not found 错误。

2. 正确写法示范(内外一致,最稳妥)

services:
  frpc:
    networks:
      - podman            # 内部引用代号

networks:
  podman:                 # 外部真实网络名
    external: true        # 声明是外部已有的,不需要 Compose 重新创建
  • 核心规范: 服务引用的名字 = 网络定义的代号 = 宿主机真实的虚拟网络名。在此基础上,**完全不需要再额外添加 name: podman**。保持内外一致是绝不会翻车的金科玉律。

第二部分:非网页服务(Windows 3389 远程桌面)映射

FRP 不仅能转发网页,还能转发纯 TCP 四层流量。由于远程桌面(RDP)底层不携带“域名”信息,因此它无法通过 Caddy 进行转发,必须直接通过 FRP 在云服务器独立暴露公网端口。

1. 流量闭环逻辑

外部微软远程桌面软件 (mstsc) ➡️ 云服务器公网端口 (53389) ➡️ FRPS ➡️ FRP 隧道 ➡️ 香橙派 FRPC ➡️ 家中 Windows 电脑 (3389)

2. 关键配置改造

🔹 腾讯云控制台(安全组/防火墙)

  • 放行自定义的远程桌面中转端口:TCP 53389

香橙派端 frpc.toml 追加配置

无需修改原有的 AList 等 HTTP 配置,直接在文件末尾追加:

# ---- 新增 Windows 远程桌面 TCP 映射 ----
[[proxies]]
name = "win_rdp"
type = "tcp"                      #  必须是 tcp 模式
localIP = "192.168.1.100"         #  你家里那台 Windows 电脑在局域网的真实静态 IP
localPort = 3389                  # Windows 远程桌面固定的本地端口
remotePort = 53389                # 映射到云服务器的公网端口(对应安全组放行端口)

*修改后在香橙派执行:podman-compose restart frpc*

云服务器端 Caddyfile

  • 完全不需要修改。 Caddy 属于七层 HTTP 代理,不需要也无法插手四层 TCP 远程桌面流量,让其保持原样即可。

⚡ 第三部分:引入腾讯云 EdgeOne 边缘加速

EdgeOne(边缘安全加速)集成了 CDN 加速与 WAF 安全防护。将它部署在最前端,可以大幅度提升网页打开速度,同时隐藏云服务器的真实公网 IP

1. 完整流量轨迹图

用户浏览器 ➡️ EdgeOne 边缘节点(全站加速/SSL证书) ➡️ 云服务器 Caddy (443) ➡️ FRPS (8080) ➡️ 香橙派 FRPC ➡️ 内部应用

2. 网页服务加速(HTTP/HTTPS,如 AList、NocoDB)

  • 源站配置: 在 EdgeOne 后台添加你的二级域名(如 zadg.baidaoya.site),将“源站基础信息”配置为你的云服务器公网 IP,源站端口填 443
  • 回源 SSL 协议(极其重要): 回源协议务必选择“HTTPS”。因为云服务器上的 Caddy 会自动申请证书并强制开启 HTTPS,如果 EdgeOne 用 HTTP 回源去敲 Caddy,会导致握手直接失败。
  • 证书托管: 开启加速后,用户最先接触的是 EdgeOne 的节点。你需要在 EdgeOne 后台申请或托管一份免费的 SSL 证书。此时,Caddy 自身的自动证书将自动转化为“回源证书”在后台工作。
  • 加速体验反馈: AList 的前端 JS、CSS、图标等静态资源会被 EdgeOne 缓存,网站登录和加载速度会大幅飙升。但由于大文件下载和视频播放的物理瓶颈在于你家中的宽带上行速度,因此大文件的绝对下载速度不会变快。

3. 非网页服务加速(TCP 3389 远程桌面 / SSH)

  • 安全策略: 绝对不能针对远程桌面域名开启加速! EdgeOne 默认的站点加速只识别七层 HTTP 流量,无法识别四层的远程桌面纯 TCP 数据包。
  • 正确做法: 在 EdgeOne 的 DNS 解析页面,将用于远程桌面的域名(或者直连域名)的 “代理状态”(CDN 加速开关)关闭,设置为“仅限 DNS”(仅解析)。让远程桌面的流量直接直连云服务器的真实 IP。

📝 架构终极进化口诀

网页服务走七层,Caddy 在前域名分;EdgeOne 加速挂最前,回源 HTTPS 协议真。
远程桌面走四层,FRP 放行端口连;安全组内开大门,CDN 关掉纯解析稳。

标签: none

添加新评论