SUDO I/OログとTSID

SUDO I/OログとTSID

私はsudoセッションログの詳細、特にTSIDについて理解しようとしています。

いくつかの質問があります。

  1. TSIDとはどういう意味ですか?
  2. ディレクトリ構造を形成する一連の6文字。 - 0001A1:各2つの文字ペアは何を意味しますか?
  3. TSIDを理解することに関連する他のすべてが役に立ちます。

ベストアンサー1

背景

TSID はマニュアルページにsudoreplay次のように記述されています。

IDは、数字と大文字の6桁の文字(0100A5など)、またはsudoersファイルのiolog_fileオプションと一致するパターンでなければなりません。 sudoを介してコマンドが実行され、sudoersファイルでlog_outputが有効になると、TSID = ID文字列はsyslogまたはsudoログファイルを介して記録されます。 sudoreplayのリストモードを使用してIDを確認することもできます。

これを使用してsudoreplay -l利用可能なセッションを一覧表示できます。セッションを再生するには、次のコマンドを実行できますsudoreplay <tsid>

サンプル出力

AU Q&Aで、次のタイトルのサンプル出力を見つけました。sudoreplayを操作する方法:

$ sudo sudoreplay -l
Nov 28 11:48:35 2014 : chrthomp : TTY=/dev/pts/1 ; CWD=/home/chrthomp/DJS/2014/Nov ; USER=root ; TSID=000001 ; COMMAND=/bin/su -

$ sudo sudoreplay 000001

さらなる研究

探索するとsudoersマニュアルページTSID=これが何であるかを説明します。

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

メモ:log_input同様の詩が定義に記載されていますlog_output

sudoersマニュアルページをよく読むと、TSID=次のような名前があることがわかりますlogid

date hostname progname: username : TTY=ttyname ; PWD=cwd ; \
USER=runasuser ; GROUP=runasgroup ; TSID=logid ; \
ENV=env_vars COMMAND=command

これは次のように続きます。

logid - コマンド出力を再生するために使用できるI / Oログ識別子。 log_inputまたはlog_outputオプションが有効な場合にのみ表示されます。

初期の考え...

私が見つけたほとんどの例は、TSID=一連の数字(000001)または一連の数字と文字(000AE1)で表されます。奇妙なことに、私はいつも特定の文字(主にAF)で表示されます。

どちらの場合も、意味のある「インテリジェントな番号付けシステム」とは見えません。

ソースコードを見る

grepsudo コードストアを渡すときニュース資料室条項は次のとおりです。

  • sudoersポリシーは、「iolog_file」sudoersオプションが%{sessid}以外の値として定義されていても、ログにTSIDフィールドを保存します。以前は、「iolog_file」オプションがデフォルト値に設定されている場合にのみ、TSIDフィールドがログファイルに含まれていました。

気になるならソースTSID=ロギング.c文書。

引用する

おすすめ記事