[root@riyimei ~]# ll /etc/croncron.d/ cron.deny cron.monthly/ cron.weekly/cron.daily/ cron.hourly/ crontab[root@riyimei ~]# cat /etc/cron.deny[root@riyimei ~]# touch /etc/cron.allow[root@riyimei ~]#[root@riyimei ~]# ll /etc/cron.allow-rw-r----- 1 root root 0 Jul 15 01:45 /etc/cron.allow[root@riyimei ~]# su - liwmLast login: Wed Jul 15 01:02:54 CST 2020 on pts/1[liwm@riyimei ~]$[liwm@riyimei ~]$ crontab -eYou (liwm) are not allowed to use this program (crontab)See crontab(1) for more information[liwm@riyimei ~]$ exitlogout[root@riyimei ~]# echo "liwm" >> /etc/cron.allow[root@riyimei ~]# su - liwmLast login: Wed Jul 15 01:45:47 CST 2020 on pts/1[liwm@riyimei ~]$ crontab -eno crontab for liwm - using an empty onecrontab: no changes made to crontab[liwm@riyimei ~]$
cron.allow:定义允许使用crontab命令的用户
cron.deny:定义拒绝使用crontab命令的用户
这两个文件有优先级,普通用户在执行crontab命令的时候
1、系统先检测cron.allow文件是否存在;如果存在,则检测文件中存在的用户中是否有当前用户,检测通过则开始执行,检测不通过直接提示该用户没有执行权限
2、当系统没有检测到cron.allow文件存在的时候,则接下来检测cron.deny文件,看当前用户是否被deny掉,如果没有在cron.deny文件中检测到当前运行crontab的用户,则该命令可以成功执行,如果有检测到该用户在cron.deny文件中,则直接提示该用户没有执行权限
案例1:只允许root和www用户执行crontab命令,其他用户则禁止执行
在需要定义该策略的主机上面执行:
echo “www” > /etc/cron.allow
案例2:只拒绝anonymous用户执行crontab命令,其他用户都可以执行该命令:
rm -f /etc/cron.allow
echo “anonymous” > /etc/cron.deny
