保护远程物联网摄像头的最佳安全实践是什么?

物联网 智能家居 安全 树莓派
2021-06-07 22:28:48

我做了一些家庭自动化,例如构建一个可以通过本地 SSH 开启的远程摄像头,并在运行 Raspberry Pi 的 Linux 服务器上发布图像。

不过,我很好奇,当您的安全性位于路由器之后时,最好遵循哪些协议。我使用过 Putty 之类的东西并打开端口,以便我可以通过隧道进入,但我不认为这些是最安全的方法。

我想知道远程访问家庭服务器系统时最好使用哪些协议/工具。

3个回答

PuTTY实际上非常安全——会话本身是加密的。这是SSH为您提供的“开箱即用”的一部分。我自己做了很多这种类型的事情,这里有一些我建议的命中点:

  • 不要向全世界开放端口 22 - 配置您的 SSH 服务器以侦听 WAN 接口上的非标准端口(例如 22022 或 2222)
  • 需要身份验证才能访问带有您的安全图像的任何网页。即使这是使用 .htaccess 文件的简单 HTTP-AUTH,也总比没有好。
  • 使用 SSL 与 Web 服务器通信,即使它们在您的路由器后面
  • 使用 OpenVPN 或其他 VPN 技术从路由器之外的任何设备访问您的家用机器。这消除了对直接 SSH 访问的需要,尽管我通常希望在 VPN 服务失败的情况下保持直接 SSH 可用。

其他答案涵盖了许多可用于保护系统的技术。这里有一些更一般的想法/哲学。

  1. DMZ 是您的朋友- 几乎在您拥有面向外部网络的服务的所有情况下,DMZ(参见 a.)都会非常有益。在这种情况下,它将最小化攻击面并最小化损坏。通过将 DMZ 中的设备数量限制为仅需要外部访问的设备,您可以限制攻击面。此外,DMZ 将使任何人更难访问您的核心网络,从而最大限度地减少损害。
  2. 白名单,不要黑名单- 默认情况下,默认情况下应阻止每个协议、端口和内部连接。应该在设备(如果可能)、防火墙和路由器中设置此阻止。仅启用您正在使用的选项,并且仅用于需要一个的设备。如果您知道并且必须为弱的 IoT 设备(例如受 Mirai 影响的设备)使用协议,您应该设置一个设备(如 RaspberryPi)作为中继。您将设备与网络完全隔离,仅通过 RaspberryPi 将其转换为设备所需的协议的安全协议(ssh、vpn 等)与其进行通信。

SSH 是一个合理的起点,使用 TLS 加密是必不可少的,使用 Putty 进行 ssh 访问是实现这一目标的一种方法。VPN是另一个。真正重要的是您使用强密码或密钥来访问您网络中的设备,并使网关设备保持最新状态。

使用非标准端口是一种明智的做法,但如果您将设备设置为默认(或通用)密码,则不会保护您的网络。

如果您想要远程访问,您需要打开一个端口来转发 SSH(或类似的东西)。如果您不信任摄像机上的安全实施(即它的上次固件更新是在大约 6 个月前),那么您需要使用 VPN 为其创建一个隔离的网段。如果它有 WiFi 和旧固件,它也可能是完全开放和公开的(至少对于物理上接近的任何人)。