在我的服务器上设置公钥/私钥时,我将遵循以下步骤:
替换example_user
chown -R example_user:example_user .ssh
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
但当我做第一行
chown -R david:david .ssh
我得到了错误消息:
changing ownership of '.ssh/authorized_keys': Operation not permitted
我遵循了指南的步骤,除了使用windows之外,所以我不得不使用windows scr来上传公钥,而不是unix命令行。
以下是文件信息位:
File: `.ssh/authorized_keys'
Size: 294 Blocks: 8 IO Block: 4096 regular file
Device: EDITED OUT Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2013-03-17 16:32:06.000000000 +0000
Modify: 2013-03-17 16:32:06.000000000 +0000
Change: 2013-03-17 19:06:14.000000000 +0000
发布于 2013-03-17 19:41:38
看起来您没有更改该文件所有权的权限。我猜,无论您从哪个文件系统中传输文件,都有不同类型的特权,这些特权没有被正确地传输,最终只会将文档拥有给root用户。使用sudo
再次尝试相同的chown命令(如in,sudo chown -R david:david /path/to/.ssh
)。在使用sudo
命令时,最佳做法是使用绝对路径(例如,/home/david/.ssh
),而不是使用相对路径( ./.ssh
)。
发布于 2020-01-16 09:13:57
就我的情况而言:
我试过了
lsattr authorized_keys
它的结果
-----a-------e-- authorized_keys
。
这里的a意味着只附加。
使用chattr -a authorized_keys
删除a以使其正常。
发布于 2013-03-18 07:08:13
su -c "chown david:david ~david/.ssh/authorized_keys"
此时,您将被问到root的密码,希望您知道这台机器的根密码。否则,你有陡峭的山要爬在你的前面,在缺乏苏多。
https://serverfault.com/questions/488663
复制相似问题