目录
一、frp用途
使处于内网或防火墙后的设备对外界提供服务,且支持HTTP、TCP、UDP等众多协议,如通过外网访问内网web服务、通过ssh访问内网主机等。
二、准备工作
1. 实现功能
通过自有域名访问内网主机上的web服务
2. 配置准备
- 具有公网IP的服务器一台(阿里云Centos 8)
- 访问目标设备(Windows10内网主机一台)
- 公网服务器绑定域名一个
三、frp安装配置
1. frp服务端配置(公网服务器)
- frp安装
# 下载(版本-v0.37.0)
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz
# 解压
tar -zxvf frp_0.37.0_linux_amd64.tar.gz
# 安装(复制到home目录下,自定义安装目录)
cp -r frp_0.37.0_linux_amd64 /home/frp_0.37.0
# 删除客户端相关文件
rm frpc
rm frpc.ini
rm frpc_full.ini
- frps配置(修改frps.ini文件)
[common]
bind_port = 7000 # 与客户端绑定的进行通信的端口
vhost_http_port = 10000 # 访问客户端web服务自定义的端口号
- 后台启动
nohup ./frps -c frps.ini &
输出如下内容即为启动成功
nohup: ignoring input and appending output to 'nohup.out'
2. frp客户端配置(内网主机)
- frp安装
下载 frp_0.37.0_windows_amd64.zip 压缩包,解压至内网主机自定义目录,删除服务端相关文件(frps.exe 、frps.ini 、frps_full.ini)
- frpc配置(修改frpc.ini文件)
[common]
server_addr = x.x.x.x # 公网服务器IP
server_port = 7000 # 公网服务器配置绑定客户端的端口
[web]
type = http
local_port = 80 # 内网主机web服务端口
custom_domains = frp.test.com # 公网服务器绑定域名
- 配置为Windows服务并启动
安装nssm,cmd至nssm安装目录,运行
nssm install frpc
执行后弹出弹框,分别输入frpc可执行程序路径和参数,然后安装服务
安装成功后打开Windows服务列表,找到frpc服务运行即可
四、访问
通过域名+公网服务器配置的端口即可访问内网主机上的web服务:
frp.test.com:10000