帐户安全加固导致crontab -l无法输出
一、故障现象
数据库用户反馈在oracle用户下执行crontab -l 无法正常输出结果,而且有错误提示:Authentication token is no longer valid; new one required ,You (oracle) are not allowed to access to (crontab) because of pam configuration. 。而其他用户执行正常。
二、故障处理与解决
由于提到了pam 配置,所以先是查看了/etc/pam.d/crond 配置和正常主机做对比,发现并无异常。而且细想下pam配置一般针对所有用户,很少针对单个用户的。所以再想到就是cron对应的文件是否权限发生了变化、帐号是否被锁定或都密码过期。
查看/var/spool/cron/oracle文件,发现并不存在权限问题。接个逐项查看时,通过chage -l 发现了问题:
1[root@irora11 cron]# chage -l oracle
2Last password change : Mar 14, 2016
3Password expires : Jun 12, 2016
4Password inactive : never
5Account expires : never
6Minimum number of days between password change : 0
7Maximum number of days between password change : 90
8Number of days of warning before password expires : 7
查看发现oracle密码已经了过期时间。解决方法只是设置为永不过期或都修改掉oracle用户的密码。为了进一步印证问题,通过设置永不过期尝试发现问题解决:
1[root@irora11 ~]# chage -M 99999 oracle
2[root@irora11 ~]# su - oracle
3[oracle@irora11 ~]$ crontab -l
40 3,7,11,15,19,23 * * * /home/oracle/rman_archive_delete.sh
50 2 * * * /home/oracle/clean_audit_file.sh
600,20,40 * * * * cd ${HOME}/HWAlarm; ./crontabAlarm.sh
705 * * * * cd $HOME/KpiConsole/monitor/agent/shell; ./monitor_kpi.sh >/dev/null 2>&1
8*/30 * * * * sh /home/oracle/hwscript/diskYWDB/diskCheck.sh >/dev/null 2>&1
90 2 * * * /home/oracle/clean_trace_file.sh
100 2,4,6,8,10,12,14,16,18,20,22,23 * * * /home/oracle/rman_archive_delete_new.sh
1110 8-22/1 * * * /home/oracle/execute_alarm_recharge.sh >/dev/null 2>&1
三、总结
安全加固是把双刃剑,一方面确实加强了主机的安全性,另一方法也很容易造成现网问题。目前现网中已遇到加固引起的有修改密码三到四次认证、ssh登陆异常、ulimit修改不生效等等很多问题。所以安全部门在做加固时做好相应的测试工作比较必要。
捐赠本站(Donate)
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))
- Author: shisekong
- Link: https://blog.361way.com/crontab-auth-valid/5110.html
- License: This work is under a 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. Kindly fulfill the requirements of the aforementioned License when adapting or creating a derivative of this work.