frp配置
[common]
server_addr =discover.zhonjin.com
#8.210.227.192
#(上面配置frps的主机的公网ip)
server_port = 9443
#(上面的bind_port填哪个这里就填哪个)
token = Z8Rpj2uqTvJyqBDe
#(与上面token保持一致)
pool_count = 50
#项目名称、安装位置、映射设备名称、通信协议、设备英文名、远程端口号,本地端口,
供参考配置方便维护
一、参考1 frpc.ini配置
[南汇七标_东北配电箱G1_路由器_http_router_30091_80]
type = tcp
local_ip = 192.168.12.1
local_port = 80
remote_port = 30091
[南汇七标_东北配电箱G1_录像机_http_recorder_30092_80]
type =tcp
local_ip = 192.168.12.100
local_port = 80
remote_port = 30092
[南汇七标_东北配电箱G1_手机app_tcp_recorder_30081_8000]
type = tcp
#填写客户端机器要被代理的网络内的IP 填写127.0.0.1就代表本机(路由器)
local_ip = 192.168.12.199
# 要访问的端口号
local_port =8000
# 远程代理端口号
remote_port = 30081
二、参考2 frpc.ini配置
#1、映射到路由器
[332_马总D.app.frp_路由器_http_300201_80]
type = tcp
local_ip = 192.168.1.1
local_port = 80
remote_port = 30201
#2、映射到录像机
[332_马总D.app.frp_录像机_http_300202_80]
type =tcp
local_ip = 192.168.1.46
local_port = 80
remote_port = 30202
#3、映射到手机app
[332_马总D.app.frp_手机app_tcp_300200_8000]
type = tcp
#填写客户端机器要被代理的网络内的IP 填写127.0.0.1就代表本机(路由器)
local_ip = 192.168.1.46
# 要访问的端口号
local_port =8000
# 远程代理端口号
remote_port = 30200
参考frp配置说明
#打开frpc配置文件
vim /usr/frp/frpc.ini
参考说明,进行配置
#frps服务端地址
参考说明,进行配置
#frps服务端地址
server_addr = xxx.xxx.xxx.xxx
#frps服务端通讯端口,客户端连接到服务端内网穿透传输数据的端口
server_port = 7000
#特权模式密钥,客户端连接到FRPS服务端的验证密钥
privilege_token = JKSDF@341OKQ
#日志存放路径
log_file = frpc.log
#日志记录类别,可选:trace, debug, info, warn, error
log_level = info
#日志保存天数
log_max_days = 7
#设置为false,frpc连接frps失败后重连,默认为true不重连
login_fail_exit = false
#如连接报错,则去掉
#KCP协议在弱网环境下传输效率提升明显,但是对frps会有一些额外的流量消耗。服务端须先设置kcp_bind_port = 7000,freenat.bid服务端已设置支持
#protocol = kcp
[http_dsm]
#穿透服务名称,不能和其他已建立的相同,使用公共服务器的建议修改成复杂一点的名称,避免与其他人冲突,很多路由器内置frpc的默认服务名
称为[web],很容易很其他人冲突
#穿透协议类型,可选:tcp,udp,http,https,stcp,xtcp,这个设置之前必须自行搞清楚应该是什么
type = http
#本地监听IP,可以是本机IP,也可以是本地的局域网内某IP,例如你的局域网是互通的,你可以在路由器上安装frpc,然后local_ip填的群晖的ip,这样也可以把群晖穿透出去
local_ip = 192.168.1.2
#本地监听端口,通常有ssh端口22,远程桌面3389等等
local_port = 5000
#对传输内容进行压缩,可以有效减小 frpc 与 frps 之间的网络流量,加快流量转发速度,但是会额外消耗一些 cpu 资源
use_compression = true
#将 frpc 与 frps 之间的通信内容加密传输
use_encryption = true
#自定义域名访问穿透服务,一般域名设置了二级域名泛解析以后,这里填*.freenat.bid即可,*自定义,如果不想用域名或者自行搭建frps没有域名,则穿透协议类型选择tcp,见以下tcp部分详解
custom_domains = dsm.freenat.bid
配置systemctl进行开机启动
创建frpc.service服务
[Unit]
Description=Frp Client Service
After=network.target
[Service]
Type=simple
User=nobody
# 下面两行设定了再开机后10秒再启动服务
TimeoutStartSec=infinity
ExecStartPre=/bin/sleep 10
Restart=on-failure
RestartSec=10s
#ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini
#ExecReload=/usr/bin/frpc reload -c /etc/frp/frpc.ini
ExecStart=/usr/local/frps/frpc -c /usr/local/frps/frpc.ini
ExecReload=/usr/local/frps/frpc -c /usr/local/frps/frpc.ini
LimitNOFILE=1048576
[Install]
WantedBy=multi-user.target
再打开自启动
sudo systemctl enable frps
同时 重启
sudo systemctl restart frps
停止
sudo systemctl stop frps
查看应用日志 sudo systemctl status frps
客户端自启动配置类似。
https://www.jianshu.com/p/b64f268dddc9
来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Windows frp设置开机自启的几种方法
https://www.tufei.site/archives/45/
三、通过自定义域名访问内网的 Web 服务
https://gofrp.org/zh-cn/docs/examples/vhost-http/
通过自定义域名访问内网的 Web 服务
frp
HTTP 类型的代理非常适合将内网的 Web 服务通过自定义域名提供给外部用户。相比于 TCP 类型代理,HTTP 代理不仅可以复用端口,还提供了基于 HTTP 协议的许多功能。
HTTPS 与此类似,但是需要注意,frp 的 https 代理需要本地服务是 HTTPS 服务,frps 端不会做 TLS 终止。也可以结合 https2http 插件来实现将本地的 HTTP 服务以 HTTPS 协议暴露出去。
步骤
-
配置 frps.toml
在 frps.toml 文件中添加以下内容,以指定 HTTP 请求的监听端口为 8080:
bindPort = 7000 vhostHTTPPort = 8080如果需要配置 HTTPS 代理,还需要设置
vhostHTTPSPort。 -
配置 frpc.toml
在 frpc.toml 文件中添加以下内容,确保设置了正确的服务器 IP 地址、本地 Web 服务监听端口和自定义域名:
serverAddr = "x.x.x.x" serverPort = 7000 [[proxies]] name = "web" type = "http" localPort = 80 customDomains = ["www.yourdomain.com"] [[proxies]] name = "web2" type = "http" localPort = 8080 customDomains = ["www.yourdomain2.com"] -
启动 frps 和 frpc
-
域名解析
将
www.yourdomain.com和www.yourdomain2.com的域名 A 记录解析到服务器的 IP 地址x.x.x.x。如果服务器已经有对应的域名,您还可以将 CNAME 记录解析到原始域名。另外,通过修改 HTTP 请求的 Host 字段也可以实现相同的效果。 -
通过浏览器访问
使用浏览器访问
http://www.yourdomain.com:8080即可访问内网机器上的 80 端口服务,访问http://www.yourdomain2.com:8080可以访问内网机器上的 8080 端口服务。
自适应IP