ssh - Telnet 相对于 SSH 的优势?

标签 ssh telnet

SSH 是远程配置的推荐协议(protocol)。尽管如此,telnet 仍在许多设备中使用。与 SSH 相比,telnet 有什么优势吗?

最佳答案

嗯,让我们看看:

  • Telnet 更简单(正如其他人已经指出的那样);

  • Telnet 显然更快,因为该协议(protocol)更简单,没有 key 交换,也不涉及加密;

  • Telnet 不易受攻击

等等,停下,什么!?

嗯,是的,telnet 协议(protocol)是纯文本的,因此您只需嗅探连接,现在您就知道了密码和其他所有内容。 这确实是众所周知的事实。

实际嗅探特定的 telnet session 有多难, 取决于网络设置和许多其他因素,可能从完全微不足道到极难做到。

但除了(明显的)缺乏加密之外,当涉及到协议(protocol)和服务实现本身时,整体而言哪一个更不容易受到攻击?

让我们来看看 CVE 数据库:

远程登录:https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=telnet

2016 年注册了 5 个漏洞, 其中 3 个只是“硬编码凭据”,与其说是真正的服务实现或协议(protocol)缺陷,不如说是供应商错误。

现在,SSH:https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=ssh

25 (!) 个漏洞(2016 年),范围从“硬编码”凭据到允许选择低安全性加密算法,允许拒绝服务攻击或从远程进程内存等。

因此,与 2016 年检测到的 Telnet 漏洞相比,SSH 相关漏洞显然要多得多,而 Telnet 是赢家。

这实际上是非常合乎逻辑的,因为 SSH 是一个复杂得多的协议(protocol),典型的 SSH 实现将具有更多的功能,如 X11 转发、文件传输、隧道等,需要更复杂的代码,并且需要更复杂的代码更广泛的“攻击面”

请对以上内容持保留态度,Telnet 仍然是纯文本 它被广泛认为是一种过时的协议(protocol),因此您肯定必须改用合适的 SSH 实现。

只需确保配置正确(例如,关闭您不打算使用的功能),并始终保持最新。

同时,你要记住,有时候“显而易见的事情”并不总是那么“显而易见”,当你换个角度看的时候, 这就是这篇文章的重点。

关于ssh - Telnet 相对于 SSH 的优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40446878/

相关文章:

docker - SSH隧道到远程docker服务

c++ - Telnet 客户端控制台 : SEND invalid command - Only for Spanish version

c# - Telnet 流的字节到字符转换

c - 通过 Telnet 检测终端宽度

bash - 脚本在 '$ ssh bash script arg' 中看不到 arg

linux - Vagrant : Permission denied (publickey)

ssh - 如何获取 pem 文件的公钥?

emacs - 在 emacs 中无法在终端模式下工作的 block 绑定(bind)?

ssh - 在远程服务器上访问CouchDB Futon

smtp - Telnet 到谷歌邮件服务器