我正在尝试设置我的 sshd 以接受没有系统用户帐户的用户。我的方法是使用 DSA 公钥/私钥对。
- 我生成了一对密钥:
$ ssh-keygen -t dsa
- 我将 id_dsa.pub 复制到了 sshd 运行的服务器机器上。
- 我将 id_dsa.pub 中的行附加到我将为每个“外部”用户使用的单个现有系统用户帐户的 ~/.ssh/authorized_keys 中。
- 我尝试以“外部”用户身份通过 ssh 进入我设置了 authorized_keys 的机器,但失败了。
我在这里遗漏了什么?
谢谢。
答案1
可能是权限。
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/authorized_keys
答案2
由于您只使用公钥认证,因此请
/etc/ssh/sshd_config
按如下方式修改服务器中的文件:
PubkeyAuthentication yes
HostbasedAuthentication no
ChallengeResponseAuthentication no
GSSAPIAuthentication no
PasswordAuthentication no
重新启动 sshd 守护进程就可以了。