不停奔跑的Crontab 计划任务服务与iptables安全登录

一、Crontab 的功能

  1. 周期定时执行指定的命令或脚本
  2. 定期备份重要数据
  3. 定时启动停止服务

二、Crontab 服务与配置

  1. Crontab 服务安装:默认Linux系统是已经安装的
 # yum install -y cronie crontabs  #安装 Crontab 服务 
  1. Crontab 配置文件

    1. 系统配置文件 /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root 

# For details see man 4 crontabs
	
# Example of job definition:
# .---------------- minute (0 - 59)                 	   # 分钟
# |  .------------- hour (0 - 23)     					   # 小时
# |  |  .---------- day of month (1 - 31) 				   #  日
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...  #  月
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat                                #星期   
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed    
  1. 系统用户crontab 配置文件保存目录(crontab -e)
# /var/spool/cron/     # 所有用户的crontab 文件保存目录
# root: /var/spool/cron/root   # root 用户
# user: /var/spool/cron/user   #普通用户
  1. crontab工具命令
 # crontab -l  #查看创建的crontab任务
 # crontab -e  #编辑当前用户的crontab任务
 # crontab -u user -e  #编辑user的crontab 任务
 # crontab -r   # 删除所有cron 任务
4. 创建 crontab 定时任务 
占位符描述示例
*(星号)匹配范围内所有取值* * * * * command #每一分钟运行一次command
/(反斜杠)间隔多久执行一次*/2 * * * * command #每隔2分钟运行一次command
-(减号)指定范围内执行* 2-4 * * * command #凌晨两天到四点运行command
,(逗号)指定时间点执行* 2,4 * * * command #凌晨两天、四点分别运行command
  1. Crontab 日志: /var/log/cron

    Cron 日志保存在系统日志目录下 ;通过查看cron文件可以查看最近的cron 任务是否执行;

[root@version ~]# tail -10f /var/log/cron
Dec 10 11:20:01 version crond[8962]: (root) RELOAD (cron/root)
Dec 10 11:20:01 version crond[9149]: (root) CMD (date >>/root/echo.txt)
Dec 10 12:24:01 version crond[9493]: (root) CMD (bash /root/date.sh >>/root/echo.txt)
Dec 10 12:26:01 version crond[9500]: (root) CMD (bash /root/date.sh >>/root/echo.txt)

三、 创建定时备份任务

  1. 编辑备份脚本
############ bak_log.sh ##############
#!/bin/bash
base_dir=/data/backup
     
code_src=${base_dir}/code_src/$(date +%F_%H%M)
     
[ ! -d ${code_src} ] && mkdir -p ${code_src}
     
cd /data 
tar -cjpf ${code_src}/data.$(data +%F).tar.bz2 /var/log
#-p 保留原有属性
  1. 创建定时任务
 #crontab -e 创建定时任务
0 1 * * 7 sh /data/script/bak_log.sh  # 每个星期日凌晨1点备份数据
        
 ## 查看cron log
[root@version script]# tail -f /var/log/cron
 	Dec 10 13:35:10 version crontab[9678]: (root) REPLACE (root)
    Dec 10 13:35:10 version crontab[9678]: (root) END EDIT (root)
    Dec 10 13:36:01 version crond[9688]: (root) CMD (sh /data/script/bak_log.sh)
    Dec 10 13:37:01 version crond[9759]: (root) CMD (sh /data/script/bak_log.sh)
  1. 结合iptables 创建,防止多次尝试用户

    1. 根据 /var/log/secure 获取Failed 次数较多的用户;
    2. 根据要求将多次Failed 的用户保存到黑名单文件中
    3. 根据黑名单文件创建Iptables 策略

附录:Linux常见的日志

名称描述
d chrony#NTP log
- cron#crontab 日志
- firewalld#防火墙的日志
- lastlog#登陆记录保存日志
d libvirt
- maillog邮件日志
- messages#系统日志
d private
d qemu-gaKVM日志
d sambasamba日志
- secure#SSH服务信息
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值