Crontab Linux 定时任务管理
Contents
简介
#
# 命令示例
crontab -e # 编辑当前用户的 crontab 内容
crontab -l # 查看当前用户的 crontab 内容
crontab -r # 删除当前用户的 crontab 内容
0 0 12 * * SUN /home/user/nmap_automation/pythontest/nmap_cmd.sh
可以使用 crontab
命令,也可以直接修改 /etc/crontab
文件。
重启 crond
服务
service crond restart
参考资料
- crontab 定时任务
http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/crontab.html
注意事项
最小控制单位
crontab 能控制的最小时间间隔时每分钟 1 次
如果是 每分钟 1 次以下的控制,可以在 shell 脚本中用 sleep 控制。
正确的输入任务
在 CentOS 7 的测试中 crontab 在添加任务时不需要指定用户
起初我们使用 * * * * * root /home/team/show_date.sh
时发生了许多错误。
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
* * * * * /home/team/show_date.sh
其中 show_date.sh
的内容为
echo `date` >> /tmp/cron_test.log
For details see man 4 crontabs
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# 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 直接修改 /etc/crontab
文件
除了使用 crontab 来操作以外
我们也可以通过直接覆盖 /etc/crontab
文件 (无需重启 cron 服务) 来强制构造计划任务。
一个可用的修改如下
# vim /etc/crontab
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
* * * * * root echo `date` >> /tmp/cron_test.log
2 在 /var/spool/cron/
目录下新建文件
redis未授权访问利用
http://www.00theway.org/2017/03/27/redis_exp/
redis 利用脚本-执行命令、文件上传、目录猜解
https://github.com/00theway/redis_exp/blob/master/redis_exp.py
Redis 未授权访问漏洞利用总结
Redis 未授权访问配合 SSH key 文件利用分析
http://blog.knownsec.com/2015/11/analysis-of-redis-unauthorized-of-expolit/
Redis 未授权访问的利用
1 上传 webshell (写文件)
2 执行命令 (cron 计划任务 + 写文件)
3 远程登陆 (写文件 + ssh key)
4 目录枚举
5 数据库数据获取 (缓存)
6 代码执行 (Lua)
7 获取系统信息 (Redis info)
辅助工具
crontab calculator
https://crontab.guru/#
https://www.freeformatter.com/cron-expression-generator-quartz.html
Leave a Reply