服务器准备
分配端口7000,作为bind port,分配端口6000,作为与树莓派ssh链接的端口。记得在云服务器中的安全组设置中给6000和7000端口开放出入的权限。
安装frp
服务器端
代码语言:shell复制# 下载与安装
wget https://github.com/fatedier/frp/releases/download/v0.24.1/frp_0.24.1_linux_amd64.tar.gz
tar -zxvf frp_0.24.1_linux_amd64.tar.gz
# 修改配置
[common]
bind_port = 7000
vhost_http_port = 8080
# 启动
./frps -c ./frps.ini
# 或者后台启动
nohup ./frps -c ./frps.ini
客户端
代码语言:shell复制# 下载与安装
wget https://github.com/fatedier/frp/releases/download/v0.24.1/frp_0.24.1_linux_arm.tar.gz
tar -zxvf frp_0.24.1_linux_arm.tar.gz
# 修改配置
[common]
server_addr = 服务器的公网ip
server_port = 7000
login_fail_exit = false
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
# 启动
./frpc -c ./frpc.ini
# 或者后台启动
nohup ./frpc -c ./frpc.ini
外网访问
代码语言:shell复制ssh -oPort=6000 pi@服务器的公网ip
使用 Systemd 实现自动启动 frp
代码语言:shell复制# 安装systemd
apt-get update
apt-get install systemd
apt-get install systemd-sysv
代码语言:shell复制# 复制文件
cp frpc /usr/local/bin/frpc
mkdir /etc/frp
cp frpc.ini /etc/frp/frpc.ini
# 编写 frp service 文件,以 centos7 为例,适用于 debian
mkdir /usr/lib/systemd/system
vim /usr/lib/systemd/system/frpc.service
# 内容如下
[Unit]
Description=frpc
After=network.target
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
# 树莓派要先修改root密码,才能启动服务
sudo passwd root
# 启动 frp 并设置开机启动
systemctl enable frpc
systemctl start frpc
systemctl status frpc
# 停止
systemctl stop frpc