以下以Centos7作为示例
安装frp
frp官方githup地址:https://github.com/fatedier/frp
frp分为两端,服务端和客户端,两端用一个版本,而且需要公网ip
服务端配置(含有公网ip的服务器)
#解压文件
sudo tar -xzvf frp_0.34.3_linux_amd64.tar.gz
#切换至目标目录
cd frp_0.34.3_linux_amd64/
#删除客户端的配置
sudo rm -rf frpc*
#修改配置
sudo vim frps.ini
#删除里面的内容,拷贝以下内容
#bind_port frp服务启动占用的端口,可以自定义,注意防火墙,及云平台的防火墙
#token类似密码
[common]
bind_port = 5000
token = xxxxx
#保存退出
:wq
客户端端配置(内网服务器)
#解压文件
sudo tar -xzvf frp_0.34.3_linux_amd64.tar.gz
#切换至目标目录
cd frp_0.34.3_linux_amd64/
#删除服务端的配置
sudo rm -rf frps*
#修改配置
sudo vim frpc.ini
#删除里面的内容,拷贝以下内容
#server_addr 服务端部署服务器的ip
#server_port 服务端暴露的端口
#token 服务端设置的秘钥
#[ssh] 自己为服务起一个名字
#local_port 客户端应用端口
#remote_port 客户端服务对应服务端的端口,注意防火墙,及云平台的防火墙
[common]
server_addr = xx.xx.xxx.xxx
server_port = 7000
token = 123456
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 7000
#保存退出
:wq
新增service服务
服务端
- 登录服务端服务器
# 切换至如下目录
sudo cd /etc/systemd/system
2.创建service
sudo touch frp.service
# 编辑文件
sudo vim frp.service
# 拷贝以下内容
# ExecStart使用绝对路径,我的frp服务放在/usr/local/software/下的,根据自己服务位置修改
[Unit]
Description=frp-auto
After=network-online-target
[Service]
Type=simple
ExecStart=/usr/local/software/frp/frps -c /usr/local/software/frp/frps.ini
Restaer=on-failure
[Install]
WantedBy=multi-user.target
# 保存退出
:wq
#添加执行权限
sudo chmod +x frp.service
# 重启systemctl服务
sudo systemctl daemon-reload
# 启动frp服务
sudo systemctl start frp
#查看状态
sudo systemctl status frp
展示如下就是安装配置好了
如果报错
替换After值为network.target
,然后依次执行sudo systemctl stop frp
,sudo systemctl daemon-reload
,sudo systemctl start frp
客户端
客户端与服务端类似,只是ExecStart不同,frps
改成frpc
,路径根据实际情况填写绝对路径
ExecStart=/usr/local/software/frp/frpc -c /usr/local/software/frp/frpc.ini