frp 是一個專注于內(nèi)網(wǎng)穿透的高性能的反向代理應(yīng)用,支持 TCP、UDP摘能、HTTP站刑、HTTPS 等多種協(xié)議另伍。可以將內(nèi)網(wǎng)服務(wù)以安全绞旅、便捷的方式通過具有公網(wǎng) IP 節(jié)點的中轉(zhuǎn)暴露到公網(wǎng)摆尝。
這里簡單記錄其客戶端及服務(wù)端的配置方法。
- github:https://github.com/fatedier/frp
- document:https://gofrp.org/docs/
一因悲、frp 服務(wù)端
下載
目前可以在 Github 的 Release 頁面中下載到最新版本的客戶端和服務(wù)端二進(jìn)制文件堕汞,所有文件被打包在一個壓縮包中。
部署
解壓縮下載的壓縮包晃琳,將其中的 frpc 拷貝到內(nèi)網(wǎng)服務(wù)所在的機(jī)器上讯检,將 frps 拷貝到具有公網(wǎng) IP 的機(jī)器上,放置在任意目錄卫旱。
開始使用人灼!
編寫配置文件,先通過 ./frps -c ./frps.ini
啟動服務(wù)端顾翼,再通過 ./frpc -c ./frpc.ini
啟動客戶端投放。如果需要在后臺長期運行,建議結(jié)合其他工具使用暴构,例如 systemd
和 supervisor
跪呈。
# 前臺啟動
./frpc -c ./frpc.ini
# 后臺啟動命令
nohup ./frpc -c ./frpc.ini &
frps.ini
配置文件類比:
[common]
bind_port = 17000 # 服務(wù)監(jiān)聽端口
bind_addr = 0.0.0.0 # 監(jiān)聽IP
token = 123456 # 密鑰
dashboard_port = 17001 # web面板
dashboard_user = admin # 面板用戶名
dashboard_pwd = admin # 面板密碼
subdomain_host = *.your_doming.com # WEB訪問域名綁定(綁定后只能綁定子域名訪問)
vhost_http_port = 10000 # web服務(wù)http端口
vhost_https_port = 10001 # web服務(wù)https端口
# 注:以上配置根據(jù)需求設(shè)置,最簡單的配置只需要前兩行取逾,既僅配置服務(wù)監(jiān)聽端口耗绿,其余按需配置。
使用 systemctl 來控制啟動
sudo vim /lib/systemd/system/frps.service
服務(wù)內(nèi)容:
[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#啟動服務(wù)的命令(此處寫你的frps的實際安裝目錄)
ExecStart=/your/path/frps -c /your/path/frps.ini
[Install]
WantedBy=multi-user.target
使用方法:
# 啟動frps
sudo systemctl start frps
# 自啟動
sudo systemctl enable frps
# 重啟應(yīng)用
sudo systemctl restart frps
# 停止應(yīng)用
sudo systemctl stop frps
# 查看應(yīng)用的日志
sudo systemctl status frps
有一些網(wǎng)站會免費提供 frp 服務(wù)砾隅,比如:https://www.ioiox.com/frp.html
二误阻、frp 客戶端
配置文件:
[common]
server_addr = free.frp.ioiox.com # 服務(wù)器IP或者地址
server_port = 7007 # 服務(wù)器提供的端口號
token = www.ioiox.com # 服務(wù)器提供的token
[web1] # 為避免錯誤,一定需更改為比較特殊的名稱,不能和服務(wù)器端其他配置重名.
type = http # http協(xié)議
local_ip = 127.0.0.1 # 127.0.0.1指穿透本機(jī),也可以填寫內(nèi)網(wǎng)IP.
local_port = 5000 # 群暉內(nèi)網(wǎng)HTTP端口,默認(rèn)為5000.
custom_domains = nas.ioiox.com # 填寫你的域名
[web2] # 為避免錯誤,一定需更改為比較特殊的名稱,不能和服務(wù)器端其他配置重名.
type = https # https協(xié)議
local_ip = 127.0.0.1 # 127.0.0.1指穿透本機(jī),也可以填寫內(nèi)網(wǎng)IP.
local_port = 5001 # 群暉內(nèi)網(wǎng)HTTPS端口,默認(rèn)為5001.
custom_domains = nas.ioiox.com # 填寫你的域名
[OpenVpn]
type = udp # 協(xié)議
local_ip = 192.168.123.142 # 127.0.0.1指穿透本機(jī),也可以填寫內(nèi)網(wǎng)IP.
local_port = 1194 # 內(nèi)網(wǎng)端口
remote_port = 11194 # 遠(yuǎn)程連接端口
啟動方法及安裝方法類比服務(wù)端配置。
參考文獻(xiàn)
- Frp 官方文檔:https://gofrp.org/
- 十分鐘教你配置 frp 實現(xiàn)內(nèi)網(wǎng)穿透:https://blog.csdn.net/u013144287/article/details/78589643
- Frp 后臺自動啟動的幾個方法:https://blog.csdn.net/x7418520/article/details/81077652
- 群暉 NAS 使用 Docker 安裝配置 frpc 內(nèi)網(wǎng)穿透教程:https://www.ioiox.com/archives/26.html