私はsudoセッションログの詳細、特にTSIDについて理解しようとしています。
いくつかの質問があります。
- TSIDとはどういう意味ですか?
- ディレクトリ構造を形成する一連の6文字。 - 0001A1:各2つの文字ペアは何を意味しますか?
- 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)で表示されます。
どちらの場合も、意味のある「インテリジェントな番号付けシステム」とは見えません。
ソースコードを見る
grep
sudo コードストアを渡すときニュース資料室条項は次のとおりです。
- sudoersポリシーは、「iolog_file」sudoersオプションが%{sessid}以外の値として定義されていても、ログにTSIDフィールドを保存します。以前は、「iolog_file」オプションがデフォルト値に設定されている場合にのみ、TSIDフィールドがログファイルに含まれていました。
気になるならソースTSID=
はロギング.c文書。
引用する
答え2
TSID = TypeScript識別子
「スクリプト」コマンドに関する: http://man7.org/linux/man-pages/man1/script.1.html