无密码 ssh 在 CentOS 6.4 中不起作用?

Vik*_*dia 3 ssh centos

我正在通过此链接设置无密码登录,但无法正常工作。

当我这样做时,ssh localhost它总是要求输入密码。

我也提到了这个问题:ssh password less authentication does not work

[impadmin@pearl ~]$ ssh localhost
The authenticity of host 'localhost (::1)' can't be established.
RSA key fingerprint is 6c:d3:3b:cc:05:7f:10:e8:17:cc:4c:14:be:01:bb:f7.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
impadmin@localhost's password:
Permission denied, please try again.
impadmin@localhost's password:
Permission denied, please try again.
impadmin@localhost's password:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
Run Code Online (Sandbox Code Playgroud)

更新

ls .ssh/ -l
total 16
-rw-------. 1 impadmin impadmin  396 Apr  9 17:04 authorized_keys
-rw-------. 1 impadmin impadmin 1675 Apr  9 17:03 id_rsa
-rw-r--r--. 1 impadmin impadmin  396 Apr  9 17:03 id_rsa.pub
-rw-r--r--. 1 impadmin impadmin  391 Apr  9 17:05 known_hosts
Run Code Online (Sandbox Code Playgroud)

我正在尝试在同一台机器上实现无密码登录,以便用户 impadmin 安装 Hadoop。

Jen*_*y D 7

为了使公钥认证工作,SSH 守护进程需要确保authorized_keys 文件中的密钥不能被所有者(当然还有root)以外的任何人篡改。

这意味着必须限制用户~/.ssh目录的写入权限,以及通往它的所有目录,/以便只有所有者(和根)可以写入它们。因此,如果您的主目录是/home/impadmin,则需要检查以下内容:

  • /home应该是 modedwrx-rx-rx并且由 root 拥有
  • /home/impadmin应该由拥有impadmin并且只允许写访问权限impadmin- 组或其他人没有写访问权限。您可以选择是否允许组/其他人的读/执行访问,但如果您允许他们写访问,那么公钥将不起作用。
  • /home/impadmin/.ssh应该有权限drwx------并归impadmin
  • /home/impadmin/.ssh/id_rsa应该有权限-rw-------并归impadmin
  • /home/impadmin/.ssh/id_rsa.pub并且/home/impadmin/.ssh/id_rsa.pub必须归impadmin任何其他用户所有,并且没有任何其他用户的写权限。它们可能可读,但不可写。

如果任何目录或文件可由除 impadmin 之外的其他用户写入,SSH 将认为这是一种可能的入侵,并且不允许使用密钥登录。