当您第一次连接到不包含在known_hosts文件中的SSH服务器时,SSH客户端将显示服务器提供的公钥的指纹。我从这个问题中发现,这里作为一个客户端,您可以在ssh_config中指定主机/etc/ssh/目录中的哪个公钥对。
在ssh_config手册页面中,我发现当前的默认设置如下:
ecdsa-sha2-nistp256-cert-v01@openssh.com,
ecdsa-sha2-nistp384-cert-v01@openssh.com,
ecdsa-sha2-nistp521-cert-v01@openssh.com,
ssh-ed25519-cert-v01@openssh.com,
ssh-rsa-cert-v01@openssh.com,
ssh-dss-cert-v01@openssh.com,
ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
ecdsa-sha2-nistp521,ssh-ed25519,
ssh-rsa,ssh-dss直到最近,我的SSH服务器才发送给我一个ECDSA指纹,而不是RSA,但我想知道我应该选择哪种算法,如果它甚至重要?
这文章声称ECDSA是the old elliptic-curve DSA implementation that is known to have severe vulnerabilites,我应该使用RSA还是最新的ed25519算法?
发布于 2016-07-25 21:08:30
目前,
服务器通常提供更多不同的主机密钥类型,因此您的目标是兼容性。客户端配置中的优先级顺序从强到弱,但更兼容。
坦率地说,对你来说,作为一个最终用户,这并不重要。其中一些密钥可能有一些安全问题,但没有一个被认为完全破坏了合理的长度,这可能会导致中间人攻击或类似的事情。
https://unix.stackexchange.com/questions/298237
复制相似问题