我购买了 Digital Ocean Droplet 并启用了 SSH 身份验证而不是密码身份验证。我能够正确配置根 SSH 密钥,并可以在根用户下登录我的笔记本电脑,但我很难为新创建的用户启用 SSH 密钥访问。我进入文件/etc/ssh/sshd_config
并添加了AllowUsers root mynewuser
,但这不允许我使用 进行登录ssh mynewuser@ipaddress
。
我最终能够使用来自 DO 论坛的以下命令使其工作:
mkdir /home/mynewuser/.ssh
chmod 0700 /home/mynewuser/.ssh/
cp -Rfv /root/.ssh /home/mynewuser/
chown -Rfv mynewuser.mynewuser /home/mynewuser/.ssh
chown -R mynewuser:mynewuser /home/mynewuser/
gpasswd -a mynewuser sudo
echo "mynewuser ALL=(ALL) NOPASSWD: ALL" | (EDITOR="tee -a" visudo)
service ssh restart
usermod -s /bin/bash mynewuser```
每次我只想让某人能够使用他们的 SSH 密钥登录时,这似乎需要做很多工作,而且它也不允许用户拥有唯一的 SSH 密钥,而是必须使用在服务器设置期间创建的 SSH 密钥(与 root 使用的密钥相同)。有没有更简单的方法可以向非 root 用户授予 SSH 访问权限,如果有,是否还有一种方法可以为他们提供唯一的密钥?