rootを持たないUnixアカウントの所有者がsudoを使用して、root以外のユーザーがそのようなコマンドを実行できることを確認する方法はありますか?
/etc/sudoers を読み込めません。
個人的なセキュリティのためにsudoを使用して、誰が自分のアカウントにアクセスしたかを確認したいと思います。
たとえば、ユーザーAが「sudo -u myaccount -i」または任意のコマンドを実行できる場合です。
答え1
すべてのユーザーが読めるリストを作成する必要があります。/etc/パスワード;明確なリストを取得するには、次のようにします。
cat /etc/passwd |cut -d : -f 1 > /tmp/userlist.txt
これにより、すべてのユーザーが保存されます。/tmp/userlist.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であるかどうか、および実行できるコマンドが印刷されます。