sshd_config 文件中的 AllowUsers 后面没有任何内容吗?

sshd_config 文件中的 AllowUsers 后面没有任何内容吗?

我没有办法测试这一点,也无法在网上找到答案。如果我AllowUsers在 sshd_config 文件中输入任何内容,那么它的行为是允许所有人通过 SSH 进入计算机,还是拒绝所有人?

例子:

// all of sshd_conf file...

AllowUsers

答案1

如果我AllowUsers输入 sshd_config 文件但后面没有任何内容,那么它的行为是允许每个人通过 SSH 进入计算机,还是拒绝每个人?

尝试一下有那么难吗?

echo "AllowUsers" > /etc/ssh/sshd_config
systemctl restart sshd
systemctl status sshd # no error
ssh user@localhost # succeed

所以是的,您可以将AllowUsers选项放在没有参数的情况下,并且它的行为就像没有选项一样(如果您之前没有指定任何选项,则将允许所有用户DenyUsersAllowUsers

答案2

测试 sshd_config 文件的一个简单方法是使用标志-T

user@machine:~$ echo "Allowusers" > sshd_config
user@machine:~$ sshd -T -f sshd_config
sshd_config line 1: no argument after keyword "Allowusers"
sshd_config: terminating, 1 bad configuration options

尽管有前面的答案,但似乎AllowUsers不允许使用没有用户的选项。 如果必须使用此选项,解决方案是使用模式!*(拒绝所有用户)或*(允许所有用户):

user@machine:~$ echo "Allowusers !*" > sshd_config
user@machine:~$ sshd -T -f sshd_config
user@machine:~$

相关内容