说明
这里我们只以frpc
作为示例,frps
和frpc
同理
什么是frp
开源地址: https://github.com/fatedier/frp
官方文档: https://gofrp.org/
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
说直白一点就是内网穿透,让外网可以访问树莓派,而且这种方式极为简单且稳定,但需要有一个提供服务端的服务器支持
快速开始
1. 下载
目前可以在 Github 的 Release 页面中下载到最新版本的客户端和服务端二进制文件,所有文件被打包在一个压缩包中
选择
frp_版本号_linux_arm.tar.gz
, 然后复制下载链接
使用wget命令下载
wget https://github.com/fatedier/frp/releases/download/v0.38.0/frp_0.38.0_linux_arm.tar.gz
2. 解压
sudo tar -zxvf frp_版本号_linux_arm.tar.gz
3. 修改配置
- 进入到我们解压后的目录
sudo cd frp_版本号_linux_arm/
- 对
frpc.ini
配置文件进行修改
sudo vim frpc.ini
- 将
server_addr
和server_port
修改成我们对应的配置
[common]
server_addr = 127.0.0.1 # 此处修改成我们自己服务器的地址
server_port = 7000 # 此处修改成我们自己服务器的端口
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
4. 启动服务
sudo ./frpc -c frpc.ini
5. 设置开机自启
- 修改解压后的目录的
systemd
目录中的frpc.service
文件
sudo vim /systemd/frpc.service
- 将
ExecStart ExecReload
处的地址修改成自己的frpc
所在的目录
[Unit]
Description=Frp Client Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frpc -c /etc/frp/%i.ini #此处需修改
ExecReload=/usr/bin/frpc reload -c /etc/frp/%i.ini #此处需修改
LimitNOFILE=1048576
- 将
frpc.service
复制到/lib/systemd/system
目录
sudo cp frpc.service /lib/systemd/system/.
- 启动
frp
并设置开机启动
sudo systemctl enable frpc
sudo systemctl start frpc
sudo systemctl status frpc