我有以下 sshd 配置文件:
/etc/ssh/sshd_config:
Include /etc/ssh/sshd_config.local
Protocol 2
PermitRootLogin no
StrictModes no
PasswordAuthentication no
PrintMotd no
Banner /etc/ssh-banner
Subsystem sftp /usr/lib/openssh/sftp-server
/etc/ssh/sshd_config.local
Match Address 10.0.1.17
Banner none
如果我测试此配置,它不会清除横幅:
% sudo sshd -T -C addr=10.0.1.17 | grep -i baner
banner /etc/ssh-banner
但如果我将 Match 语句移至主文件,它就可以正常工作:
Protocol 2
PermitRootLogin no
StrictModes no
PasswordAuthentication no
PrintMotd no
Banner /etc/ssh-banner
Subsystem sftp /usr/lib/openssh/sftp-server
Match Address 10.0.1.17
Banner none
sudo sshd -T -C addr=10.0.1.17 | grep -i banner
banner none
% sudo sshd -T | grep -i banner
banner /etc/ssh-banner
我尝试将 include 语句移至文件开头,并尝试使用 sshd_config.d/ 目录,但没有成功。
答案1
事实证明,这是 OpenSSH 便携式中的一个已知错误: