SSH与DSA 2048位密钥

我需要通过ssh密钥build立安全连接,先决条件是:

  • DSAtypes
  • 位数:2048
  • 密码:是的

在我的Linux上,我无法创build这种密钥,该男子说:

DSA密钥必须正好符合FIPS 186-2规定的1024位

但是我发现在Putty中,我们可以创buildDSA 2048位密钥。 所以我试着把我的Putty生成的一对密钥放在我的用户的.ssh目录下。 那不行…

私钥看起来像这样:

PuTTY-User-Key-File-2: ssh-dss Encryption: aes256-cbc Comment: dsa-key-20150127 Public-Lines: 17 xxxxxxxxxxxxx Private-Lines: 1 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Private-MAC: xxxxxxxxxxxxxxxxxxxxx 

我认为身份validation不能使用这个密钥。

我的问题是:

  • 我需要格式化这个密钥的布局才能在CentOS上使用吗? 可能吗 ?
  • 如果没有,是否有任何其他方式来创build一对2048位DSA密钥与密码?

感谢您的帮助,并为我的坏英语感到抱歉

给定OpenSSH(即使当前版本为6.7),您将无法使用ssh-keygen工具创build2048位DSA密钥。 但是,您应该可以使用puttygen创build一个2048位的DSA密钥。 生成密钥后,将文本框中显示的文本复制到“OpenSSH authorized_keys file:”粘贴的公钥中,然后将其粘贴到服务器上用户主目录中的.ssh/authorized_keys中。 要使用密钥进行连接,您需要在您的客户端上运行选美器,并加载密钥。

另外,请注意~/.ssh目录和authorized_keys文件的文件权限。 如果它们可被别人写入, sshd将不使用authorized_keys文件,除非StrictModes选项已设置为no

(我可以确认这与CentOS 6.6和腻子0.63的作品)

更新:要将私钥导出为OpenSSH格式,请使用puttygen。 点击“转化”,然后点击“导出OpenSSH密钥”。 它创build的文件正确格式化为OpenSSH。 将该文件(您的密钥)放在客户端系统上,并注意权限。 然后您可以使用ssh -i [name of key file]连接到您的服务器。