shell check system last

简介:
linux系统用户登录信息监控
 
请各位读者提出宝贵的意见,谢谢先
 
#!/bin/bash
ifconfig=`cat /etc/sysconfig/network-scripts/ifcfg-eth0 | awk 'NR==4{print $0}' | awk -F '=' '{print $2}'`
##取Host IP Address
lastold=/tmp/last.old
date=`date +%d`
last | awk '{if ($6~'$date') print $0}'| grep -v '^reboot' | grep -v '^wtmp begins' > /tmp/last.new
##过滤出与当前日期匹配的last信息
if [ ! -f $lastold ]; then
        last | grep -v '^reboot' | grep -v '^wtmp begins' > $lastold
##用diff比对的文件,是执行last显示的信息,如果是第一次使用此脚本是不会有结果,大家仔细分析一下,脚本的执行建议crontab -e */1 * * * *这样效果会好点
else
        exit
fi
diff /tmp/last.old /tmp/last.new | grep '>' | sed 's/>//g' > /tmp/last.diff
##last.old与last.new做差异比对并将差异内容重定向到last.diff文件

function send_mail(){
/usr/sbin/sendmail -t <<Endmail
from:last@your domain.com.cn
to:your  mail@139.com
subject:$ifconfig user login
$lastmail
Endmail
}
##以上定义一个send_mail函数发邮件用
lastmail=`cat /tmp/last.diff | awk '{if ($3!~/172\.16\.[26]\../) print $0}'`
##lastmail的内容正则过滤掉我本身的IP ADDERSS
if [ -z "$lastmail" ]; then
        exit
else
        send_mail
fi
##判断lastmail有没有内容,如果有就证明有非法用户登录系统了,马上会send mail 给你
last | grep -v '^reboot' | grep -v '^wtmp begins' > /tmp/last.old
##取出当前last的所有信息为以后比对做准备









本文转自 走在右边 51CTO博客,原文链接:http://blog.51cto.com/gsliuyang/235698,如需转载请自行联系原作者

目录
相关文章
|
8月前
|
Shell Linux 应用服务中间件
ABAP 面试题:如何使用 ABAP 编程语言的 System CALL 接口,直接执行 ABAP 服务器所在操作系统的 shell 命令?
ABAP 面试题:如何使用 ABAP 编程语言的 System CALL 接口,直接执行 ABAP 服务器所在操作系统的 shell 命令?
115 0
|
2天前
|
存储 安全 Shell
【Shell 命令集合 系统管理 】Linux 显示系统中所有用户的登录记录 last命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示系统中所有用户的登录记录 last命令 使用指南
42 0
|
2天前
|
Shell Linux C语言
Linux中执行Shell的函数(popen,system,exec)介绍:分享一些常用的执行Shell的函数及其相关编程技巧和经验
Linux中执行Shell的函数(popen,system,exec)介绍:分享一些常用的执行Shell的函数及其相关编程技巧和经验
35 0
|
8月前
|
Shell Linux 应用服务中间件
使用 ABAP 编程语言的 System CALL 接口,直接执行 ABAP 服务器所在操作系统的 shell 命令
使用 ABAP 编程语言的 System CALL 接口,直接执行 ABAP 服务器所在操作系统的 shell 命令
82 0
|
关系型数据库 Shell API
Oracle PeopleSoft从XXE到system shell
本文讲的是Oracle PeopleSoft从XXE到system shell,几个月前,我有机会审核几个Oracle PeopleSoft解决方案,包括PeopleSoft HRMS和PeopleTool。
1887 0
|
SQL Shell Perl
leetcode 新题型----SQL,shell,system design
leetcode 主要是一个针对北美的coder人群找工作的代码练习网站,我在2015年初次接触这个网站的时候,总共只有200多道题目,是一个类似acm 的a题网站。这些年变化越来越大,主要是因为找工作当然是多样化的考核过程,leetcode 也逐渐与时俱进,推出了下面几个类别的联系,今天我们随便挑几个练习一下: 175.
1488 0
|
2天前
|
分布式计算 Hadoop Shell
使用shell脚本实现自动SSH互信功能
使用shell脚本实现自动SSH互信功能
13 1
|
2天前
|
Unix Shell Linux
轻松编写 AIX Shell 脚本
轻松编写 AIX Shell 脚本
14 1
|
2天前
|
监控 关系型数据库 Shell
Shell脚本入门:从基础到实践,轻松掌握Shell编程
Shell脚本入门:从基础到实践,轻松掌握Shell编程