远程串口协议,带身份验证和加密

Cra*_*een 11 serial-port network-protocols remote-access

我想通过网络提供串口.RFC-2217提供对Telnet的扩展,以传输额外的串行端口信息,如速度,数据位,停止位和硬件握手线.

但是,我想确保网络中的任何人都无法自由访问它,因此我想进行身份验证和加密.Telnet在身份验证方面很弱,并且不提供加密.SSH通常比Telnet更受欢迎.

是否有任何协议允许通过SSH进行串口传输,类似于RFC-2217

我意识到一个选项可能是通过SSH隧道隧道传输Telnet + RFC-2217.这在技术上是可以实现的,但实际上它有点尴尬.

零配置

另一个问题是,如何用Zeroconf DNS-SD宣传这样一个端口?例如,通过SSH隧道传输的Telnet + RFC-2217串口如何与Zeroconf一起做广告?(普通的Telnet + RFC-2217可能会根据_telnetcpcd._tcp我的说法做广告.)

leo*_*luk 3

您想要的是安全的 LAN 上串行连接。

\n\n

您找不到任何免费项目执行此操作的原因很简单 \xe2\x80\x93 大多数开源项目将传输层安全性与协议分开(有充分的理由)。您无需为每个应用程序重新发明轮子,只需重复使用安全组件(在本例中为 SSH)并将其应用于不安全的协议(例如,与 RFC-2217 兼容)。

\n\n

只需使用 SSH 隧道或stunnel来保护连接。对于 Windows 客户端,您可以使用com2com;对于 *nix 系统,您可以使用ttyd之类的东西。

\n\n

例如, com2com甚至不需要在初始设置后手动启动,因此您的用户只需建立 SSH 隧道(例如通过 PuTTY)。

\n\n
    \n
  • com2com
  • \n
  • socat,使用pty并且openssl-listen您几乎可以做您想要的事情(与我上面写的内容略有矛盾,因为它实际上确实实现了传输层安全性)
  • \n
\n