Menu Close

Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.11. 情報収集ツール

以下のユーティリティーは、アクセスベクターキャッシュ統計やクラス、タイプ、ブール値などの適切にフォーマットされた情報を提供するコマンドラインツールです。

avcstat

このコマンドにより、システムの起動後のアクセスベクターキャッシュの統計情報の出力が短縮されます。時間間隔を秒単位で指定すると、統計をリアルタイムで表示できます。これにより、初期出力以降に更新された統計が提供されます。使用される統計ファイルは /sys/fs/selinux/avc/cache_stats であるため、-f /path/to/file で別のキャッシュファイルを指定できます。
~]# avcstat 
   lookups       hits     misses     allocs   reclaims      frees
  47517410   47504630      12780      12780      12176      12275

seinfo

このユーティリティーは、クラス、タイプ、ブール値、許可ルールなど、ポリシーの内訳を説明するのに役立ちます。seinfo は、policy.conf ファイル、バイナリーポリシーファイル、モジュール形式のポリシーパッケージ一覧、入力としてポリシーリストファイルを使用するコマンドラインユーティリティーです。seinfo ユーティリティーを使用するには、setools-console パッケージがインストールされている必要があります。
seinfo の出力はバイナリーファイルとソースファイルで異なります。たとえば、ポリシーソースファイルでは、{ }括弧を使用して複数のルール要素を 1 行にグループ化します。同様の効果は、単一の属性が 1 つまたは複数のタイプに展開される属性で行われます。これらは展開され、バイナリーポリシーファイルでは関連性がなくなったため、検索結果での戻り値はゼロになります。ただし、括弧を使用した1 行ルールが複数行になったため、ルールの数が大幅に増えています。
一部の項目はバイナリーポリシーに記載されていません。たとえば、neverallow ルールは実行時ではなくポリシーのコンパイル時にのみ確認され、初期のセキュリティー識別子 (SID) は起動時にカーネルがポリシーを読み込む前に必要であるため、バイナリーポリシーの一部ではありません。
~]# seinfo

Statistics for policy file: /sys/fs/selinux/policy
Policy Version & Type: v.28 (binary, mls)

   Classes:            77    Permissions:       229
   Sensitivities:       1    Categories:       1024
   Types:            3001    Attributes:        244
   Users:               9    Roles:              13
   Booleans:          158    Cond. Expr.:       193
   Allow:          262796    Neverallow:          0
   Auditallow:         44    Dontaudit:      156710
   Type_trans:      10760    Type_change:        38
   Type_member:        44    Role allow:         20
   Role_trans:        237    Range_trans:      2546
   Constraints:        62    Validatetrans:       0
   Initial SIDs:       27    Fs_use:             22
   Genfscon:           82    Portcon:           373
   Netifcon:            0    Nodecon:             0
   Permissives:        22    Polcap:              2
seinfo ユーティリティーは、ドメイン属性でタイプ数を一覧表示することもできます。これにより、さまざまな制限のあるプロセスの数を見積もります。
~]# seinfo -adomain -x | wc -l
550
すべてのドメインタイプが制限されているわけではありません。制限のないドメインの数を確認するには、unconfined_domain 属性を使用します。
~]# seinfo -aunconfined_domain_type -x | wc -l
52
Permissive ドメインは、--permissive オプションでカウントできます。
~]# seinfo --permissive -x | wc -l
31
上記のコマンドで追加の | wc -l コマンドを削除すると、一覧が表示されます。

sesearch

sesearch ユーティリティーを使用して、ポリシー内の特定のルールを検索できます。ポリシーソースファイルまたはバイナリーファイルのいずれかを検索できます。以下は例になります。
~]$ sesearch --role_allow -t httpd_sys_content_t
Found 20 role allow rules:
   allow system_r sysadm_r;
   allow sysadm_r system_r;
   allow sysadm_r staff_r;
   allow sysadm_r user_r;
   allow system_r git_shell_r;
   allow system_r guest_r;
   allow logadm_r system_r;
   allow system_r logadm_r;
   allow system_r nx_server_r;
   allow system_r staff_r;
   allow staff_r logadm_r;
   allow staff_r sysadm_r;
   allow staff_r unconfined_r;
   allow staff_r webadm_r;
   allow unconfined_r system_r;
   allow system_r unconfined_r;
   allow system_r user_r;
   allow webadm_r system_r;
   allow system_r webadm_r;
   allow system_r xguest_r;
sesearch ユーティリティーは、allow ルールの数を提供できます。
~]# sesearch --allow | wc -l
262798
また、dontauditルールの数も以下のようになります。
~]# sesearch --dontaudit | wc -l
156712