我知道您可以在启动 SSH 会话时通过PrintLastLog no
和禁用上次登录消息和每日消息。PrintMotd no
/etc/ssh/sshd_config
/etc/ssh/sshd_config
但是,我在访问的系统中没有修改权限。有没有办法只为我的本地用户PrintLastLog no
设置?PrintMotd no
答案1
是的,你可以,将Match User
指令添加到你的 sshd_config 文件中,如下所示:
Match User root
PrintlastLog no
PrintMotd no
该Match
指令还可适用于Group
并Address
追溯匹配 GEOS/Unix 组和 IP 地址。
更新:
如果每个用户无法访问 sshd_config,则只需创建一个空文件,以$HOME/.hushlogin
防止 bash 在交互模式下输出这些警报。这也适用于使用login(1)
telnet 和 screen 会话等的其他系统。
更新 2:
Banner
要在每个会话中抑制sshd 的输出,请使用ssh -q <host>
或包含LogLevel quiet
在 ~/.ssh/config 中
答案2
并非所有的 OpenSSH 实现(如 Ubuntu 中的实现)都允许打印模式或者打印最后日志在匹配用户部分。
你可能会发现这个 askubuntu 问题如果他/她遇到如下错误,可以使用一些解决方法:
/etc/ssh/sshd_config line 97: Directive 'PrintMotd' is not allowed within a Match block