如何创建新用户并免除该用户的密钥认证?

如何创建新用户并免除该用户的密钥认证?

1 我已经使用密钥身份验证配置了 Ubuntu 服务器,并且它运行良好。我已禁用密码身份验证以使密钥身份验证正常工作。始终通过远程终端或 putty 访问服务器。

现在所有用户帐户都可以使用身份验证密钥和密码登录。但现在我只想创建一个没有密钥身份验证的新用户。那么我该怎么做呢

但另一方面,这不应妨碍使用密钥认证的其他用户。

答案1

首先,允许密码验证sshd_config并不妨碍使用密钥。两者可以共存而不会出现问题。

至于仅允许用户进行密码验证,您应该使用Match组部分:

Match User foo
  PasswordAuthentication yes

如果您的用户名为foo

答案2

我很好奇为什么在配置公钥身份验证时必须禁用密码身份验证。SSH 将在默认使用密码之前尝试所有其他身份验证机制。这允许您有选择地对某些帐户使用密钥,对其他帐户使用密码。

下面,您可以看到在输入密码之前尝试了 5 种不同的身份验证方法:

ssh -v test01
...
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: gssapi-keyex
debug1: No valid Key exchange context
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure.  Minor code may provide more information
Credentials cache file '/tmp/krb5cc_2078676' not found

debug1: Unspecified GSS failure.  Minor code may provide more information
Credentials cache file '/tmp/krb5cc_2078676' not found

debug1: Unspecified GSS failure.  Minor code may provide more information


debug1: Unspecified GSS failure.  Minor code may provide more information


debug1: Next authentication method: publickey
debug1: Offering public key: /home/skohrs/.ssh/id_rsa
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Trying private key: /home/skohrs/.ssh/identity
debug1: Trying private key: /home/skohrs/.ssh/id_dsa
debug1: Next authentication method: password
skohrs@test01's password:
debug1: Authentication succeeded (password).
...

相关内容