我想与服务器端解决方案进行一些合作。因此,服务器表示它不支持DSA,这是因为openssh客户端默认不激活它:
OpenSSH 7.0和更高版本类似地禁用ssh-dss(DSA)公钥算法。它也很弱,我们建议不要使用它。
因此,要在服务器端解决此问题,我应该激活其他密钥算法,例如RSA o ECDSA。我只是在局域网中的服务器上遇到了这个问题。我建议以下内容:
更新openssh:
yum update openssh-server
如果存在sshd_config.rpmnew,则在sshd_config中合并新配置。
确认/ etc / ssh /中有主机密钥。如果没有生成新的,请参阅man ssh-keygen
。
$ ll /etc/ssh/
total 580
-rw-r--r--. 1 root root 553185 Mar 3 2017 moduli
-rw-r--r--. 1 root root 1874 Mar 3 2017 ssh_config
drwxr-xr-x. 2 root root 4096 Apr 17 17:56 ssh_config.d
-rw-------. 1 root root 3887 Mar 3 2017 sshd_config
-rw-r-----. 1 root ssh_keys 227 Aug 30 15:33 ssh_host_ecdsa_key
-rw-r--r--. 1 root root 162 Aug 30 15:33 ssh_host_ecdsa_key.pub
-rw-r-----. 1 root ssh_keys 387 Aug 30 15:33 ssh_host_ed25519_key
-rw-r--r--. 1 root root 82 Aug 30 15:33 ssh_host_ed25519_key.pub
-rw-r-----. 1 root ssh_keys 1675 Aug 30 15:33 ssh_host_rsa_key
-rw-r--r--. 1 root root 382 Aug 30 15:33 ssh_host_rsa_key.pub
在/ etc / ssh / sshd_config中验证HostKey配置。它应该允许配置RSA和ECDSA。(如果默认情况下所有注释都被注释,则也将允许RSA,请参阅man sshd_config
HostKey部分)。
# HostKey for protocol version 1
#HostKey /etc/ssh/ssh_host_key
# HostKeys for protocol version 2
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
对于客户端,只需执行以下操作即可为ssh创建密钥(而不是问题中的DSA):
ssh-keygen
此后,由于存在比ssh-dss(DSA)更多的选项,因此客户端openssh(> = v7)应该与RSA或更好的算法连接。
这是另一篇好文章。
这是我回答的第一个问题,欢迎提出建议:D。