关于
树莓派B+是14年买回来的,本来想通过其学习linux,却一直在角落堆灰。这次拿出来一是想配置一下ssh
,想搭建一个家庭24*7服务器,不料由于各种原因困难重重。本科计算机网络知识大部分停留在理论阶段,刚好借此机会,通过配置树莓派学习一些远程控制的概念、方法以及涉及的网络知识。
本文主要涉及知识有:NAT,DHCP,DDNS,内网穿透,跨越NAT的P2P打洞等,最终实现在外网连接NAT后的树莓派并用ssh
登陆系统。
参考资料
- 内网穿透、远程控制、端口映射,八种方法汇总:链接
- nat123服务安装教程:链接
- 聊聊什么是公网IP 内网穿透 端口映射:链接
- ngrok Github Repo:链接
- frp Github Repo:链接
- 内网穿透工具的原理与开发实战:链接
- P2P中的NAT穿越方案:链接
关于远程控制
想要远程控制一台电脑,一个是利用ssh
登录电脑,或者用远程桌面登陆。一个是CLI界面,一个是GUI界面。本质上来说,就是需要设计一种协议,在服务端和客户端之间进行通讯,而他们的区别则是通讯协议不同,使用的安全加密手段不同。下面的简介大部分来在Wikipedia介绍页面。
SSH
Secure Shell是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。虽然任何网络服务都可以通过SSH实现安全传输,SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令。使用频率最高的场合类Unix系统,但是Windows操作系统也能有限度地使用SSH。
远程桌面
有很多公司都设计了远程桌面的软件,使用的通讯手段、加密手段各不相同。这里主要考虑使用下面两种最常用的远程桌面协议。
VNC(Virtual Network Computing&#