SLES12系统中/tmp下Kerberos票据文件莫名删除的排查方法
排查SLES12中Kerberos票据文件被莫名删除的方法
1. 用系统审计工具追踪删除进程
SLES12自带的auditd可以精准监控文件操作,是排查这类问题的首选:
- 启动auditd服务:
systemctl start auditd - 添加针对目标票据文件的审计规则(监控写入/删除操作):
auditctl -w /tmp/krb5cc_123456789 -p wa - 等待文件被删除后,查询审计日志,定位操作进程:
输出会包含删除文件的进程ID、执行用户、命令行等关键信息。ausearch -f /tmp/krb5cc_123456789 --raw | aureport -f -i
2. 检查所有tmp目录清理规则
除了/usr/lib/tmpfiles.d/tmp.conf,系统可能加载其他tmp清理配置:
- 查看所有自定义tmp规则文件:
ls /etc/tmpfiles.d/ - 合并显示所有tmpfiles配置,搜索是否有针对
krb5cc_*文件的清理规则:systemd-tmpfiles --cat-config | grep -i krb5 - 检查
systemd-tmpfiles-clean.timer的运行状态,确认是否有定时清理触发:systemctl list-timers systemd-tmpfiles-clean.timer
3. 排查Kerberos自身配置与票据状态
虽然票据过期不会直接删除文件,但可以排除相关可能性:
- 查看当前票据的过期时间,对比文件删除时间是否吻合:
klist -l /tmp/krb5cc_123456789 - 检查
/etc/krb5.conf中是否有关于ccache自动清理的配置,比如default_ccache_name或ccache_type相关设置。
4. 检查用户脚本与定时任务
用户的登录/退出脚本或定时任务可能包含清理逻辑:
- 查看当前用户的shell配置文件:
cat ~/.bashrc ~/.profile ~/.logout | grep -i krb5cc - 检查用户级定时任务:
crontab -l - 检查系统级定时任务目录:
ls /etc/cron.hourly/ /etc/cron.daily/ | xargs grep -l krb5cc 2>/dev/null
5. 监控系统日志与异常进程
实时监控系统日志,捕捉文件删除时的相关记录:
- 实时查看系统日志:
journalctl -f - 检查是否有安全工具(如杀毒软件、企业安全脚本)在扫描/tmp目录:
ps aux | grep -E "(clamav|scan|clean)"
内容的提问来源于stack exchange,提问作者MultiHunter
相关产品推荐
相关产品推荐

