frp无域名配置内网穿透
使用场景: 将本地http服务暴露在公网上
需要准备: frp (本次使用版本v0.37.0) 和 公网ip云服务器
frp 分为服务端和客户端 我们首先在服务器上下载相应版本的frp软件包
# 以下操作在服务器上进行
# 1.下载 linux 平台 frp
$ wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz
# 2.解包解压 frp
$ tar -zxvf frp_0.37.0_linux_amd64.tar.gz
# 3.编辑配置文件 frps.ini (该配置有默认值, 若和以下相同则不更改)
$ vi frp_0.37.0_linux_amd64/frps.ini
[common]
bind_port = 7000
# 4.启动服务端frp (以下命令是在frp文件目录下执行的)
$ frps -c frps.ini
# 5.启动成功可以看到如下信息
frps uses config file: frp_0.37.0_linux_amd64/frps.ini
frps tcp listen on 0.0.0.0:7000
frps started successfully
# 若需要后台运行
$ nohup ./frps -c ./frps.ini &
# 查看进程
$ ps aux | grep frps
# 上面设置云服务器暴露端口为7000 可能需要在云服务器管理平台页面 配置防火墙 放行端口
以上为frp服务端的配置,其实只用下载执行默认配置就行. 接下来我们在本地(我的是windows) 进行frp的客户端配置
# 1.下载 windows 平台 frp 尽量保持与服务端版本一致
# 2.解压 frp
# 3.假设我们本地服务为 http://127.0.0.1:88/test 我们要向公网暴露服务 通过 [公网ip + 端口] 访问服务
# 4.编辑配置文件 frpc.ini
[common]
server_addr = xxx.xxx.xxx.xxx # 对应 服务端frp所在的服务器公网ip
server_port = 7000 # 对应 服务端frp 的 bind_port
[web] # 自定义项目名
type = tcp
local_ip = 127.0.0.1 # 映射本地ip 若为127.0.0.1可省略
local_port = 88 # 映射本地端口
remote_port = 8000 # 随意填写 需通过 公网ip + 此端口访问服务
# 4.启动客户端frp (以下命令是在frp文件目录下执行的)
$ frpc.exe -c frpc.ini
# 5.启动成功可以看到如下信息
start proxy success
# 通过[公网ip + 端口] http://xxx.xxx.xxx.xxx:8000/test 即可访问本地服务