1 Frp介绍

frp 是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持 tcp, udp, http, https等协议。

frp 项目官网

frp工作原理

  • 服务端运行,监听一个主端口,等待客户端的连接;
  • 客户端连接到服务端的主端口,同时告诉服务端要监听的端口和转发类型;
  • 服务端fork新的进程监听客户端指定的端口;
  • 外网用户连接到客户端指定的端口,服务端通过和客户端的连接将数据转发到客户端;
  • 客户端进程再将数据转发到本地服务,从而实现内网对外暴露服务的能力。

2 配置教程

想要配置frp穿透,首先必须先要有一台具有公网ip的服务器。

配置教程主要分为两个部分,一是服务器端的配置;二是客户端配置。

1.服务器端配置

下载frp包

image-20220518203359861

解压

image-20220518203914000

修改frps.ini

# frps.ini
[common]
# frp监听的端口,默认是7000,可以改成其他的
bind_port = 7000
# 授权码,请改成更复杂的
token = 52010  # 这个token之后在客户端会用到

# frp管理后台端口,请按自己需求更改
dashboard_port = 7500
# frp管理后台用户名和密码,请改成自己的
dashboard_user = admin
dashboard_pwd = admin
enable_prometheus = true

# frp日志配置
log_file = /var/log/frps.log
log_level = info
log_max_days = 3

设置和启动frp服务

sudo mkdir -p /etc/frp
sudo cp frps.ini /etc/frp
sudo cp frps /usr/bin
sudo cp systemd/frps.service /usr/lib/systemd/system/
sudo systemctl enable frps
sudo systemctl start frps

如果上述命令依次执行完没有任何错误出现,则说明启动成功。

防火墙开放端口

添加监听端口

sudo firewall-cmd --permanent --add-port=7000/tcp
添加管理后台端口
sudo firewall-cmd --permanent --add-port=7500/tcp
sudo firewall-cmd --reload

2.客户端配置(以Docker为例)

不使用docker方式见如何在群晖NAS中使用frp进行内网穿透

修改frpc.ini

# frpc.ini
[common]
server_addr = 服务器ip
server_port = 7000
token = 52010


[test]
type = tcp
local_ip = 192.168.123.90
local_port = 5555
remote_port = 5555

1、点进file station 在docker文件夹下创建frp文件夹,然后把编辑好的frpc.ini上传上去

image-20220519112821188

2、注册表下载chenhw/frp

image-20220519112903484

3、在docker映像里双击打开刚刚下载好的映像。

image-20220519112844287

4、高级设置自动启动打√,设置卷、网络、环境

image-20220519112501326

image-20220519112626509

image-20220519112531298

image-20220519112736386

3 参考

frp官网

超简单的docker设置frp内网穿透

如何在群晖NAS中使用frp进行内网穿透

使用frp配置内网访问(穿透)教程

Frp内网穿透,远程办公,奶妈级教程

最后修改:2022 年 05 月 19 日
如果觉得我的文章对你有用,请随意赞赏