使用 hushlogin 在 Linux 上启用/禁用上次登录消息
从终端(尤其是通过 SSH)登录 Linux 系统时,您可能已经注意到一些输出提供了有关上次登录的信息。
此外,有些系统还会显示更多信息,例如上次登录的IP地址,以及一些各种系统使用情况统计信息。如果您发现此消息令人讨厌或根本没有必要,您可以执行一个简单的配置来禁用该消息。
在本教程中,我们将逐步介绍如何在所有主要 Linux 发行版上启用或禁用最后登录消息,包括 hushlogin 方法。
在本教程中您将学习:
如何针对每个用户启用或禁用上次登录消息
如何在系统范围内启用或禁用上次登录消息
使用 hushlogin 分步说明在 Linux 上启用/禁用上次登录消息
如前所述,当您通过 SSH 连接到计算机时,默认情况下会显示最后一条登录消息,有时还会显示其他信息。检查下面的屏幕截图,查看我们在 Ubuntu 测试系统上获得的所有输出。
抑制消息后,我们完全消除了输出。您可以在下面的屏幕截图中看到这一点,其中成功的 SSH 登录不会生成任何额外的输出。
这看起来更干净,而且速度也更快一些。
可以在每个用户或系统范围内抑制最后的登录消息。根据您的偏好,请按照下面相应的分步说明进行操作。
单用户
要根据用户永久抑制上次登录消息,请在用户的主目录中创建一个隐藏的
.hushlogin
文件。例如,要禁止 linuxconfig 用户的上次登录消息,我们将运行以下命令:$ sudo touch /home/linuxconfig/.hushlogin
类似地,要禁止 root 用户的上次登录消息,我们将运行以下命令:
$ sudo touch /root/.hushlogin
全系统范围
注意:您需要登录系统的 root 帐户才能运行这些命令。
要永久抑制整个系统的上次登录消息,请先清空
/var/log/lastlog
文件:# > /var/log/lastlog
以上将清除所有上次登录信息。要使更改永久禁用对此文件的写访问:
# chattr +i /var/log/lastlog
您也可以选择清除使用
last
和lastb
命令显示的所有登录和错误登录尝试信息。为此,请运行:# >/var/log/wtmp # >/var/log/btmp
如果您希望系统永久停止存储此信息,请使上述文件不可变:
# chattr +i /var/log/wtmp /var/log/btmp
使用上述方法,您的系统应该停止显示上次登录消息,但仍可能显示其他信息。下面的截图显示我们的Ubuntu系统上不再显示上次登录的消息,但其他各种信息仍然显示。
结束语
在本教程中,我们了解了如何在 Linux 中禁用最后登录消息。这些说明应该适用于所有主要的 Linux 发行版,即基于 RPM 和 DEB 的系统。此配置可以在每个用户的基础上完成,也可以在系统范围内完成。请注意,有些系统除了上次登录消息之外还会显示其他信息,这需要通过 .hushlogin
文件方法禁用。