ssh dsa主机密钥当前需要什么?


11

当我开始处理* nix服务器时,openssh服务器附带了dsa和rsa主机密钥,openssh客户端更喜欢rsa密钥。这些天,openssh服务器具有dsa,rsa以及ecdsa主机密钥,openssh客户端更喜欢ecdsa主机密钥。

在何种程度上我仍需要/想要将openssh配置为提供dsa主机密钥?

关于非Openssh客户端实现,大多数人都想知道。


懒惰。我支持一个应用程序,该应用程序的工程师已经分发了10年的DSA密钥...但是没有理由了。以下有关兼容性的说明是正确的。
ewwhite 2014年

Answers:


12

我想不出任何广泛使用的至少不支持RSA的东西,如果您在仅支持DSA的Windows上使用终端仿真器(例如),则应该停止使用它并下载腻子或更新它。

该选项在那里提供兼容性。但是,它也增加了安全性。攻击者可以说服客户端仅声明对DSA的支持,从而削弱您的加密技术。这种情况是牵强的。如果与您有关,则应禁用DSA。

我能想到的唯一可能会导致严重妥协的情况是,如果您的用户之一在不受信任或受到损害的计算机上使用了DSA密钥对,而该计算机始终协商DSA并生成重复的短暂值来创建DSA签名;结果将是用户的密钥可能遭到破坏,但这似乎并不是攻击者抵抗力最小的途径。除非您的系统被国际间谍使用,否则您可能不必担心。在我们的姐妹网站之一上查看此问题:https : //security.stackexchange.com/q/29262/12223

实际上,没有直接禁用DSA的直接方法。 Debian错误528046提出了它,并提供了一个补丁(用于选项PubKeyTypes),并得到了支持,但自2009年以来未采取任何行动,没有任何上游证据。


现在有一种禁用DSA的方法,它也是默认设置。
joshudson

9

您的答案可能在这里找到:

/security/5096/rsa-vs-dsa-for-ssh-authentication-keys

出于各种原因,大多数建议都针对RSA密钥,因此DSA密钥在很大程度上是为了向后兼容。DSA是在SSH2推出时引入的,因为当时RSA仍获得专利,并且DSA更具开放性。此后发生了变化。

因此,DSA密钥几乎没有用。它们会起作用,并且如果您要求ssh-keygen甚至会生成它们,但是有人必须专门询问它,这意味着如果您强制使用RSA,它们可以使用RSA。据我所知,仅DSA并未执行任何操作。DSA密钥可以禁止。


是的,我确实意识到dsa主机密钥与向后可比性有关,但是我的问题(可能更清楚了)是关于仍然需要向后可比性。
andol 2014年

2

我能提出安全性建议的唯一原因是,如果素因式分解下降,但离散日志没有下降,则RSA下降,而DSA保持稳定。在这种情况下,您会问如何禁用RSA。如果离散日志下降,那么RSA和DSA都会下降。但是,如果您的ssh仍然需要1024位用于DSA,请立即解决。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.