echo "The program being executed......"
back_dir=/dengBao/logBack/systemLog
file_dir=/var/log
#定义备份文件名字
file_name=`date +%Y-%m-%d --date='-1 day'`
if [[ ! -d "${back_dir}" ]]; then
mkdir -p "${back_dir}"
fi
if [[ ! -d "${back_dir}/${file_name}" ]]; then
mkdir -p ${back_dir}/${file_name}
fi
cp -r ${file_dir}/* ${back_dir}/${file_name}/
find $back_dir/* -maxdepth 1 -type d -mtime +30 -exec rm -rf {} ;
echo "succeed"
添加定时任务
echo "0 0 * * * /opt/script/systemLogBack.sh >/dev/null &" >>/var/spool/cron/root2、定期清除docker日志
#!/bin/sh
echo "======== start clean docker containers logs ========"
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
echo "clean logs : $log"
cat /dev/null > $log
done
echo "======== end clean docker containers logs ========"
3、自动屏蔽攻击 IP
#!/bin/sh
DATE=$(date +%d/%b/%Y:%H:%M)
LOG_FILE=/usr/local/nginx/logs/demo2.access.log
iplist=$(tail -n 5000 $LOG_FILE | grep $DATE | awk '{count[$1]++} END{for(ip in count) print count[ip], ip}' | sort -rn -k1 |head -n10| awk '{print $2}')
for ip in $iplist
do
if [ $(firewall-cmd --zone=public --list-rich-rules |grep -c $ip) -qe 0 ];then
firewall-cmd --permanent --add-rich-rule="rule family=ipv4 source address=$ip drop"
fi
done



