これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションのいずれかを使用してOnWorks無料ホスティングプロバイダーで実行できるコマンドaudit2allowです。
プログラム:
NAME
監査2許可 -拒否された操作のログからSELinuxポリシーのallow / dontauditルールを生成します
audit2なぜ -SELinux監査メッセージをアクセスが行われた理由の説明に変換します
拒否されました(audit2allow -w)
SYNOPSIS
監査2許可 [オプション]
OPTIONS
-a | - すべて
監査およびメッセージログからの入力の読み取り、-iとの競合
-b | - ブート
前回の起動が-iと競合するため、監査メッセージから入力を読み取ります
-d | --dmesg
の出力から入力を読み取ります / bin / dmesg。 すべての監査メッセージがそうではないことに注意してください
auditdの実行中にdmesgを介して利用できます。 「ausearch-mavc | audit2allow」または
代わりに「-a」。
-D | --dontaudit
dontauditルールを生成します(デフォルト:許可)
-h | - 助けて
短い使用法メッセージを印刷する
-i | - 入力
からの入力の読み取り
-l | --lastreload
最後のポリシーのリロード後にのみ入力を読み取ります
-m | -モジュール
モジュールの生成/出力の要求
-M
ロード可能なモジュールパッケージを生成します。-oと競合します
-p | - ポリシー
分析に使用するポリシーファイル
-o | - 出力
出力を追加する
-r | - 必要
ロード可能なモジュールのrequire出力構文を生成します。
-N | --参照なし
参照ポリシーを生成しないでください。従来のスタイルではルールが許可されます。 これは
デフォルトの動作。
-R | - リファレンス
インストールされたマクロを使用して参照ポリシーを生成します。 これは拒否に一致しようとします
インターフェイスに対して、不正確になる可能性があります。
-w | - どうして
SELinux監査メッセージをアクセスが拒否された理由の説明に変換します
-v | -詳細
詳細出力をオンにする
DESCRIPTION
このユーティリティは、システムが許可を拒否したときにログに記録されたメッセージのログをスキャンします。
オペレーション、およびポリシールールのスニペットを生成します。これは、ポリシーにロードされた場合、
それらの操作が成功することを可能にしました。 ただし、このユーティリティはタイプのみを生成します
強制(TE)はルールを許可します。 特定の許可の拒否には、他の種類の許可が必要になる場合があります
ポリシーの変更。たとえば、既存の条件を満たすために型宣言に属性を追加する
制約、役割許可ルールの追加、または制約の変更。 NS audit2なぜ(8)ユーティリティ
理由が不明な場合は、その理由を診断するために使用される場合があります。
このユーティリティの出力に作用する間は、次のことを確実にするために注意を払う必要があります。
許可されている操作は、セキュリティ上の脅威にはなりません。 多くの場合、新しいものを定義する方が良いです
ドメインおよび/またはタイプ、または他の構造変更を行って、最適なセットを狭く許可する
時には広範な変更を盲目的に実装するのではなく、成功するための操作
このユーティリティで推奨されています。 特定の許可の拒否は致命的ではありません
アプリケーション。この場合、単に拒否のロギングを抑制することが望ましい場合があります。
'allow'ルールではなく 'dontaudit'ルールを介して。
実施例
注意: ボーマン 例 for システム 監査 パッケージ。 If 貴社 do
つかいます 監査 パッケージ、 AVC メッセージ 意志 be in / var / log / messages。
お困りの方は 代替 / var / log / messages for /var/log/audit/audit.log in
例。
使い方 監査2許可 〜へ 生成する モジュール 方針
$ cat /var/log/audit/audit.log | audit2allow -m local> local.te
$ cat local.te
モジュールローカル1.0;
必須 {
クラスファイル{getattropen read};
myapp_tと入力します。
タイプetc_t;
};
myapp_t etc_t:file {getattr openread};を許可します。
使い方 監査2許可 〜へ 生成する モジュール 方針 参照 方針
$ cat /var/log/audit/audit.log | audit2allow -R -m local> local.te
$ cat local.te
policy_module(local、1.0)
gen_require( `
myapp_tと入力します。
タイプetc_t;
};
files_read_etc_files(myapp_t)
建物 モジュール 方針 メークファイル
#SELinuxは、以下のポリシー開発環境を提供します
#/ usr / share / selinux / develには、出荷されたすべてのものが含まれます
#インターフェースファイル。
#teファイルを作成し、実行することでコンパイルできます
$ make -f / usr / share / selinux / devel / Makefile local.pp
#このmakeコマンドは、現在のlocal.teファイルをコンパイルします
#ディレクトリ。 「pp」ファイルを指定しなかった場合は、makeファイル
#現在のディレクトリにあるすべての「te」ファイルをコンパイルします。 後
#teファイルを「pp」ファイルにコンパイルします。インストールする必要があります
#semoduleコマンドを使用します。
$ semodule -i local.pp
建物 モジュール 方針 手動で
#モジュールをコンパイルする
$ checkmodule -M -m -o local.mod local.te
#パッケージを作成する
$ semodule_package -o local.pp -m local.mod
#モジュールをカーネルにロードします
$ semodule -i local.pp
使い方 監査2許可 〜へ 生成する & ビルド モジュール 方針
$ cat /var/log/audit/audit.log | audit2allow-Mローカル
タイプ施行ファイルの生成:local.te
コンパイルポリシー:checkmodule -M -m -o local.mod local.te
パッケージのビルド:semodule_package -o local.pp -m local.mod
******************** 重要 ***********************
この新しく作成されたポリシーパッケージをカーネルにロードするには、
実行する必要があります
semodule -i local.pp
使い方 監査2許可 〜へ 生成する 一枚岩 (非モジュール) 方針
$ cd / etc / selinux /$ SELINUXTYPE / src / policy
$ cat /var/log/audit/audit.log | audit2allow >> domains / misc / local.te
$ cat domains / misc / local.te
cupsd_config_t unconfined_t:fifo_file {getattrioctl}を許可します。
$ロードする
onworks.netサービスを使用してオンラインでaudit2allowを使用する