通过frp开源代码进行内网穿透,需要准备一台带宽高有官网IP的服务器

下载地址:https://github.com/fatedier/frp/releases

image-20220321003850923

服务端

下载frp_0.40.0_linux_amd64.tar.gz,可以通过命令行,也可以直接在github下载

# 下载frp
wget https://github.com/fatedier/frp/releases/download/v0.40.0/frp_0.40.0_linux_amd64.tar.gz
# 解压
tar -zvxf frp_0.40.0_linux_amd64.tar.gz
# 重命名
mv frp_0.40.0_linux_amd64.tar.gz frp
image-20220321004249532

修改frps.ini

[common]
bind_port = 7000	# frp使用的端口

dashboard_user = admin	# 流量监控的账户
dashboard_pwd = admin  # 流量监控的密码
dashboard_port = 6443	# 流量监控程序的端口,搭建完成之后用服务器IP:6443就可以打开流量监控网页程序

给文件夹frp赋权

sudo chmod 755 frp

启动frp

./frps -c ./frps.ini 
image-20220321005150643

打开流量监控网页,服务器IP地址:7000

image-20220321004800570

树莓派端

下载frp_0.40.0_linux_amd64.tar.gz,可以通过命令行,也可以直接在github下载

# 下载frp
wget https://github.com/fatedier/frp/releases/download/v0.40.0/frp_0.40.0_linux_amd64.tar.gz
# 解压
tar -zvxf frp_0.40.0_linux_amd64.tar.gz
# 重命名
mv frp_0.40.0_linux_amd64.tar.gz frp
image-20220321004249532

修改frpc.ini

[common]
server_addr = 服务器IP
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

[cream]
type = tcp
local_ip = 127.0.0.1
local_port = 8880
remote_port = 8880

[vnc]
type = tcp
local_ip = 127.0.0.1
local_port = 5900	# vnc端口是5900
remote_port = 5900

给文件夹frp赋权

sudo chmod 755 frp

启动frp

./frpc -c ./frpc.ini 
image-20220321005206495

查看frp后台,可以看见服务

image-20220321005256292

frps.ini是服务端的配置文件,frpc.ini是客户端的配置文件,注意不要混淆

配置frp自启动

使用systemctl来控制启动,将/frp/systemd/frps.service拷贝到/lib/systemd/system/目录下,在frps.service里写入以下内容

[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target

[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/your/path/frps -c /your/path/frps.ini

[Install]
WantedBy=multi-user.target

然后就启动frps

sudo systemctl start frps

再打开自启动

sudo systemctl enable frps

如果要重启应用,可以这样,sudo systemctl restart frps 如果要停止应用,可以输入,sudo systemctl stop frps 如果要查看应用的日志,可以输入,sudo systemctl status frps

实测树莓派远程监控延时为0.5s左右,这个时候可以通过公网地址和端口访问树莓派,通过ssh或者vnc都可以

image-20220321005459457