"sudo -u myaccount..."を実行できる人が誰であるかを確認してください。

"sudo -u myaccount..."を実行できる人が誰であるかを確認してください。

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であるかどうか、および実行できるコマンドが印刷されます。

関連情報