远程访问服务工具——FRP
frp 是一个能够实现内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网的服务器来转发。
资源链接
根据自己服务型号和操作系统来选取对应的文件,不知道的使用以下命令:
uname -a
两种方式下载:
- GitHub下载后上传到宝塔面板
- 直接使用wegt下载
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
在公网服务器上配置FRPS
将下载到服务器中的frp压缩包解压,最新版解压后文件格式如下:
这里我们只需要使用到frps和frps.toml文件,编辑配置frps.toml文件,内容如下:
bindAddr = "0.0.0.0"
bindPort = 7000
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "admin"
auth.method = "token"
auth.token = "取一个字符串即可"
transport.tcpMux = false
log.to = "/home/user/software/frp/frps.log"
log.level = "info"
log.maxDays = 3
auth.token取一个字符串,比如:abc666。记住这个字符串后面要用到。 其他的可以自行设定。
注意:
1、如果是使用宝塔搭建的环境,宝塔也要开启你在frp配置写的端口号,服务器后台也需要开启,比如阿里云,腾讯云…
2、服务端和客户端启动不了的情况下,并且没有报错误,有概率是因为文件没有执行权限。
3、toml文件采用json格式,因此字符串的内容要加上引号
编辑好后,进入frp文件夹中启动frps服务:
./frps -c ./frps.toml
此时,服务便会启动,进入配置的面板中查看。面板地址:服务器ip:开放的端口(7500)
最后设置开机自启动,随时随地可以享受frp的服务:
sudo vim /etc/systemd/system/frps.service
写入内容:
[Unit]
Description=FRPS Service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
ExecStart=/home/user/software/frp/frps -c /home/user/software/frp/frps.toml
Restart=always
RestartSec=15s
[Install]
WantedBy=multi-user.target
使用systemd命令管理frps
# 配置frps开机自启
systemctl enable frps
# 启动frps
systemctl start frps
# 停止frps
systemctl stop frps
# 重启frps
systemctl restart frps
# 更改配置文件后重启服务
sudo systemctl daemon-reload
# 查看frps状态
systemctl status frps
正常启动下的frp状态:
在远程设备上配置FRPC
本文选择树莓派5作为远程设备,因此需要去官网下载支持树莓派5架构的服务,选择arm64的压缩包。
解压到指定位置后,编辑frpc.toml文件。
serverAddr = "公网服务器ip"
serverPort = 7000
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "admin"
auth.method = "token"
auth.token = "输入与frps相同的字符串即可"
auth.additionalScopes = ["HeartBeats"]
transport.tcpMux = false
log.to = "/home/user/software/frp/frpc.log"
log.level = "info"
log.maxDays = 3
[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 2222
运行frpc服务,进入浏览器输入localhost:7500查看面板是否正常加载,成功加载即服务启动成功。最后同上述服务端操作相同设置frpc服务开机自启动即可。(切记不要和上面一模一样,命名上就有不同,一个是frps、一个是frpc)
效果如下所示:
配置vscode链接到树莓派
通过将vscode连接到树莓派,可以远程调试树莓派上的代码,同时,避免在树莓派上安装编辑和屏幕的繁琐。
1、下载插件扩展 Remote-SSH
2、添加新的链接
输入ssh指令,并输入远程设备的密码,这里的用户名也是远程设备的用户名。
ssh 用户名@公网ip地址:访问端口
3、成功链接