一、下载frp工具
GitHub链接https://github.com/fatedier/frp/releases/tag/v0.36.2
下载列表根据需要进行内网穿透的不同操作系统进行选择
当前选择的是 linux_amd64 及 64位linux操作系统
需要下载两份文件,分别上传到云服务器中和被代理的内网机器中并解压
云服务器 内网服务器二、在云服务中配置frps.ini文件,内网中配置frpc.ini
frps.ini:
# common :frp的基本配置
# bind_port : 绑定的端口,需要云服务器和内网服务器都开启这个端口
# dashboard_port : 控制台的端口,使用云服务器IP地址加端口进行访问
# dashboard_user : 控制台的用户名
# dashboard_pwd : 控制台的密码
# token : 此处填写需要的token,可以不填写 填写示例:
[common]
bind_port = 12345
dashboard_port = 6666
dashboard_user = admin
dashboard_pwd = admin
token = myToken$$$
# myPort1 此项代理的名称
# type = 代理的类型,一般为tcp
# local_ip = 本地的ip
# local_port = 本地的端口
# remote_port = 代理到的内网服务器端口 填写示例:
[myPort1]
type = tcp
local_ip = 127.0.0.1
local_port = 8888
remote_port = 8888
[myPort2]
type = tcp
local_ip = 127.0.0.1
local_port = 9999
remote_port = 6868
frpc.ini:
# common 同frps.ini
# server_addr :云服务器的ip地址
# server_port :绑定的端口,需要云服务器和内网服务器都开启这个端口
# token : 此处填写需要的token,frps.ini 中没有填写则此处不填写 填写示例:
[common]
server_addr = 47.x.x.x
server_port = 12345
token = myToken$$$
# myPort1 此项代理的名称
# type = 代理的类型,一般为tcp
# local_ip = 本地的ip
# local_port = 被代理的端口
# remote_port = 云服务器端口 填写示例:
[myPort1]
type = tcp
local_ip = 127.0.0.1
local_port = 8888
remote_port = 8888
[myPort2]
type = tcp
local_ip = 127.0.0.1
local_port = 6868
remote_port = 9999
三、运行frps和frpc
云服务器运行
./frps -c ./frps.ini
内网服务器运行
./frpc -c ./frpc.ini
测试访问公网端口时是否可以代理到内网中
四、将frp注册进服务
云服务器创建 frps.service
vim frps.service
写入以下配置
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/root/frp/frps -c /root/frp/frps.ini
[Install]
WantedBy=multi-user.target
内网服务器创建frpc.service
vim frpc.service
写入以下配置
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#启动服务的命令(此处写你的frpc的实际安装目录)
ExecStart=/root/frp/frpc -c /root/frp/frpc.ini
[Install]
WantedBy=multi-user.target
将服务放入对应的服务文件夹中
一般为 /usr/lib/systemd/system
测试服务是否能运行:
# 云服务器
systemctl start frps.service
# 内网服务器
systemctl statr frpc.service
# 查看服务状态
systemctl status frps
systemctl status frpc
frps状态
frpc状态
内网端口已被云服务器代理,可以通过云服务器访问内网中的端口了
网友评论