服务器总免不了被攻击的问题。想要写一个cron每天执行,将当天重复登录失败的ip加入hosts.deny。问题是如何才能查看当日失败的记录?我只知道lastb,但是不知道如何从中查找当日的记录并截出ip。
lastb输出格式如下:
[root@centos ~] lastb | less
能贴出一段登录失败的日志吗?用cat,grep,awk几个命令是可以实现的,不知道具体格式不能正确写出匹配shell
2016-5-14 10:01:36 补充一个脚本。
创建一个log_login_by_ip.sh文件,内容如下:
#!/bin/bash
clear
if [[ $# -eq 0 ]]
then
week=(`env LANG=en_US.UTF-8 date '+%a'`)
month=(`env LANG=en_US.UTF-8 date '+%b'`)
day=(`env LANG=en_US.UTF-8 date '+%d' | grep -ioP "[1-9]+"`)
# test data
#week=Fri
#month=May
#day=13
lastb -a|grep -iE $week"[ ]+"$month"[ ]+"$day|awk -F"[ ]+" '{print $NF}'|sort|uniq
fi