我可以使用 root 登录到云上的 Linux 节点。我创建了另一个用户 web,并且我想将 ssh 密钥添加到该用户。这是我到目前为止所尝试过的(作为root):
mkdir -p /home/web/.ssh
cp ~/.ssh/authorized_keys /home/web/.ssh/authorized_keys
chown web /home/web/.ssh
chgrp web /home/web/.ssh
chown -R :web /home/web/.ssh
chmod -R g+w /home/web/.ssh
find /home/web/.ssh -type d -exec chmod g+s '{}' \;
systemctl reload sshd
我很确定我过度设置了权限,但无论如何我仍然无法以 Web 用户身份 ssh 进入服务器。 Box 是 Digital Ocean 上的 Fedora 21。
我缺少什么?
答案1
你的权限太宽松了。
chmod u=rwx,go= .ssh # 0700
chmod u=rw,go= .ssh/* # 0600
我将假设您指定的用户/组对于使用 /home/web 作为其主目录的任何内容都是正确的值。
要诊断此类错误,最好查看服务器上的守护程序/身份验证日志。查看标签SSH点击这里了解更多详情。