树莓派配合云服务器实现内网穿透

2024-02-06 16:53:03 浏览数 (2)

服务器准备

分配端口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

0 人点赞