普通用户之间免密互信时因权限问题致使配置失败
[student@master ~]$ ssh-copy-id user1@node1
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/student/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
user1@node1's password:
Permission denied, please try again.
user1@node1's password:
Permission denied, please try again.
user1@node1's password:
sh: line 1: .ssh/authorized_keys: Permission denied
从提供的信息来看,问题出在 .ssh 目录的所有权和权限 上:
问题分析
-
.ssh目录的所有者是root,而不是student:drwx------ 2 root student 6 Sep 23 18:27 .ssh- 虽然权限是
700(正确),但 所有者是root,导致student用户无法写入.ssh/authorized_keys。
- 虽然权限是
-
/etc/sudoers.d/student配置:student ALL=(ALL) NOPASSWD:ALL- 这表示
student用户可以无密码执行sudo,但 不影响.ssh目录的所有权问题。
- 这表示
解决方法
方法 1:修改 .ssh 目录的所有者
-
登录
node1并修复所有权:ssh root@node1 # 或者直接在 node1 上操作 chown -R student:student /home/student/.ssh-R确保递归修改.ssh及其内容的所有者。
-
验证权限:
ls -ld /home/student/.ssh正确输出:
drwx------ 2 student student 6 Sep 23 18:27 /home/student/.ssh -
重新尝试
ssh-copy-id:ssh-copy-id student@node1
方法 2:手动创建 .ssh 目录(如果 chown 不可行)
如果 chown 失败(例如 /home/student 本身属于 root),可以:
- 以
student用户登录并重建.ssh:ssh student@node1 rm -rf ~/.ssh # 删除错误的目录(确保备份原有数据) mkdir ~/.ssh chmod 700 ~/.ssh touch ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys exit - 重新复制公钥:
ssh-copy-id student@node1
根本原因
- 用户家目录或
.ssh目录被错误地创建为root所有,可能是由于:- 使用
root手动创建了/home/student/.ssh。 - 通过
sudo执行了某些操作,导致文件归属错误。
- 使用
预防措施
- 避免直接使用
root修改用户文件,优先使用sudo -u student:sudo -u student mkdir -p /home/student/.ssh sudo -u student chmod 700 /home/student/.ssh - 检查用户家目录的默认权限,确保
useradd或adduser正确配置。
验证修复
- 检查
.ssh所有权:
应显示:ssh root@node1 "ls -ld /home/student/.ssh"drwx------ 2 student student 4096 Sep 23 18:27 /home/student/.ssh - 测试免密登录:
如果无需密码即可登录,说明问题已解决。ssh student@node1
总结
- 关键问题:
.ssh目录属于root,导致student无法写入。 - 解决方案:使用
chown修正所有权,或让student用户重建.ssh目录。 - 后续建议:避免直接以
root操作用户文件,使用sudo -u指定用户。

浙公网安备 33010602011771号