前言:内网穿透就是让外部的互联网主机,可以访问你局域网内的机器上的HTTP, HTTPS, TCP 或 UDP 服务。
1,github地址:Releases · fatedier/frp · GitHub
2,官方文档:文档 | frp
3,本次使用frp_0.51.3_linux_amd64.tar.gz版本,操作起来都是一样的,附百度网盘地址:链接:https://pan.baidu.com/s/12WLYrA4E_JCrjtncGb4Evg
提取码:vney
一,部署服务端frps.ini (公网节点)
# 解压文件
tar -xzvf frp_0.51.3_linux_amd64.tar.gz
# 重命名 frp_0.51.3_linux_amd64 为 frp
mv frp_0.54.0_linux_amd64 frps
# 将 frps 移动到系统执行目录
mv frp/frps /usr/bin/frps
# 创建 frps.ini 配置文件,并填写内容如下
[common]
bind_port = 7000 ##必须设置开放端口
dashboard_port = 7500 ###frp服务web更直观的看开放段口
[web] ##进程名称随便
type = tcp ##tcp或udp
cal_ip = 172.16.23.177 ##客户端frpc的ip
local_port = 80 ##客户端需要映射的端口
remote_port = 80 ##服务端映射服务端的端口,这里找个空闲端口即可
[shh]
type = tcp
cal_ip = 172.16.23.177
local_port = 22
remote_port = 1022
启动frps
./frps -c ./frps.ini
二,编辑客户端frpc.ini (内网节点)
[common]
server_addr = 106.14.82.** ##公网节点的ip
server_port = 7000 ##公网节点服务端口
admin_port = 7002
[web80]
type = tcp
local_port = 80 #这里直接是本地需要映射的端口
remote_port = 80 #这里直接是服务端对应的映射端口下面同理
[shh]
type = tcp
local_port = 22
remote_port = 1022
启动frpc
./frpc -c ./frpc.ini
三,使用 systemd 来使 frps 服务自启动
参考说明:使用 systemd | frp
##使用文本编辑器 (如 vim) 在 /etc/systemd/system 目录下创建一个 frps.service 文件,用于配置 frps 服务。
vi /etc/systemd/system/frps.service
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /path/to/frps -c /path/to/frps.toml
[Install]
WantedBy = multi-user.target
# 启动frp
systemctl start frps
# 停止frp
systemctl stop frps
# 重启frp
systemctl restart frps
# 查看frp状态
systemctl status frps