概述
树莓派3 利用frp内网穿透搭建
树莓派3 如果不能在外网控制树莓派系统,可玩性也就降低了。这里介绍用frp开源软件进行内网穿透,让你在外面也能控制树莓派系统。
一、软件的准备;
需要一台具有公网IP的机器,对应该机器的frps的软件包,树莓派3的frpc的软件包
由于我是用的公网ip的机器是centos 6.5 ,这里提供了2个软件包,这是githup网址:
https://github.com/wangdamingll/shumeipi3
二、frps 服务器的搭建
1、tar -zxvf frp_0.11.0_linux_amd64.tar.gz
2、cd frp_0.11.0_linux_amd64
3、 vim frps.ini
这是服务端配置文件内容
[common]
bind_addr = 0.0.0.0
bind_port = 7000
vhost_http_port = 8080
vhost_https_port = 443
dashboard_port = 7500
auth_token = frp
log_file = ./frps.log
log_level = info
4、启动服务:./frps -c ./frps.ini
5、查看配置log文件: vim ./frps.log
如果没有什么异常,就是成功的
三、frps 客户端的搭建
1、tar -zxvf frp_0.11.0_linux_arm.tar.gz
2、cd frp_0.11.0_linux_arm
3、 vim frpc.ini
[common]
server_addr = xxx.xxx.xxx.xxx #你的公网服务器的ip地址
server_port = 7000 #和服务器的端口一致
local_ip = 127.0.0.1
log_file = ./frpc.log
[ssh] #配置ssh内网穿透
type = tcp
local_port = 22
remote_port = 2200 #端口号,用于外网连接
4、启动客户端:./frpc -c ./frpc.ini
5、查看log: vim frpc.log 如果没有异常的话就是成功的
四、测试
1、查看服务器监听的所有端口号
netstat -anpt
tcp 0 0 :::7500 :::* LISTEN 14262/./frps
tcp 0 0 :::8080 :::* LISTEN 14262/./frps
tcp 0 0 :::22 :::* LISTEN 1429/sshd
tcp 0 0 :::2200 :::* LISTEN 14262/./frps
tcp 0 0 :::7000 :::* LISTEN 14262/./frps
tcp 0 0 :::443 :::* LISTEN 14262/./frps
看到了吗? 2200穿透端口号!
2、测试服务器穿透端口是否通
telnet xxx.xxx.xxx.xxx 2200 #xxx.xxx.xxx.xxx 是你的服务器ip
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.
SSH-2.0-OpenSSH_6.7p1 Raspbian-5+deb8u3
这就通了
3、在外网ssh连接内网树莓派系统
ssh pi@xxx.xxx.xxx.xxx -p 2200
pi@xxx.xxx.xxx.xxx's password:
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun Aug 20 11:24:08 2017 from 192.168.2.103
pi@xxx:~ $
这就成功了
五、补充
1、为了更方便,可以将frp服务开机启动,树莓派系统为例
sudo vim /etc/rc.local
sudo nohup /home/pi/fuzhusoft/frp_0.11.0_linux_arm/frpc -c /home/pi/fuzhusoft/frp_0.11.0_linux_arm/frpc.ini & >> /dev/null 2>&1
frp具体路径请自行配置
2、这里有几个大坑
1)frpc 连接 frps的时候,一定要保持2台机器的时钟同步,否则是连不上的,报的错误是含有time的关键字!
时间同步:ntpd -s -d 或者 htpdate -t -s ntp.neu.edu.cn ,最好加入到开机启动中
2)开机启动
sudo nohup /home/pi/fuzhusoft/frp_0.11.0_linux_arm/frpc -c /home/pi/fuzhusoft/frp_0.11.0_linux_arm/frpc.ini & >> /dev/null 2>&1
不要少了sudo,因为需要在 / 目录下面创建 frps.log日志
不要写成 $HOME/fuzhusoft/frp_0.11.0_linux_arm/frpc -c $HOME/fuzhusoft/frp_0.11.0_linux_arm/frpc.ini
你懂得,最好写绝对路径
注:开启启动的前提是在启动frp之前网络一定要提前连好,这就需要设置树莓派的配置
(1) sudo raspi-config --> Boot Options -->Wait for Network at Boot Choose whether to wait for network connection during boot --> yes -->finish
最后
以上就是开心狗为你收集整理的树莓派3 利用frp内网穿透搭建的全部内容,希望文章能够帮你解决树莓派3 利用frp内网穿透搭建所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复