在我的 Solaris 服务器 (SunOS 5.10) 中,每 10 分钟就会为/etc
.
文件内容与 相同/etc/shadow
。假设john
和ron
是两个用户,那么文件将每 10 分钟创建一次,为shadow_john_1404011142
和shadow_ron_1404011142
(1404011142
下一个文件所在的当前时间为1404011152
)。如何终止创建这些文件的进程?
答案1
我会推断最后一句话的意思是“我如何杀死找到正在创建这些文件的进程[以便我可以杀死它]?”
假设系统的 /、/etc 和 /etc/shadow 目录和文件的权限都是正常的,类似于:
# ls -ld / drwxr-xr-x 31 根 根 1024 九月 30 13:26 / # ls -ld /etc drwxr-xr-x 76 根系统 215 十月 28 23:05 /etc # ls -al /etc/shadow -r-------- 1 根系统 294 十月 15 16:09 /etc/shadow #
即只有 root 可以在 /etc 中创建文件并可以读取 /etc/shadow,那么创建文件的进程必须具有 root 权限才能读取 /etc/shadow 文件并创建副本(对此进行交叉检查) /etc/shadow 的副本是否属于 root)。
这在 Solaris 系统中不是正常行为。我的第一次疯狂的猜测(甚至不是 SWAG),根据发生的规律性,是有一个根 crontab 条目或具有提升权限的用户 crontab 条目出于某种奇怪的原因执行此操作。也许一些临时密码同步。如果是这样,杀死它只是注释掉 crontab 条目(假设您在了解更多信息后仍然想这样做)。我的第二个猜测这是因为这是一个区域,并且执行此操作的 crontab 条目位于全局区域中。在这种情况下,您就是并且应该是 SOL。我的第三个建议是使用 dtrace 监视 /etc 目录并尝试捕获实际进程。如何做到这一点是另一个问题。