Linux 每月登录报告

Linux 每月登录报告

是否有命令可以查明是否有人以系统 ID(bin、sshd、rpc 等)之一登录到机器?

我已经尝试过 last、faillog、ausearch 和 aureport(这个效果最好),但我想要更多细节。

答案1

我编写了一个小的 bash 脚本,并把它放在 crontab 任务中,以查看哪些人的帐户因缺少登录而需要禁用。我相信还有更好的方法,但这个方法快捷又简单。

#!/bin/bash
grep users /etc/group | awk -F ":" '{print $4}' | sed 's/,/\
/g' > list
for fn in `cat list`; do lastlog -u $fn | grep Never; done
rm list
echo
lastlog -b 30 | grep -iv Never | awk '{if (NR!=1) {print $1" last logged in on "$5" "$6" at "$7}}'

在你的情况下,你不想过滤掉像我这样的任何东西;所以不会有一个简单的

lastlog -b 30

(显示上个月)就够了吗?结果如下,告诉我没有人登录过系统帐户。

daemon                                     **Never logged in**
bin                                        **Never logged in**
sys                                        **Never logged in**

相关内容