下载地址:https://github.com/fatedier/frp/releases
参考地址:https://github.com/fatedier/frp/blob/master/README_zh.md
服务端配置
# [common] is integral section
[common]
# A literal address or host name for IPv6 must be enclosed
# in square brackets, as in "[::1]:80", "[ipv6-host]:http" or "[ipv6-host%zone]:80"
bind_addr = 0.0.0.0
bind_port = 7000
# if you want to support virtual host, you must set the http port for listening (optional)
vhost_http_port = 8080
vhost_https_port = 443
# if you want to configure or reload frps by dashboard, dashboard_port must be set
dashboard_port = 7500
# dashboard user and pwd for basic auth protect, if not set, both default value is admin
dashboard_user = admin
dashboard_pwd = admin
# dashboard assets directory(only for debug mode)
# assets_dir = ./static
# console or real logFile path like ./frps.log
log_file = ./frps.log
# debug, info, warn, error
log_level = info
log_max_days = 3
# if you enable privilege mode, frpc can create a proxy without pre-configure in frps when privilege_token is correct
privilege_mode = true
privilege_token = 12345678
# heartbeat configure, it's not recommended to modify the default value
# the default value of heartbeat_timeout is 30
# heartbeat_timeout = 30
# only allow frpc to bind ports you list, if you set nothing, there won't be any limit
privilege_allow_ports = 2000-3000,3001,3003,4000-50000
# pool_count in each proxy will change to max_pool_count if they exceed the maximum value
max_pool_count = 100
# authentication_timeout means the timeout interval (seconds) when the frpc connects frps
# if authentication_timeout is zero, the time is not verified, default is 900s
authentication_timeout = 900
# if subdomain_host is not empty, you can set subdomain when type is http or https in frpc's configure file
# when subdomain is test, the host used by routing is test.frps.com
subdomain_host = frps.com
# ssh is the proxy name, client will use this name and auth_token to connect to server
[ssh]
type = tcp
auth_token = 123
bind_addr = 0.0.0.0
listen_port = 9710
[dns]
type = udp
auth_token = 123
bind_addr = 0.0.0.0
listen_port = 5353
[svn]
# if type equals http, vhost_http_port must be set
type = tcp
auth_token = 123
listen_port=8081
# if proxy type equals http, custom_domains must be set separated by commas
custom_domains = web01.yourdomain.com,web01.yourdomain2.com
#[web02]
# if type equals https, vhost_https_port must be set
#type = https
#auth_token = 123
#custom_domains = web02.yourdomain.com
服务端启动
nohup ./frps -c ./frps.ini &
客户端配置:
# [common] is integral section
[common]
# A literal address or host name for IPv6 must be enclosed
# in square brackets, as in "[::1]:80", "[ipv6-host]:http" or "[ipv6-host%zone]:80"
server_addr = 服务端的公网IP地址
server_port = 7000
# if you want to connect frps by http proxy, you can set http_proxy here or in global environment variables
# http_proxy = http://user:pwd@192.168.1.128:8080
# console or real logFile path like ./frpc.log
log_file = ./frpc.log
# debug, info, warn, error
log_level = info
log_max_days = 3
# for authentication
auth_token = 123
# for privilege mode
privilege_token = 12345678
# heartbeat configure, it's not recommended to modify the default value
# the default value of heartbeat_interval is 10 and heartbeat_timeout is 30
# heartbeat_interval = 10
# heartbeat_timeout = 30
# ssh is the proxy name same as server's configuration
[ssh]
# tcp | http, default is tcp
type = tcp
local_ip = 127.0.0.1
local_port = 9710
# true or false, if true, messages between frps and frpc will be encrypted, default is false
use_encryption = false
# default is false
use_gzip = false
[dns]
type = udp
local_ip = 114.114.114.114
local_port = 53
# Resolve your domain names to [server_addr] so you can use http://web01.yourdomain.com to browse web01 and http://web02.yourdomain.com to browse web02, the domains are set in frps.ini
[svn]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
use_gzip = false
use_encryption = false
# connections will be established in advance, default value is zero
#pool_count = 20
# http username and password are safety certification for http protocol
# if not set, you can access this custom_domains without certification
#http_user = admin
#http_pwd = admin
# if domain for frps is frps.com, then you can access [web01] proxy by URL http://test.frps.com
#subdomain = test
#[web02]
#type = http
#local_ip = 127.0.0.1
#local_port = 8000
#[privilege_ssh]
# if privilege_mode is enabled, this proxy will be created automatically
#privilege_mode = true
#type = tcp
#local_ip = 127.0.0.1
#local_port = 22
#use_encryption = true
#use_gzip = false
#remote_port = 6001
#[privilege_web]
#privilege_mode = true
#type = http
#local_ip = 127.0.0.1
#local_port = 8080
#use_gzip = true
#custom_domains = web03.yourdomain.com
# locations is only useful for http type
#locations = /,/pic
#host_header_rewrite = example.com
#subdomain = dev
客户端启动:
nohup ./frpc -c frpc.ini &
只需要设置[svn]的相应类型以及端口 会自动映射到端口
利用:http://外网ip地址:7500/访问