目标:让我的VMware虚拟机某个服务拥有自己的外网访问地址
FRP 服务端(公网服务器)配置
1. 下载 FRP
登录公网服务器,执行以下命令下载并解压 FRP:
powershell
# 下载对应版本(以Linux 64位为例)
wget https://github.com/fatedier/frp/releases/download/v0.62.1/frp_0.62.1_linux_amd64.tar.gz
# 解压并进入该目录
tar -zxvf frp_0.62.1_linux_amd64.tar.gz
cd frp_0.62.1_linux_amd64
2. 配置服务端
powershell
vim frps.toml
[common]
bind_port = 7000
dashboard_port = 7500
dashboard_user = "admin"
dashboard_pwd = "admin"
auth_token = "8dF2j5L7k9M0pQ4s7u9x!@#$%^&*"
3. 启动服务端
powershell
# 前台运行(测试阶段)
./frps -c frps.toml
# 后台运行(生产环境)
nohup ./frps -c frps.toml &
4. 开放防火墙端口(以 CentOS 为例)
powershell
firewall-cmd --zone=public --add-port=7000/tcp --permanent
firewall-cmd --zone=public --add-port=7500/tcp --permanent
firewall-cmd --zone=public --add-port=10022/tcp --permanent # HTTP穿透端口
firewall-cmd --reload
FRP 客户端(VMware 虚拟机)配置
1. 下载并解压 FRP
powershell
# 下载对应版本(以Linux 64位为例)
wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz
# 解压
tar -zxvf frp_0.62.1_linux_amd64.tar.gz
cd frp_0.62.1_linux_amd64
2. 配置客户端
powershell
vim frpc.toml
[common]
server_addr = 自己的公网IP地址
server_port = 7000
auth_token = 8dF2j5L7k9M0pQ4s7u9x!@#$%^&*
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 10022
3. 启动服务端
powershell
# 前台运行(测试阶段)
./frpc -c frpc.toml
# 后台运行(生产环境)
nohup ./frpc -c frpc.toml &
测试验证
1、ssh测试连接正常
指定的公网IP,端口是指定10022,连接ssh服务
2、网页端测试连接正常
浏览器访问指定公网IP:7500,输入账号密码(账号密码设置的都是admin)
能看到穿透成功的TCP信息