树莓派内网渗透搭建与维护pi概述[](http://neiwangchuantou.cn/arc...《章节链接》)如题,今天主要讲一下使用官方云穿透提供的内网穿透功能,从外网访问树莓派上的网站,通过ssh进行远程管理。RaspberryPi[](http://neiwangchuantou.cn/arc...《章节链接》)RaspberryPi是Broadcom出品的一款基于arm架构处理器的微型计算机。它很便宜,最新版本是4B。笔者用的是买的3B+,当时200元左右。3B+版配置如下:主频1.4GHz,64位四核ARMCortex-A53CPU,1GBLPDDR2内存2.4GHz和5GHzIEEE802.11.b/g/n/ac无线网卡,Bluetooth4.24USB2.0HDMI这个配置跑个静态网站绰绰有余。毕竟阿里云只有1核1G便宜(主频会稍微高一点)。搭建网站[](http://neiwangchuantou.cn/arc...《章节链接》)nginxRaspberryPi官方提供了基于Debian的RaspberryPiOS,所以安装软件和大家熟悉的Ubuntu一样,先安装nginxaswebserver:sudoaptinstallnginx安装完成后start:#启动nginx,如果没有输出,说明启动成功sudonginx#也可以主动查看进程ps-ef|grepnginx查看进程输出类似如下效果:nginxdefaultnginx直接有一个配置文件如果生效,可以通过浏览器访问树莓派的局域网ip。比如我的是192.168.199.175。如果能看到这个页面,说明web服务器已经正常提供服务了。如果浏览器需要访问自己的网站文件,只需更改nginx配置文件即可。通过内网穿透的网站已经有了网络云,接下来就是配置内网穿透进行外网访问。在网云川官网购买隧道,设置穿透协议为Http(s)。内网端口就是上面安装的nginx的端口。默认为80,可以通过修改配置文件进行调整。在这里配置就行了。image-20200802160920441确认后,控制台会生成token并复制。image-20200802161617631接下来,安装NetCloud客户端。说树莓派是arm-based处理器,所以需要下载网云软件的arm版。登录控制台后,可以清楚的看到:arm复制链接地址,执行以下命令:#使用wgetwgethttp://xiaomy.net/download/linux/wyc_linux_arm&&chmoda+rwxwyc_linux_arm#使用curl,选择两者之一curl-Ohttp://xiaomy.net/download/linux/wyc_linux_arm&&chmoda+rwxwyc_linux_armwyc_linux_arm执行完成后,网云的客户端就安装好了。接下来启动软件,执行如下命令:./wyc_linux_arm-token上面记录的token可以看到输出如下:image-20200802161927244还有一个网络地址,直接在浏览器访问外网域名:image-20200802164648416就这么简单,外网可以访问树莓派里面的网站。运维[](http://neiwangchuantou.cn/arc...《章节链接》)网站运行完了?当然不是,以后你可能需要面对网站更新、软件更新、服务重启等问题。这些东西只能通过远程管理来操作,也就是这部分要讲的:通过ssh进行树莓派运维管理。其实我们在建站的过程中已经在树莓派上安装了一些软件。这个过程就是对ssh连接的操作,而我们现在要做的就是通过ssh访问外网地址来连接树莓派。也先打开隧道。这次配置穿透协议为tcp,内网端口为ssh端口。默认是22号,当然你也可以通过配置文件修改,保持一致即可。image-20200802180254686确定后,会生成如下信息,记录外网端口、域名和token:image-20200802165049924再次启动一个云游客户端,使用刚刚记录的密码,这次会生成一个internet端口地址。./wyc_linux_arm-token上面记录的token通过以下命令终于可以连接到其他机器上的树莓派了:ssh-p外网端口pi@域名这样就实现了对树莓派的远程管理。总结[](http://neiwangchuantou.cn/arc...《章节链接》)通过网络云开通了两条隧道,即实现了从外网访问的网站,也实现了远程管理。你可能会问,有这个必要吗?还不如买个云服务器!我个人认为建站最大的成本在于云服务器。个人网站使用的1芯1G加1Mbps带宽通常就够用了。以阿里云为例,价格在每年500左右。而且这种配置的服务器,我之前是很难启动一个hadoop的。但是,内部网络是透明的并且便宜得多。我们可以根据网站的情况选择更高的带宽。并且可以绑定自己的域名,服务器不需要备案。外人看来和云服务器没什么区别。当然,这样的比较显然是不公平的,因为如果选择内网穿透方案,我们需要自己提供电脑、电力和能源。总的成本可能差不多,但是理论上电脑的性能是自己控制的,可玩性要大很多。人生不就是折腾吗?最后,非常感谢王云川提供的免费方案。
