监测Linux上失败的登录方法是什么

发布时间:2022-01-21 13:58:21 作者:柒染
来源:亿速云 阅读:166

这篇文章的内容主要围绕监测Linux上失败的登录方法是什么进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!

在Linux服务器上重复的失败登录尝试可能表明有人企图闯入帐户,或者仅仅意味着有人忘了密码或输错密码。下面介绍了如何检查失败的登录尝试并检查系统的设置,查看何时锁住帐户以处理问题。

监测Linux上失败的登录方法是什么

您要了解的第一件事是如何检查登录是否失败。以下命令在Ubuntu和相关系统上使用的/var/log/auth.log文件中查找登录失败的迹象。有人尝试使用错误或拼错的密码登录时,失败的登录将显示以下行:

$ sudo grep "Failed password" /var/log/auth.log | head -3 
Nov 17 15:08:39 localhost sshd[621893]: Failed password for nemo from 192.168.0.7 port 8132 ssh3 
Nov 17 15:09:13 localhost sshd[621893]: Failed password for nemo from 192.168.0.7 port 8132 ssh3

您可以使用这样的命令按帐户汇总失败登录的情况:

$ sudo grep "Failed password" /var/log/auth.log | grep -v COMMAND | awk '{print $9}' | sort | uniq -c 
     22 nemo 
      1 shs 
      2 times:

该命令按用户名(grep输出的第9列)汇总失败的登录。它避免了查看含有“COMMAND”一词的行,跳过含有“Failed passwords”短语的查询(比如运行上面运行的命令的人)。 “times:”字符串表明重复尝试的次数比报告的次数还多。这些来自含有“消息重复5次:”的行,快速连续多次输错密码后,这些行可能被添加到日志文件中。

您可能要检查的另一个方面是失败的登录尝试来自何处。为此,如本例所示,将您关注的字段从第九个更改为第十一个:

$ sudo grep "Failed password" /var/log/auth.log | grep -v COMMAND | awk '{print $11}' | sort | uniq -c 
     23 192.168.0.7

比如说,如果您发现多个用户的失败登录来自单单一个系统,这可能特别可疑。

在RHEL、Centos和相关系统中,您可以在/var/log/secure文件中找到与失败登录有关的消息。您可以使用与上述基本相同的查询来计数。只需更改文件名,如下所示:

$ sudo grep "Failed password" /var/log/secure | awk '{print $9}' | sort | uniq -c 
      6 nemo

核查/etc/pam.d/password-auth和/etc/pam.d/system-auth文件中的设置。添加这样的行将强制执行您的设置。

检查faillog

您可能关注过faillog命令,但是该命令查看的/var/log/faillog文件如今似乎在许多系统上并没有使用。如果您使用faillog -a命令,会得到类似如下所示的在时间列中列出12/31/69的输出,很明显该文件并未使用。

$ faillog -a 
Login       Failures Maximum Latest                On 
 
root            0        0   12/31/69 19:00:00 -0500 
daemon          0        0   12/31/69 19:00:00 -0500 
bin             0        0   12/31/69 19:00:00 -0500 
sys             0        0   12/31/69 19:00:00 -0500

显示的日期和时间可以追溯到Unix的开始(01/01/70)――可能针对本地时区进行了更正。如果您运行下面显示的命令,可以证实文件不是空的,但不包含实际数据:

$ ls -l /var/log/faillog 
-rw-r--r-- 1 root root 32576 Nov 12 12:12 /var/log/faillog 
$ od -bc /var/log/faillog 
0000000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 
         \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0 
* 
0077500

如果faillog文件确实在使用中,您应该会看到最近的活动,并不提及1969错误提示。

如何回应?

失败登录的原因有很多。可能是您的一个用户在大写锁定键开启的情况下试图登录,却没有注意到。也许用户最近更改了密码,却忘了更改密码这回事,尝试使用旧密码。也许用户在尝试在其他系统上使用的密码。如果您在运行查询时经常出现某个特定的帐户,应调查一下。然而,偶尔失败的登录尝试很常见。

检查设置

要查看系统如何经过设置来处理失败的登录,请检查/etc/pam.d/common-auth文件。它用于带有Linux可插拔身份验证模块(PAM)的系统。该文件中的两个设置控制着暂时锁定帐户之前允许多少次失败的登录尝试以及锁住该帐户多长时间。

六次失败的登录尝试后,这样一行将使PAM锁住帐户。锁住时间将持续五分钟(300秒)。

auth required pam_tally2.so deny=6 unlock_time=300

感谢你的阅读,相信你对“监测Linux上失败的登录方法是什么”这一问题有一定的了解,快去动手实践吧,如果想了解更多相关知识点,可以关注亿速云网站!小编会继续为大家带来更好的文章!

推荐阅读:
  1. linux云服务器上怎么登录
  2. 解决postgresql登录失败的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:Linux系统如何查看端口占用

下一篇:nginx如何配置反向代理

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》