经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » Linux/Shell » 查看文章
从互联网远程访问树莓派
来源:cnblogs  作者:就是为了好玩  时间:2021/5/10 8:54:09  对本文有异议

之前已经介绍过远程登录树莓派,主要讲的是局域网环境下通过SSH访问树莓派。通过互联网环境下远程访问局域网内的树莓派的方法,从实现角度上主要分为NAT端口映射、反向代理、内网穿透。本期我将介绍端口映射和SSH反向代理。

1.NAT端口映射

该种方法是通过拿到局域网上的公网IP,通过设置局域网网关NAT端口映射来实现从外网对树莓派的直接访问。本方法比较局限,主要是目前比较难获得公网IP,尤其是家庭自用的情况下,当然也可以联系你的宽带运营商获得固定公网IP。只能说这是一种方法,从实现上来说比较直接这里我就不多介绍了,有公网IP直接666

2.SSH反向代理

SSH可以实现内网的登录,同样可以利用该技术实现SSH反向隧道,实现从外网登录树莓派。该方法的前提是你要有一台具有公网IP的服务器。

首先,让树莓派主动向具有公网IP的服务器的某个端口发起SSH连接,比如publicip.org:9999,形成一个SSH隧道。当我们使用互联网上的其他电脑,通过SSH连接到服务器的这一端口时,服务器会把通信内容接力到与树莓派的SSH隧道中,最终实现远程访问树莓派。

之前我们已经介绍过申请一台亚马逊的云主机,可以使用该主机来实现SSH反向代理服务。

(1)在云主机上需要修改sshd_config配置文件。

  1. $ sudo nano /etc/ssh/sshd_config
  2. [sudo] password for haifeng:
  3. $ sudo service sshd reload

(2)在树莓派上建立通道,这里user1是云主机的登录用户名,publicip.org是云主机的域名或者公网IP,10009是云主机上开放的端口,也是你用来形成SSH反向隧道的端口。命令回车后会提示输入密码登录,输入密码登录即可。

  1. ssh -R 10009:localhost:22 user1@publicip.org

然后会跳转登录至云主机,此处可以查看刚才建立的反向隧道的情况。

  1. ~$ netstat -anp | grep 10009
  2. (Not all processes could be identified, non-owned process info
  3. will not be shown, you would have to be root to see it all.)
  4. tcp 0 0 0.0.0.0:10009 0.0.0.0:* LISTEN -
  5. tcp6 0 0 :::10009 :::* LISTEN -

该运行窗口不允许关闭,关闭后该隧道也随之关闭。

(3)然后在其他电脑上可以通过该隧道进行远程登录了。

  1. ~$ ssh -p 10009 pi@publicip.org

该方法只能作为临时访问措施,如果想要通过反向隧道实现持久稳定访问,可以设置通过设置后台服务或通过autossh进行设置。

下期预告

下期我们将介绍通过内网穿透的方式远程访问局域网树莓派,唠这个我就不困啦

欢迎关注我的公众号,持续更新中~~~

原文链接:http://www.cnblogs.com/alwaysbefunLinux/p/14747499.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号