![检查谁可以“sudo -u myaccount...”](https://linux22.com/image/152577/%E6%A3%80%E6%9F%A5%E8%B0%81%E5%8F%AF%E4%BB%A5%E2%80%9Csudo%20-u%20myaccount...%E2%80%9D.png)
如果unix帐户的所有者(无root)可以使用sudo检查哪些非root用户可以像他一样运行命令,有没有办法?
/etc/sudoers 不可读。
为了我的个人安全,我希望能够检查谁可以使用 sudo 访问我的帐户。
例如,如果用户 A 可以运行“sudo -u myaccount -i”或任何命令。
答案1
您必须列出所有用户,每个人都可以阅读的列表/etc/密码;要获得清晰的列表,您可以执行以下操作:
cat /etc/passwd |cut -d : -f 1 > /tmp/userlist.txt
这将保存所有用户/tmp/用户列表.txt,之后您可以执行一个简单的脚本来检查用户是否是 sudoer ,就像命令一样sudo -l -U 用户名,您可以检查用户是否拥有这些权限。例如,您可以执行以下脚本:
#!/bin/bash
cat /etc/passwd |cut -d : -f 1 > /tmp/userlist.txt
while read line
do
sudo -l -U $line
done < /tmp/userlist.txt
rm /tmp/userlist.txt
这将打印每个用户是否是 sudoer 以及可以执行哪些命令。