项目简介
FRP(Fast Reverse Proxy)是一个高性能的反向代理应用,主要用于内网穿透。它允许用户通过公共网络访问位于私有网络中的服务。FRP 的主要特点包括:
- 高效性:FRP 采用了高效的网络协议和数据传输机制,能够处理大量并发连接。
- 灵活的配置:支持多种代理模式,包括 TCP、UDP 和 HTTP,用户可以根据需求灵活配置。
- 跨平台支持:FRP 可以在多种操作系统上运行,如 Windows、Linux 和 macOS。
- 安全性:FRP 支持 SSL 加密,可以确保数据传输的安全性。
- 简易的使用:FRP 提供了简单易用的命令行工具和配置文件,使用户能够快速上手。
- 可扩展性:用户可以根据具体需求自定义和扩展 FRP 的功能。
FRP 适用于需要远程访问内网服务的场景,比如远程桌面、数据库访问和开发测试环境等。
简单来说,比如你家里有台服务器且没有公网IP。你在学校或者公司想要访问服务器,由于没有公网,你是访问不了的。
实现内网穿透,必须要有一台有公网IP的服务器。比如各大厂商的云服务器等等。这台服务器就称之为代理服务器(Proxy Server)。
1.搭建环境
-
服务器:这边使用的是莱卡云国内服务器,服务器配置没有要求,最低配即可。
-
系统:CentOS 7.9
2. frp官网了解更多
https://gofrp.org
3.服务端(含有公网IP服务器)
3.1本地下载
下载地址:https://github.com/fatedier/frp/releases
根据你环境下载,这边使用的是Linux系统,所以下载frp_0.60.0_linux_amd64的版本。
3.2上传服务器并解压
#打开/usr/local路径文件夹cd /usr/local
#创建frp文件夹,并且进入mkdir frp && cd frp
把刚刚下载的FRP压缩包上传安装包到/usr/local/frp目录
#解压frp_0.60.0_linux_amd64 (4).tar.gz文件,并打开frp_0.60.0_linux_amd64
tar -zxvf 'frp_0.60.0_linux_amd64 (4).tar.gz' && cd 'frp_0.60.0_linux_amd64'
3.3配置
#编辑frps配置文件vi frps.toml
进入frps.toml之后按a进入编辑模式,粘贴以下内容
# 客户端与服务连接端口bindPort = 7000# 客户端连接服务端时认证的密码auth.token = "abcjc"# http协议监听端口vhostHTTPPort = 28080# web界面配置webServer.addr = "0.0.0.0"webServer.port = 7500webServer.user = "admin"webServer.password = "admin"
粘贴完之后保存编辑文件,按shift + :之后 输入wq(强制保存退出)
3.4运行frps服务
创建 frps.service 文件
使用文本编辑器 (如 vi) 在 /etc/systemd/system 目录下创建一个 frps.service 文件,用于配置 frps 服务。
为什么?是为了用户自定义和修改服务提供的专用目录。你可以在这里添加或修改服务,而不影响系统自带的服务。
#编辑/etc/systemd/system/frps.service文件sudo vi /etc/systemd/system/frps.service
进入frps.service之后按a进入编辑模式,粘贴以下内容
[Unit]Description=frp serverAfter=network.target syslog.targetWants=network.target[Service]Type=simpleExecStart=/usr/local/frp/frp_0.60.0_linux_amd64/frps -c /usr/local/frp/frp_0.60.0_linux_amd64/frps.toml[Install]WantedBy=multi-user.target
粘贴完之后保存编辑文件,按shift + :之后 输入wq(强制保存退出)
#检查frp配置文件是否正确sudo systemctl status frps.service
3.5 systemd 命令管理 frps 服务
# 启动frpsudo systemctl start frps# 停止frpsudo systemctl stop frps# 重启frpsudo systemctl restart frps #设置开机自启 sudo systemctl enable frps
4.客户端(没有公网IP的)
4.1 下载客户端,以下为下载地址,我下载的是frp_0.60.0_windows_amd64.zip
https://github.com/fatedier/frp/releases
4.2本地解压下载的压缩包

4.3配置
编辑frps配置文件frpc.toml

写入内容并保存
serverAddr = "服务器的公网IP"serverPort = 7000auth.token = "abcjc"
#HTTP的配置[[proxies]]name = "blog"type = "http"localIP = "127.0.0.1"localPort = 8080customDomains = ["abcj.cn"]
#TCP的配置[[proxies]]name = "rdp"type = "tcp"localIP = "127.0.0.1"localPort = 3389remotePort = 23389











