ESP32与VPS的安全连接



我有一个在防火墙后面的专用网络中运行的ESP32。现在,我希望ESP32通过MQTT将其传感器读数提交给运行例如Node RED的VPS。在专用网络中运行此设置是可行的,但现在我很难通过防火墙将安全连接到VPS。

我知道的选项有:

  • 打开端口/端口转发:很简单,但会使我的网络更容易受到攻击
  • 通过UDP进行Holepunching:我读过它,但对于我的技能/知识水平来说,实现似乎有点太难了
  • ESP和VPS之间通过HTTPS进行通信:我想使用MQTT来避免开销,具有更好的电池性能,发布/订阅等
  • 使用TLS/SSL在ESP和VPS之间进行通信
  • 建立DMZ,尽管即使在这种情况下也需要适当的安全措施
  • ESP32和VPS之间的VPN

所以我的问题是:

  • 打开端口并让ESP32通过TLS/SSL与VPS通信是否是一种良好的做法/安全的方式?还是这仍然会打开漏洞
  • 我可以将VPS和ESP32都设置为只接受来自其静态IP地址的连接吗?从理论上讲,这似乎是一种非常简单的方法?或者让我的防火墙只接受来自端口8883上这些IP地址的连接
  • 什么是对初学者最友好、最安全的方式?(VPN、TLS/SSL、防火墙设置等(

我已经读了很多帖子,但这些问题仍然存在。澄清一下真的会很感激,因为我还在学习很多关于网络的知识。

我认为您对MQTT的工作方式存在误解。

MQTT客户端(ESP32(与MQTT代理(在VPS上(建立一个单一的出站连接,所有消息都在两个方向(发布和订阅(上流动。这意味着:

  • 只有VPS需要一个静态IP地址(因此ESP32知道在哪里可以找到它(
  • 您可以通过TLS运行MQTT(VPS需要证书(
  • 您需要打开VPS上的MQTT端口,以允许客户端进行连接

使用TLS将比尝试在ESP32或该网络的路由器上运行VPN容易得多。

相关内容

  • 没有找到相关文章