以windows遠程協助映射為例,其他服務的配置大同小異,具體請查看github
https://github.com/fatedier/frp
服務端(公網ip)
下載對應平台的程序
wget https://github.com/fatedier/frp/releases/download/v0.24.1/frp_0.24.1_linux_amd64.tar.gz
解壓,修改配置文件
只需要frps,可以把frpc刪掉,然后修改frps.ini文件
[common] bind_port = 7000 log_file = ./frps.log log_level = info disable_log_color = false max_pool_count = 100 log_max_days = 3
隨便弄一個空閑端口和客戶端通信。
啟動服務
./frps -c frps.ini
客戶端
同樣下載對應平台的發布程序,同理可以把frps刪掉,只保留frpc客戶端程序
以遠程協助映射3389端口為例,客戶端的配置文件這樣寫
[common] server_addr = 47.107.86.165 server_port = 7000 [mstsc] type = tcp local_ip = 127.0.0.1 local_port = 3389 remote_port = 7402
用mstsc連公網服務器:7402 即可。
服務器部分配置參數如下:
[common] # binde_addr是指定frp內網穿透服務器端監聽的IP地址,可以省略,默認為127.0.0.1,如果使用IPv6地址的話,必須用方括號包括起來,比如 “[::1]:80”, “[ipv6-host]:http” or “[ipv6-host%zone]:80” bind_addr = 0.0.0.0 # bind_port 是frp內網穿透服務器端監聽的端口,默認是7000 bind_port = 7000 # 下面兩個選項是為了frp內網穿透服務器可以支持虛擬主機的http和https協議,是可選項,如果不需要可以不設置這兩個參數,需要注意的是如果使用虛擬主機的http和https協議,使得多個虛擬主機都通過默認的80或443端口訪問,必須解析域名,否則不同的虛擬主機只能通過不同的端口訪問frp內網穿透服務。 vhost_http_port = 80 vhost_https_port = 443 # 這個是frp內網穿透服務器的web界面的端口,可以通過http://你的ip:7500查看frp內網穿透服務器端的連接情況,和各個frp內網穿透客戶端的連接情況。 dashboard_port = 7500 # 以下是frp內網穿透服務器web界面訪問的用戶名和密碼,根據需要修改即可。 dashboard_user = admin dashboard_pwd = admin # dashboard面板的靜態文件目錄,只用於frp內網穿透服務的debug模式,默認情況下是不啟用的。 # assets_dir = ./static # 日志的輸入方式,如果設置log_file的話日志就輸出到日志文件中保存在硬盤中,需要注意絕對路徑和相對路徑,還要注意Linux系統和Windows系統下 / 和 的區別。 log_file = ./frps.log # 日志的記錄級別,分為debug, info, warn, error四級,日志保存的天數,默認3天 log_level = info log_max_days = 3 # 特權模式,大部分朋友都會用這種模式,因為frp內網穿透的特權模式下,增加客戶端不需要修改服務端的配置文件,非常方便,所有的客戶端配置都在客戶端進行。 privilege_mode = true privilege_token = 12345678 # 心跳配置,默認的心跳配置時間是30 # heartbeat_timeout = 30 #frp內網穿透服務端監聽的端口,如果不設置的話,所有端口都可以連接使用,但為為了不占用系統使用的端口號,建議設置允許的堅挺端口,比如www.chuantou.org提供的內網穿透服務器就是開放50000-60000端口 privilege_allow_ports = 2000-3000,3001,3003,4000-50000 #連接池的數量,如果frp內網穿透客戶端設置的連接池的數量大於下面的數值,就會修改frp客戶端的連接池為下面的數值 max_pool_count = 100 # frp內網穿透服務端frps和frp內網穿透的客戶端frpc兩台電腦的時間差,如果設置為0的話,不校驗時間差異,默認校驗時間差為900秒。 authentication_timeout = 900