frp配置

一、frpc.ini配置参数参考

[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

一、配置frpc.ini

参考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服务

二、自启动文件位置
sudo nano /etc/systemd/system/ frpc.service
vi /usr/local/frpc.service
创建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

三、!!!此处直接运行systemctl命令会提示需要重载!!! 于是终端里输入 
systemctl daemon-reload
使用systemctl命令来控制frpc
#启动
sudo systemctl start frpc
#关闭
sudo systemctl stop frpc
#重启
sudo systemctl restart frpc
#查看状态
sudo systemctl status frpc
设置开机自动启动
sudo systemctl enable frpc
linux下FRP常用命令 后台运行frp
#定位至frp文件所在位置
服务端: nohup ./frps -c frps.ini >/dev/null 2>&1 &
客户端: nohup ./frpc -c frpc.ini >/dev/null 2>&1 &
查看frp进程
ps -aux|grep frp| grep -v grep
结束frp进程
kill -9 12345(找到的进程号)
https://cloud.tencent.com/developer/article/2147622
补充:
https://github.com/fatedier/frp/issues/176
现在下载的frp打包文件目录内,已经写好了后台运行启动文件,比如服务器端,只需要把frps.service复制一份到/etc/systemd/system目录下即可。
通过自定义域名访问内网的 Web 服务 | frp (gofrp.org)sudo systemctl start frps

再打开自启动

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 服务。

HTTP 类型的代理非常适合将内网的 Web 服务通过自定义域名提供给外部用户。相比于 TCP 类型代理,HTTP 代理不仅可以复用端口,还提供了基于 HTTP 协议的许多功能。

HTTPS 与此类似,但是需要注意,frp 的 https 代理需要本地服务是 HTTPS 服务,frps 端不会做 TLS 终止。也可以结合 https2http 插件来实现将本地的 HTTP 服务以 HTTPS 协议暴露出去。

步骤

  1. 配置 frps.toml

    在 frps.toml 文件中添加以下内容,以指定 HTTP 请求的监听端口为 8080:

    bindPort = 7000
    vhostHTTPPort = 8080
    

    如果需要配置 HTTPS 代理,还需要设置 vhostHTTPSPort

  2. 配置 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"]
    
  3. 启动 frps 和 frpc

  4. 域名解析

    将 www.yourdomain.com 和 www.yourdomain2.com 的域名 A 记录解析到服务器的 IP 地址 x.x.x.x。如果服务器已经有对应的域名,您还可以将 CNAME 记录解析到原始域名。另外,通过修改 HTTP 请求的 Host 字段也可以实现相同的效果。

  5. 通过浏览器访问

    使用浏览器访问 http://www.yourdomain.com:8080 即可访问内网机器上的 80 端口服务,访问 http://www.yourdomain2.com:8080 可以访问内网机器上的 8080 端口服务。


您可能还喜欢...

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注