使用putty创buildpub / priv键,创build.ssh文件夹和authorized_keys,仍然不起作用

  1. 在我的电脑上使用puttygen创build公钥/私钥。
  2. 把公钥放在服务器上的.ssh / authorized_keys文件夹中
  3. 设置pageant.exe在我的电脑上使用pk。
  4. 当我运行选美,并使用腻子连接它仍然要求我的密码。

我错过了什么?

我做了一个:chmod 700上的.ssh文件夹chmod 600在authorized_keys文件

谢谢!

请检查Linux服务器上的/ var / log / secure或/ var / log / auth以获取密钥不被接受的信息。

另外,您用于连接的用户的homedir中的.ssh目录(并由其拥有)?

如果要连接到root用户,可以在/ etc / ssh / sshd_config中禁用它。

请注意,必须在SSH服务器configuration(通常是/etc/ssh/sshd_config )中启用公共密钥身份validation。 检查线路:

  RSAAuthentication yes 

然后重新启动SSH服务器。

如果没有帮助,请尝试通过以debugging模式运行服务器(如果可以的话)来debugging问题。 这里有一个教程:

http://blog.codefront.net/2007/02/28/debugging-ssh-public-key-authentication-problems/

确保服务器上的密钥和授权密钥文件的权限是正确的。

 chmod 700 ~/.ssh chmod 600 ~/.ssh/* 

简单的事情,烧我…确保你的钥匙是在一个(长)在authorized_keys行。

回顾一下你的情况,我似乎记得在Linux上通过ssh-keygen生成的密钥与putty不兼容。 首先需要使用puttygen.exe来转换密钥(我想你可以通过putty GUI来完成)。

所以也许你可以试试:

  1. 使用ssh-keygen在服务器上生成一些密钥 – 不要将它们保存到服务器的.ssh目录中。
  2. cat id_dsa.pub >> ~/.ssh/authorized_keys
  3. id_dsa.pubid_dsa复制到您的计算机上。
  4. 使用腻子将其转换为适当的格式。
  5. 将这些密钥设置为您的计算机的公共和私有密钥。

我似乎记得,当用户主目录是组/世界可读的有问题。 这阻止了工作的关键。