我的服务器如何选择与 SSH 客户端一起使用的密钥?

我的服务器如何选择与 SSH 客户端一起使用的密钥?

目录中/etc/ssh/有三个不同的键:

  • ECDSA 密钥
  • RSA 密钥

  • ED225519 钥匙

我的服务器如何选择在连接期间使用哪一个?通常当我连接到它时,我只会看到 ECDSA 密钥。

答案1

目前OpenSSH默认使用ECDSA,但客户端可以请求特定的密钥算法,例如:

ssh -o HostKeyAlgorithms='ssh-rsa' server

或通过~/.ssh/config

Host server
  HostKeyAlgorithms ssh-rsa

在服务器端您可以启用或者注释掉中的算法/etc/ssh/sshd_config,例如:

HostKey /etc/ssh/ssh_host_rsa_key
# HostKey /etc/ssh/ssh_host_dsa_key
# HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

相关内容