frp-p2p配置说明
标准的配置文件
访问者、被访问者都修改frpc.ini,中间的媒婆服务器修改frps.ini,其中的c就是client客户端,s指server服务器。
被访问者:frpc.ini
[common]
# 这里是客户端配置,server_addr后写本客户端要连接的服务器的IP地址,默认是0.0.0.0
server_addr = 服务器IP
server_port = 7000
# 鉴权使用的 token 值,可以自定义
token = abc123123
# 启用 TLS 协议加密连接
tls_enable = true
[rdp]
type = stcp
# 这部分是代理配置,将type改为stcp类型的代理
# sk是密钥,可以自定义。服务端和访问端的密钥需要一致,访问端才能访问到服务端
sk = abcd1234
# 不需要写远端端口(remote_port),因为代理的是本地的3389端口
local_ip = 127.0.0.1
local_port = 3389
服务器:frps.ini
[common]
# 服务端监听地址,0.0.0.0代表此时服务器监听所有发来请求的客户端的IP
bind_addr = 0.0.0.0
bind_port = 7000
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = 这里写自己的仪表板admin账户的密码
token = 123456
tcp_mux = true
# 日志文件地址
log_file = /root/frp/log/frps.log
# 日志等级,分为trace, debug, info, warn, error
log_level = info
# 日志文件保留天数,我保留5天
log_max_days = 5
访问者:frpc.ini
[common]
server_addr = 服务器的公网IP地址
server_port = 服务器暴露给公网的端口,建议数值尽量大些的非知名端口
# token需要和服务端设置一样的值才能鉴权通过
token = abc123123
# 启用 TLS 协议加密连接
tls_enable = true
[rdp_visitor]
type = stcp
# 角色,server是服务端,visitor表示访问端。默认值是server,所以前面的服务器配置可没这一行
role = visitor
# 要访问的 stcp 代理的名字
server_name = rdp
sk = abcd1234
# 注意sk 要一致,访问者和被访问者的密钥一致,访问者才能和被访问者建立连接
# 绑定本地端口用于访问 远程桌面 服务,这里理解为访问者作为客户端,访问被访问者(目的服务器,不是中间的代理服务器)
bind_addr = 127.0.0.1
bind_port = 9090
个人配置文件
被访问者:frpc.ini
[common]
# 这里是客户端配置,server_addr后写本客户端要连接的服务器(服务端)的IP地址,默认是0.0.0.0
server_addr = 服务器ip地址(公网ip地址)
server_port = 7000
authentication_method = token
# 鉴权使用的 token 值,可以自定义
token = abc123123
# mstsc直接输入公网的IP和端口就能远程
[rdp]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
# 远程端口
remote_port = 7002
[p2p_rdp]
# 这部分是代理配置,将type改为stcp类型的代理
type = stcp
# sk是密钥,可以自定义。服务端和访问端的密钥需要一致,访问端才能访问到服务端
sk = cue121212
# 不需要写远端端口(remote_port),因为代理的是本地的3389端口
local_ip = 127.0.0.1
local_port = 3389
# 启用后该代理和服务端之间的通信内容都会被加密传输
use_encryption = false
use_compression = false
[p2p_rdp_xtcp]
type = xtcp
sk = cue121212
local_ip = 127.0.0.1
local_port = 3389
# 启用后该代理和服务端之间的通信内容都会被加密传输
use_encryption = false
use_compression = false
mstsc表示远程桌面的命令行指令_mstsc_,原来它的意思是Microsoft Terminal Server Connection微软终端服务器连接的缩写。
服务器:frps.ini
[common]
# 服务端监听地址,0.0.0.0代表此时服务器监听所有发来请求的客户端的IP
# 还可以写127.0.0.1
binf_addr = 0.0.0.0
# 服务端端口
bind_port = 7000
bind_udp_port = 7000
authentication_method = token
# 认证Token的值包含字母大小写数字等
token = abc123123
# 可视化面板
# 面板用户名
dashboard_user = admin
# 这里写自己的面板板admin账户的密码
dashboard_pwd = 123456
# 面板端口
dashboard_port = 7500
# 超时时间为秒,如果没有报错,可以不设置
heartbeat_timeout = 90
user_conn_timeout = 60
vhost_http_timeout = 90
tcp_mux = true
# 日志文件地址
log_file = /root/frp/log/frps.log
# 日志等级,分为trace, debug, info, warn, error
log_level = info
# 日志文件保留天数,我保留5天
log_max_days = 5
访问者:frpc.ini
[common]
# 服务器的公网IP地址
server_addr = 服务器ip地址(公网ip地址)
# 服务器暴露给公网的端口,建议数值尽量大些的非知名端口
server_port = 7000
authentication_method = token
# token需要和服务端设置一样的值才能鉴权通过
token = abc123123
[p2p_rdp_visitor]
# 角色:server是服务端,visitor表示访问端。默认值是server,所以前面的服务器配置可没这一行
role = visitor
type = stcp
# 要访问的 stcp 代理的名字
server_name = p2p_rdp
# 注意sk 要一致,访问者和被访问者的密钥一致,访问者才能和被访问者建立连接
sk = cue121212
# 绑定本地端口用于访问 远程桌面 服务,这里理解为访问者作为客户端,访问被访问者(目的服务器,不是中间的代理服务器)
bind_addr = 127.0.0.1
bind_port = 9090
# 启用后该代理和服务端之间的通信内容都会被加密传输
use_encryption = false
use_compression = false
[p2p_rdp_visitor2]
# 角色:server是服务端,visitor表示访问端。默认值是server,所以前面的服务器配置可没这一行
role = visitor
type = xtcp
# 要访问的 stcp 代理的名字
server_name = p2p_rdp_xtcp
# 注意sk 要一致,访问者和被访问者的密钥一致,访问者才能和被访问者建立连接
sk = cue121212
# 绑定本地端口用于访问 远程桌面 服务,这里理解为访问者作为客户端,访问被访问者(目的服务器,不是中间的代理服务器)
bind_addr = 127.0.0.1
bind_port = 9091
# 启用后该代理和服务端之间的通信内容都会被加密传输
use_encryption = false
use_compression = false
win客户端后台运行及开机自启
frpc运行时始终有一个命令行窗口运行在前台,影响美观,我们可以使用一个批处理文件来将其运行在后台,而且可以双击执行,每次打开frpc不用再自己输命令了。
在任何一个目录下新建一个文本文件并将其重命名为“frpc.bat”,编辑,粘贴如下内容并保存。
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&
:begin
REM
cd C:\frp
frpc -c frpc.ini
exit
将cd后的路径更改为你的frpc实际存放的目录。
之后直接运行这个 .bat 文件即可启动frpc并隐藏窗口(可在任务管理器中退出)。
至于开机启动,把这个 .bat 文件直接扔进Windows的开机启动文件夹就好了 😃
至此,客户端配置完成,之后就是你自己根据需要在frpc.ini后追加规则即可。
强烈建议你在使用frp直接测试内网穿透前,先在局域网内测试好相关功能的正常使用,并配置好可能会影响的Windows防火墙等内容,在内网调试通过后再使用frp进行内网穿透测试。
windows开机自启动bat文件: https://www.cnblogs.com/shengruxiahuaya/p/17150459.html
开机自启可以参考:https://www.vuar.cn/index.php/archives/74/
附件
参考:https://zhuanlan.zhihu.com/p/575316935