惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Fortinet All Blogs
小众软件
小众软件
大猫的无限游戏
大猫的无限游戏
B
Blog RSS Feed
WordPress大学
WordPress大学
A
About on SuperTechFans
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 司徒正美
I
InfoQ
MyScale Blog
MyScale Blog
量子位
博客园 - 【当耐特】
M
MIT News - Artificial intelligence
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 叶小钗
J
Java Code Geeks
L
LangChain Blog
T
The Blog of Author Tim Ferriss
有赞技术团队
有赞技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
阮一峰的网络日志
阮一峰的网络日志

博客园 - 火冰·瓶

Cloudflare Tunnel 有两种模式 用 Cloudflare Tunnel 实现从外网 SSH 登录内网服务器 Cloudflare + .NET Core MVC 部署完整流程 net core 后端获取网络图片的扩展名 推荐好用的web控件 ubuntu运维 net core中结合EntityFrameworkCore的DB first使用PostgreSQL OneDrive中设置不同步某个文件夹 Framework 4.7老项目运行到caddy Action<T> 和 Func<T>的用法 EF Core经验 net core随记 asp.net core 记录页面访问次数,同一个IP一个小时只算一次 asp.net core 记录页面访问记录 asp.net core 发布到caddy asp.net core发布到Caddy获取用户的真实ip 统计文章阅读量,一小时内重复刷新的不重复统计 使用on()方法绑定事件,解决动态加载的元素事件绑定 鼠标悬停在图片上方时,显示文字
使用Frp+Caddy把https映射到内网的web服务
火冰·瓶 · 2025-12-03 · via 博客园 - 火冰·瓶

🖥️外网服务器配置

1. frps.toml

bindPort = 7000

# 开启 http 虚拟主机代理
vhostHTTPPort = 8080        #这个8080用于http代理
vhostHTTPSPort = 8443       #这个8443用于https代理

auth.method = "token"
auth.token = "12345678"

log.to = "/var/log/frps.log"
log.level = "info"
log.maxDays = 3

2. Caddyfile

app1.yourdomain.com {
    reverse_proxy localhost:8080           #指向frp中的http代理端口
}

app2.yourdomain.com {
    reverse_proxy localhost:8080
}
  • 每个子域名都指向 FRP 服务端的 HTTP 入口端口(这里是 8080)。

  • Caddy 会自动申请并续期 HTTPS 证书。

🖥️ 内网客户端配置

frpc.toml

serverAddr = "your.server.com"
serverPort = 7000

auth.method = "token"
auth.token = "12345678"

# 内网服务1:映射到 app1.yourdomain.com
[[proxies]]
name = "app1"
type = "http"
localIP = "127.0.0.1"
localPort = 5000
customDomains = ["app1.yourdomain.com"]

# 内网服务2:映射到 app2.yourdomain.com
[[proxies]]
name = "app2"
type = "http"
localIP = "127.0.0.1"
localPort = 6000
customDomains = ["app2.yourdomain.com"]

🔑 注意事项

  • DNS:确保 app1.yourdomain.comapp2.yourdomain.com 都解析到外网服务器 IP。

  • 防火墙:开放 80/443 给 Caddy,开放 7000 给 FRP 客户端连接。

  • 证书:由 Caddy 自动管理,不需要在 FRP 配置里写证书。

  • 安全:建议使用复杂的 auth.token

这样配置后:

  • 外网访问 https://app1.yourdomain.com → Caddy → FRP → 内网 5000 服务。

  • 外网访问 https://app2.yourdomain.com → Caddy → FRP → 内网 6000 服务。