寻找最新的成功login和失败的尝试到CentOS服务器

我正在寻找一个日志文件或任何服务来报告由于用户名/密码错过匹配失败的最新login尝试。 CentOS有没有这样的工具? (内置是首选)

我的第二个问题,更一般地说,我需要一个渗透到我的服务器的日志文件。 理想情况下,这个日志应该包含所有的尝试,包括login,httpd活动和其他传统的开放端口。

问题在这里是不重要的,但是一个很简单的答案:也许你应该检查/ var / log / secure(例如grep for“failed”)。

在Linux中, last命令显示成功的login尝试并显示会话信息(点,源,date和长度)。

lastb命令logging所有不良login尝试。 两者共享相同的man页,但不同之处在于last读取二进制文件/var/log/wtmplastb默认读取/var/log/btmp文件。

这些文件的范围取决于您的日志轮转计划,但它应该跨越几个星期。 大多数发行版将每月轮换/var/log/wtmp ,因此您可以读取以前的logging,通常通过指定具有-f参数的文件列出为/var/log/wtmp.1last -f /var/log/wtmp.1

这是一个古老的线程,但我得到了类似的任务,所以在我的情况下,这是一个日志条目

 Nov 15 17:14:47 megatron sshd[4768]: Failed password for git from 192.168.122.1 port 49227 ssh2 

所以我们可以这样做,如果我们确定用户是静态的

 #!/bin/bash LOG=/var/log/secure MESSAGE="Failed password for git" grep -i "$MESSAGE" "$LOG 

如果我们知道每个用户的基础上

 #!/bin/bash LOG=/var/log/secure if [ -n "$1" ] then NEWUSER="$1" else NEWUSER="root" fi MESSAGE="Failed password for $NEWUSER" grep -i "$MESSAGE" "$LOG" 

所以脚本应该执行

 [root@megatron bash1]# ./failedlogin.sh git 

或更简单的方法

 #!/bin/bash LOG=/var/log/secure MESSAGE="Failed password for" grep -i "$MESSAGE" "$LOG"