在ServBay中配置FRP反向代理服務指南
FRP是一款高性能的反向代理工具,通過客戶端-服務端架構實現內網穿透。本指南將指導ServBay使用者使用frpc客戶端配置安全隧道,實現本地服務的公網訪問能力。
技術原理
FRP通過服務端(frps)與客戶端(frpc)建立加密通信隧道,將內網服務映射至公網伺服器。該方案支持TCP/UDP/HTTP/HTTPS等多種協議,適用於ServBay開發環境下的遠程調試、API測試等場景。
環境準備
1. FRP客戶端安裝
按以下步驟部署frpc客戶端:
- 訪問GitHub Release頁面下載對應版本
- 解壓並部署至系統PATH(以macOS ARM架構為例):bash
tar -zxvf frp_0.61.1_darwin_arm64.tar.gz sudo cp frp_0.61.1_darwin_arm64/frpc /usr/local/bin/
1
2 - 驗證安裝:bash
frpc -v # frpc version 0.61.1
1
2
隧道配置實戰
配置文件說明
創建frpc.toml
配置文件,基礎結構如下:
toml
serverAddr = your-frps-server.com
serverPort = 7000
auth.method = token
auth.token = your_authentication_token
[[proxies]]
name = "test_web"
type = "http"
localPort = 80
customDomains = servbay.your-domain.com
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
配置項 | 功能說明 |
---|---|
serverAddr | FRP服務端公網地址 |
serverPort | FRP服務端通信端口(默認7000) |
auth.method | 服務端認證方式 |
auth.token | 服務端認證密鑰 |
type | 代理類型(http/https/tcp等) |
localPort | 本地服務端口 |
customDomains | 對外訪問域名 |
典型配置示例
將本地ServBay HTTPS服務映射到公網:
例子中:
- frp 伺服器地址是
frps.servbay.demo
- 本地 ServBay 所配置的域名是
servbay.test
- 公網對外提供服務的域名是
test-frp.servbay.app
(域名必須 DNS 解析到 frp 伺服器)
toml
serverAddr = frps.servbay.demo
serverPort = 7000
auth.method = "token"
auth.token = servbay
[[proxies]]
name = "servbay-frpc-demo"
type = "https"
customDomains = ["test-frp.servbay.app"]
[proxies.plugin]
type = "https2https"
localAddr = "127.0.0.1:443"
crtPath = "/Applications/ServBay/ssl/private/tls-certs/servbay.test/servbay.test.crt"
keyPath = "/Applications/ServBay/ssl/private/tls-certs/servbay.test/servbay.test.key"
hostHeaderRewrite = "servbay.test"
requestHeaders.set.x-from-where = "frp"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
啟動服務:
bash
frpc -c frpc.toml
1
服務驗證
- 瀏覽器訪問映射域名:
https://test-frp.servbay.app
1 - 檢查驗證指標:
- 返回HTTP 200狀態碼
- 響應內容與本地服務一致
- SSL證書有效性驗證
日誌診斷
bash
frpc -c frpc.toml --log_level debug # 開啟調試日誌
tail -f /var/log/frpc.log # 實時監控日誌
1
2
2
故障排查指南
現象 | 解決方案 |
---|---|
連接認證失敗 | 檢查auth.token配置與服務端是否一致 |
域名解析異常 | 確認DNS已正確解析到FRP服務端IP |
埠衝突 | 使用lsof -i :PORT 檢查埠佔用 |
隧道頻繁斷開 | 調整心跳參數:heartbeat_timeout = 30 |
方案優勢
FRP方案為ServBay使用者提供以下核心價值:
- 多協議支持滿足複雜業務場景
- 配置熱更新無需重啟服務
- 原生級聯代理支持多層內網穿透
- 開源架構保障數據安全可控
建議生產環境部署時啟用TLS加密通信,並通過tls_enable = true
配置強制加密傳輸。