我全新安装了 OpenSSH。在/etc/ssh/sshd_config
我有以下条目:
Banner /etc/issue.net
我已使用以下方式重新启动了 SSH 守护程序:sudo /etc/init.d/ssh restart
。现在,每当我尝试运行ssh user@localhost
它时,它都工作得很好,只是它不显示预登录横幅。
什么会导致这个问题?
答案1
可能性:
- sshd 正在读取与您编辑的配置文件不同的配置文件
- sshd 正在 chroot 环境中运行,该环境不包含您指定的文件
- sshd 并没有真正重新启动,可能是因为您有 systemd 并且 ssh 的 init 脚本在意识到 upstart 没有运行时退出(在本例中,使用
systemctl restart ssh.service
)。 - 您使用的是 ssh 协议 1 而不是 2。
答案2
我没有看到这里提到,但即使启用了横幅sshd_config
并且完全重新启动了 sshd,用户自己~/.ssh/config
也可以使用以下方法抑制横幅:
LogLevel QUIET
由于操作员采取了解决方案,但没有人提到这一点,我想在此处添加这一点未来的搜索者
答案3
Ubuntu 14.04 使用upstart
,并且在运行时/etc/init.d/ssh restart
不会重新启动,因此无法识别您对.相反,运行这个:sshd
upstart
sshd
/etc/ssh/sshd_config
# restart ssh
您可以通过运行来验证 sshd 是否已重新启动
# ps -f -p $(pgrep sshd)
或者
# ps -f -p $(status ssh | awk '{ print $NF }')
并检查启动时间 (STIME) 是否比您运行重新启动命令的时间更新。