树莓派3使用frp内网穿透,CentOS 7服务器配置frp实现内网穿透工具
今天说下树莓派上利用frp实现内网穿透,下面说下树莓派上利用frp实现内网穿透需要准备些什么?
树莓派3 如果不能在外网控制树莓派系统,可玩性也就降低了。这里介绍用frp开源软件进行内网穿透,让你在外面也能控制树莓派系统。
安装环境和需求
一台具有公网ip的服务器
一个域名
如果没有服务器和域名可以使用《zerotier内网穿透介绍及设置方法》
内网客户端使用Raspbian Pi 3b,Raspbian Stretch
公网服务端使用CentOS 7的小鸡
服务端上的配置
(本人喜欢把所有应用放到/home目录下)
先来个好听的名字 比如frp
mkdir /home/frp cd /home/frp
再来这里看一下坠新的版本是啥,我看的时候是0.14.1,服务端当然是选amd64啦
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz
解压进去打开frps.ini
tar -zxvf frp_0.14.1_linux_amd64.tar.gz cd frp_0.14.1_linux_amd64 vi frps.ini
官方文档有对frps.ini的完整介绍,但我们只要内网穿透,因此只要跟着加简单几句就好了
# frps.ini [common] bind_port = 7000 vhost_http_port = 8080
保存退出后可以用下面的命令启动跑跑看
./frps -c ./frps.ini
出现Start frps success就好了,如果出错可以看看防火墙是否打开了相应端口
树莓派客户端上的配置
再来个好听的名字 比如还是frp
mkdir /home/frp cd /home/frp
这次下载的就是arm版啦
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_arm.tar.gz
如果使用上面命令下载失败,可以进https://github.com/fatedier/frp/releases然后手动下载拖进树莓派/home/frp文件夹内
老规矩解压进去打开配置文件,但这个配置文件比服务端的复杂一点
tar -zxvf frp_0.14.1_linux_arm.tar.gz cd frp_0.14.1_linux_arm/ vi frpc.ini
如果不想把ssh暴露在外网 可以全注释掉
输入
# frpc.ini [common] server_addr = x.x.x.x #这里是你的公网服务端ip server_port = 7000 [web] type = http local_port = 80 #Web服务的本地端口 custom_domains = www.yourdomain.com #域名,记得要解析到公网服务端
装完就可以起飞了
./frpc -c ./frpc.ini
出现Start proxy success就可以了
打开浏览器输入http://x.x.x.x:8080试试看
似乎一定要保证服务端一直且先开着才能连接成功
使用nohup制作一键启动脚本
客户端
因为本地的ssh工具一退出 树莓派的frpc就会退出 因此要想个好办法
可以用nohup或screen命令来保证frpc后台稳定运行,这里选择使用nohup
新建一个frp.sh
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz0
因为有时需要看log,所以就不加>/dev/null 2>&1 &了
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz1
设定权限后就可以起飞辣 777一劳永逸 去他妈的安全性(似乎应该用744)
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz2
服务端
同理,这里偷点懒,Xftp直接新建.sh权限改成744
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz3
如果不用sftp软件的话需要
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz4
运行试试
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz5
完成!这样就可以不用大段指令手动开启frp了
通过netstat -antpl查看是否有有7000端口,但退出需要kill pid,用ps aux慢慢找进程吧..
开机启动(Systemd)
这里用Systemd管理服务 比init.d和上面的破脚本不知道高到哪里去了
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz6
创建frp.service,输入
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz7
重载并设置开机启动
wget https://github.com/fatedier/frp/releases/download/v0.14.1/frp_0.14.1_linux_amd64.tar.gz8
//启动命令
sudo systemctl start frp
//停止命令
sudo systemctl stop frp
//重启命令
sudo systemctl restart frp
//查看状态
sudo systemctl status frp
完成!
点击链接加入群聊三群:751529538
点击链接加入群聊二群:376877156
点击链接加入群聊【路由器交流群:622891808已满】
本站附件分享,如果附件失效,可以去找找看
饿了么红包