当普通用户通过命令以 root 身份登录时,是否有可能su
发送电子邮件通知?
答案1
一个解决方案是创建一个发送电子邮件并执行 shell 的脚本:
#!/bin/bash
echo "sudo was used" | mail -s "sudo notification" your@mailaddress
exec bash
确保保护此脚本免受任何非特权用户的访问(请参阅这个答案)!
然后强制特权用户乔通过限制权限执行脚本sudo
。
例如/etc/sudoers
:
joe ALL = (root) /absolute/path/to/your/script.sh
现在乔可以sudo /absolute/path/to/your/script.sh
在您收到通知时调用并获取 root shell。
然而,请注意,一旦乔获取 root shell 后他就拥有了你的系统,也就是说,没有什么可以阻止他修改你的脚本、sudoers 文件等等。