当我开始处理* nix服务器时,openssh服务器带有dsa以及rsa主机密钥,openssh客户端更喜欢使用rsa密钥。 现在openssh服务器有dsa,rsa以及ecdsa主机密钥,而openssh客户更喜欢ecdsa主机密钥。
我还需要/希望在什么程度上configurationopenssh来提供dsa主机密钥?
主要想知道非openssh客户端实现。
我不能想到任何广泛使用的,至less不支持RSA的事情,而且如果您在仅支持DSA的Windows(例如)上使用terminal仿真器,您应该停止使用它并下载putty或更新它。
该选项是为了提供兼容性。 但是,这也增加了您的安全性。 攻击者可以通过说服客户声明支持DSA来削弱你的密码学。 这种情况是相当牵强的。 如果它涉及到你,那么你应该禁用DSA。
我可以想象的唯一情况可能会导致严重的妥协,如果您的某个用户在不可信或受感染的计算机上使用DSA密钥对,该计算机始终协商DSA并生成重复的临时值以创buildDSA签名; 结果将会是用户的密钥可能受到攻击,但似乎并不是这是攻击者阻力最小的path。 除非你的系统被国际间谍使用,否则你可能不需要担心。 在我们的其中一个姊妹网站上查看此问题: https : //security.stackexchange.com/q/29262/12223 。
没有真正直接的方法来禁用DSA。 Debian bug 528046提出并提供了一个补丁(对于一个选项PubKeyTypes),并且得到了支持,但自2009年以来还没有被采取行动,没有任何上游的证据。
您的答案可能在这里find:
https://security.stackexchange.com/questions/5096/rsa-vs-dsa-for-ssh-authentication-keys
由于各种原因,大多数RSA密钥的build议都是针对RSA密钥的,所以DSA密钥在很大程度上是为了向后兼容。 DSA是在RSA出现的时候引入的,当时RSA还是获得了专利,而DSA则更加开放。 那已经改变了。
因为所有这些,DSA密钥几乎没用。 他们会工作,如果你问的话,ssh-keygen甚至会产生他们,但是有人必须专门提出这个问题,这意味着如果你强迫他们的话,他们可以使用RSA。 据我所知,没有任何DSA只。 DSA密钥可以禁止。
我可以提出安全明智的唯一原因是如果素数分解下降,但离散的日志不,然后RSA下降,但DSA的立场。 在这种情况下,你会问如何禁用RSA。 如果离散日志下降比RSA和DSA下降。 但是如果你的ssh仍然需要1024位的DSA,现在就修正这个问题。