frp
是一款高性能的反向代理應用,專注於內網穿透。它支持多種協議,包括 TCP、UDP、HTTP、HTTPS 等,並且具備 P2P 通信功能。使用 frp
,您可以安全、便捷地將內網服務暴露到公網,通過擁有公網 IP 的節點進行中轉。
自建 frps
內網穿透服務,基於 ubuntu22.04
,記錄部署過程。
下載#
Frp github 預編譯發布地址:Releases
根據伺服器系統、cpu 架構下載合適版本
wget https://github.com/fatedier/frp/releases/download/v0.54.0/frp_0.54.0_linux_amd64.tar.gz
可選,使用果凍代理下載
wget https://get.66a.vip/https://github.com/fatedier/frp/releases/download/v0.54.0/frp_0.54.0_linux_amd64.tar.gz
安裝#
1. 解壓#
tar -zvxf frp_0.54.0_linux_amd64.tar.gz
2. 複製可執行文件到 /usr/bin/
#
sudo cp frp_0.54.0_linux_amd64/frps /usr/bin/
3. 配置 frps
#
sudo mkdir -p /etc/frp
創建 /etc/frp/frps.toml
文件
sudo vim /etc/frp/frps.toml
按需填寫如下內容
bindAddr = "0.0.0.0"
bindPort = 7000 # 綁定端口
kcpBindPort = 7001 # kcp綁定端口,按使用需求可選配置
quicBindPort = 7002 # quic綁定端口,按使用需求可選配置
vhostHTTPPort = 8080 # 虛擬http端口,按使用需求可選配置
vhostHTTPSPort = 8443 # 虛擬https端口,按使用需求可選配置
# 允許穿透服務映射的遠端伺服器端口範圍
allowPorts = [ { start = 50000, end = 60000 } ]
auth.method = "token"
auth.token = "xxx" # 自定義授權token,客戶端提供正確token才能穿透
webServer.addr = "0.0.0.0"
webServer.port = 7500
# dashboard 用戶名密碼,可選,默認為空
webServer.user = "xxx" # 修改此項
webServer.password = "xxx" # 修改此項
4. 添加到 systemd
服務#
新建 frps.service
文件
sudo vim /lib/systemd/system/frps.service
根據實際情況填寫如下參考內容
[Unit]
# 服務名稱,可自定義
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
Restart=on-failure
RestartSec=5s
# 啟動frps的命令,需修改為您的frps的安裝路徑
ExecStart = /usr/bin/frps -c /etc/frp/frps.toml
[Install]
WantedBy = multi-user.target
更新 systemd
服務列表
sudo systemctl daemon-reload
啟動 frps
服務
sudo systemctl start frps
配置開機自啟
sudo systemctl enable frps
查看 frps
運行狀態
sudo systemctl status frps
至此,frps
服務端部署完成。