环境准备
- 公网IP服务器
- 虚拟机(内网)
- 内网穿透工具frp0.36.2版本地址
公网IP服务器(阿里云、腾讯云、华为云…)
- 上传frp_0.36.2_linux_amd64.tar.gz文件到服务器指定目录(如/home、/usr。。。。)
- 解压文件
tar xvf frp_0.36.2_linux_amd64.tar.gz
- 解压之后目录结构
- 执行命令
vim frps.ini
- 修改端口
默认端口7000
,不推荐使用默认的,注
尽量不要在.ini
文件中添加注释,否则会报错
[common]
bind_port = 9900
#监控页面
dashboard_addr = 0.0.0.0
dashboard_port = 9901
dashboard_user = admin
dashboard_pwd = admin
公网服务器需要在安全组中将frps的端口开放,不然客户端监听不到
- 启动frps方式
1、nohup
nohup ./frps -c frps.ini > log.file 2>&1 &
2、利用systemd
cd /etc/systemd/system
# 创建一个文件
touch frps.service
vim frps.service
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
#授权
User=root
#非正常退出自动重启
Restart=on-failure
#心跳时间
RestartSec=5s
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /home/frp/frpServer/frps -c /home/frp/frpServer/frps.ini
[Install]
WantedBy = multi-user.target
- 配置 frps 开机自启。
systemctl enable frps
客户端(虚拟机、内网服务器)
- 上传frp_0.36.2_linux_amd64.tar.gz文件到服务器指定目录(如/home、/usr。。。。)
- 解压文件
tar xvf frp_0.36.2_linux_amd64.tar.gz
- 解压之后目录结构
- 执行命令
vim frpc.ini
[common]
server_addr = 公网IP
server_port = 9900 #frps公网开放端口
[ssh] #代理名称可以随便起但是 代理名称必须唯一
type = tcp #协议类型,此处为http,还可以配置tcp,udp等
local_ip = 127.0.0.1
local_port = 22 #代理的本地端口,就是你访问本地项目时的端口
remote_port = 1822 # 通过frps侦听的远程端口
[mysql]
type = tcp
local_ip = 127.0.0.1
local_port = 3306
remote_port = 13306
1822、13306端口需要在公网服务器开放端口 否则无法连接
- 启动frpc
1.1、nohup
nohup ./frpc -c frpc.ini > log.file 2>&1 &
1.2、利用systemd
cd /etc/systemd/system
# 创建一个文件
touch frpc.service
vim frpc.service
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
#授权
User=root
#非正常退出自动重启
Restart=on-failure
#心跳时间
RestartSec=5s
# 启动frpc的命令,需修改为您的frpc的安装路径
ExecStart = /home/frp/frpClient/frpc -c /home/frp/frpClient/frpc.ini
[Install]
WantedBy = multi-user.target
- 配置 frpc 开机自启。
systemctl enable frpc
用法
xshell 连接 ssh -p 1822 -i ~/.ssh/ root@公网IP
navicat 连接 公网IP + 13306
评论区