frp配置全解析


GitHub地址

GitHub - frp

frps.ini

[common]

# bind_addr為0.0.0.0含義就是服務端服務器上的所有IP都可以監聽外部連接請求
# 如果需要配置單個就將服務器的某一個公網IP寫在bind_addr
bind_addr = 0.0.0.0
bind_port = 7000

# 可以使用nat打洞,進行點對點的連接,這時候數據通信不僅過frp服務端
bind_udp_port = 7001

# 可以使用底層通信端口為kcp
kcp_bind_port = 7000

# 考慮到這個場景:內網的的數據庫是個備庫,frps這邊要把本地的數據庫備份到內網機器上,在此使用proxy_bind_addr = 127.0.0.1 就可以達到這個效果,還很安全
proxy_bind_addr = 127.0.0.1

# 域名訪問內網的web服務,需要將域名解析到服務器,A記錄或者CNAME記錄
vhost_http_port = 80
vhost_https_port = 443

# http相應超時,默認60s
vhost_http_timeout = 60

# frpweb統計界面
dashboard_addr = 0.0.0.0
dashboard_port = 7500

# web統計界面認證信息
dashboard_user = admin
dashboard_pwd = admin

# frp服務端日志文件
log_file = ./frps.log

# 日志等級 trace, debug, info, warn, error
log_level = info

# 日志保留天數
log_max_days = 3

# frp服務端和客戶端通過bind_port端口進行認證的token,服務端和客戶端都要一直
token = 12345678

# 服務器上可以用映射的端口
allow_ports = 2000-3000,3001,3003,4000-50000


# 默認情況下:當用戶請求建立連接后,frps 才會請求 frpc 主動與后端服務建立一個連接 
# 如果由大量短連接的情況呢,是不是很和耗時?因此,該字段會在和frp客戶端連接后,主動建立max_pool_count個連接,當有用戶來訪問業務的是時候就會從該連接池內取出連接來用,使用於大量短連接的情況
max_pool_count = 5

# 限制frpc使用服務端端口的數量。0為不限制
max_ports_per_client = 0

# 該功能需要泛解析,即把*.frps.com A記錄到frps在的服務器上,然后frpc就可以只配置subdomain = test 就可以使用 test.frps.com來使用,多人使用很方便
subdomain_host = frps.com

# 啟動tcp多路復用
tcp_mux = true

frpc.ini

[common]
# 和frps底層通信的信息,和bind_addr = 0.0.0.0 bind_port = 7000 保持一致
server_addr = 0.0.0.0
server_port = 7000

# frpc通過代理去連接frps。http或socks5代理方式
# http_proxy = http://user:passwd@192.168.1.128:8080
http_proxy = socks5://user:passwd@192.168.1.128:1080

# 日志文件
log_file = ./frpc.log

# 日志等級 trace, debug, info, warn, error
log_level = info

# 日志最大保留天數
log_max_days = 3

# 和frps底層通信認證token和frps一致
token = 12345678

# 熱加載frpc配置使用 frpc reload -c ./frpc.ini
admin_addr = 127.0.0.1
admin_port = 7400
admin_user = admin
admin_pwd = admin

# 和frps剛開始通信時建立的連接數量
pool_count = 5

# 開啟tcp多路復用 和frps一致
tcp_mux = true

# 加入frpc標識,下面的模塊使用 如 your_name.ssh
user = your_name

# frpc和frps登陸失敗后是否繼續持續登陸
login_fail_exit = true

# 和frps通信的底層協議 tcp kcp websocket,  默認是 tcp
protocol = tcp

# frpc使用的dns服務器
# dns_server = 8.8.8.8

# frpc中啟動的代理模塊,模式都啟動
# start = ssh,dns

# ssh代理模塊
[ssh]
...
...

# dns代理模塊
[dns]
...
...

demo

[common]
token = {{ .Envs.FRP_SERVER_TOKEN }}
server_addr = {{ .Envs.FRP_SERVER_ADDR }}
server_port = {{ .Envs.FRP_SERVER_PORT }}

admin_addr = 0.0.0.0
admin_port = 7400
admin_user = admin
admin_pwd = admin

[name]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = {{ .Envs.FRP_SSH_REMOTE_PORT }}
use_encryption = true


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM