私は、ユーザーがsuidプログラムを実行するたびに、ユーザー名、プログラム、および渡されたコマンドライン引数を含むエントリを含むログファイルが必要です。 Linuxでこれを達成する標準的な方法はありますか?
答え1
特定の実行可能ファイル(setuidまたはnon-setuid)に対するすべての呼び出しを次のように記録できます。監査サブシステム。文書はややまれです。auditctl のマニュアルページ、おそらくこのチュートリアル。最近のディストリビューションにはauditd
パッケージが付属しています。インストールし、auditd
デーモンが実行中であることを確認して実行します。
auditctl -A exit,always -F path=/path/to/executable -S execve
/var/log/audit/audit.log
通話がログインしていること(または展開が設定されている場所)を確認してください。