没有密码的SSH不适用于某些用户

我有一个新的RHEL4 Linux机器,用于将数据复制到带有scp的旧Solaris 2.6和RHEL3 Linux机器上。 我发现,使用相同的设置,它适用于某些用户,但不适用于其他用户。 对于用户简,这工作正常:

jane @ host1 $ ssh -v remhost

debug1: Next authentication method: publickey debug1: Trying private key: /mnt/home/osborjo/.ssh/identity debug1: Offering public key: /mnt/home/osborjo/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 277 debug1: read PEM private key done: type RSA debug1: Authentication succeeded (publickey). 

对于用户插孔它不:

jack @ host1 ssh -v remhost

 debug1: Next authentication method: publickey debug1: Trying private key: /mnt/home/oper1/.ssh/identity debug1: Offering public key: /mnt/home/oper1/.ssh/id_rsa debug1: Authentications that can continue: publickey,password,keyboard-interactive 

我已经看过所有的密钥和文件的权限,他们看起来是一样的。 由于我使用NFS装载的主目录,因此远程主机和本地主机的密钥都位于同一目录中。 这是事情寻找简:

jane @ host1 $ ls -l $ HOME / .ssh

 -rw-rw-r-- 1 jane operator 394 Jan 27 16:28 authorized_keys -rw------- 1 jane operator 1675 Jan 27 16:27 id_rsa -rw-r--r-- 1 jane operator 394 Jan 27 16:27 id_rsa.pub -rw-rw-r-- 1 jane operator 1205 Jan 27 16:46 known_hosts 

对于用户插孔:

jack @ host1 $ ls -l $ HOME / .ssh

 -rw-rw-r-- 1 jack engineer 394 Jan 27 16:28 authorized_keys -rw------- 1 jack engineer 1675 Jan 27 16:27 id_rsa -rw-r--r-- 1 jack engineer 394 Jan 27 16:27 id_rsa.pub -rw-rw-r-- 1 jack engineer 1205 Jan 27 16:46 known_hosts 

作为最后的努力,我将authorized_keys,id_rsa和id_rsa.pub从jill复制到jack,并且用vi更改了authorized_keys和id_rsa.pub中的用户名。 它仍然没有工作。 这两个用户似乎有些不同,但我无法弄清楚它是什么。

我find了答案。 这是在用户插孔的主目录的权限。 用户插孔在主目录上具有组写入权限,而jane则没有。 问题是,Web上的所有教程都指定了.ssh目录和文件的权限,但未能提及用户目录本身需要具有closures组的写权限。

你有没有尝试限制.ssh目录的权限? 因为在大多数情况下,这将工作。 不知道这个“严格”的configuration是在哪里,但我之前几次遇到同样的问题,并更改.ssh目录的权限修复了问题。

我有同样的问题,但与用户ssh'ing另一个本地用户在同一个系统。

所有权限与两个用户相同。

实验表明,用户A和用户B可以彼此login,但都不能以用户C连接。

事实certificate,用户C(作为系统用户)没有影子项目,虽然他有一个密码input。

希望这会对稍后有同样问题的人有所帮助。

系统:OpenIndiana oi_151a

我使用的是实际上是RHEL的CentOS。 我发现自己在.ssh目录/文件的SELinux竞争中是错误的。

查看/var/log/audit/audit.log了解有关SELiunx活动的详细信息。