「sudo su -」にコマンドを書き込むには?

「sudo su -」にコマンドを書き込むには?

もし私が:

[user@notebook ~] sudo echo 123456uu
123456uu
[user@notebook ~] 

これにより、ログに次の情報が表示されます。

[root@notebook /var/log] grep 123456uu *
auth.log:Jan  9 17:01:51 notebook sudo: user : TTY=pts/3 ; PWD=/home/user ; USER=root ; COMMAND=/bin/echo 123456uu
[root@notebook /var/log] 

しかし、もし私が:

[user@notebook ~] sudo su -
[root@notebook ~] echo 1234567zz
1234567zz
[root@notebook ~] 

ログには表示されません。

[root@notebook /var/log] grep 1234567zz *
[root@notebook /var/log] echo $?
1
[root@notebook /var/log] 

私の質問:「sudo su -」コマンドのロギングをどのようにオンにしますか?

オペレーティングシステムはUbuntu 12.04ですが、問題は一般的です。

アップデート#1:

[user@notebook ~] sudo su -
[sudo] password for user: 
[root@notebook ~] echo zizizi
zizizi
[root@notebook ~] cd /var/log
[root@notebook /var/log] grep -iIR 'zizizi' *
[root@notebook /var/log] grep 'COMMAND=/bin/su -' *
auth.log:Jan 10 15:42:42 notebook sudo: user : TTY=pts/1 ; PWD=/home/user ; USER=root ; COMMAND=/bin/su -
[root@notebook /var/log]

ベストアンサー1

Ubuntu 12.04を使用しているのでlog_input、オプションでlog_output有効になっているI / Oロギング機能を見てください。

log_input

    設定されている場合、sudoコマンドは擬似ttyで実行され、すべてのユーザー入力が記録されます。 I / Oリダイレクトまたはコマンドがパイプの一部であるため、標準入力がユーザーのttyに接続されていない場合、その入力もキャプチャされ、別々のログファイルに保存されます。

    通常のsudoログ行に含まれる一意のセッションID(プレフィックスが.sudoです)を使用して、iolog_dirこのオプションで指定されたディレクトリに入力を書き込みます(デフォルト)。このオプションを使用してセッションIDの形式を制御できます。/var/log/sudo-ioTSID=iolog_file

    ユーザー入力には、パスワード(画面に表示されていなくても)などの機密情報を含めることができます。これは暗号化されていない状態でログファイルに保存されます。ほとんどの場合、単にlog_outputを介してコマンド出力を記録するだけで十分です。

log_output

    設定されている場合、sudoコマンドはpseudo-ttyで実行され、script(1)コマンドと同様に画面に送信されたすべての出力が記録されます。 I / Oリダイレクトまたはコマンドがパイプの一部であるため、標準出力または標準エラーがユーザーのttyに接続されていない場合、その出力もキャプチャされ、別々のログファイルに保存されます。

    出力は、通常のsudoログ行(デフォルト)に含まれる一意のセッションIDを使用して、このオプションで指定されたディレクトリに書き込まれますiolog_dir。このオプションはセッションIDの形式を制御するために使用できます。/var/log/sudo-ioTSID=iolog_file

    出力ログは sudoreplay(8) ユーティリティーを使用して表示でき、使用可能なログのリストまたは検索にも使用できます。

実装:Sudoバージョン最小:1.7.4p4が必要です。

/etc/sudoers編集:必要なすべてのsudoersエントリに2つのタグ(コマンドまたはエイリアスを使用して「su」が指定されている場合)を追加するだけです。ログ入力とログ出力。

例:

%admins         ALL=(ALL) NOPASSWD: LOG_INPUT: LOG_OUTPUT: ALL

次のデフォルトのログディレクトリ構造をに追加しますsudoers

Defaults iolog_dir=/var/log/sudo-io/%{user}

おすすめ記事