出力の理解

UNIX コンテンツでは、エンドポイント・スキャンが一連の UNIX Bourne シェル・スクリプトによって行われるため、UNIX のシステム管理者はよりアクセスしやすくなります。

ほとんどの BigFix コンテンツでは、Fixlet が常に各エンドポイントで条件を評価しています。コンソールは、 Fixlet の関連句が「true」と評価された場合に結果を表示します。

UNIX コンテンツでは、タスクがエンドポイントのスキャンを開始するため、スキャンが必要となるたびに随時実行できます。また、コンソールから繰り返しポリシーとして実行することもできます。

エンドポイント・スキャンは、一連の UNIX Bourne シェル・スクリプトによって実行されます。実行の間、各スクリプトは設定または条件を検出します。スクリプトは、対応する評価 Fixlet チェックで使用できるようになった出力ファイルに情報を書き込みます。ログ・ファイルがディスクに書き込まれると、Fixlet は各ログを読み取り、結果をコンソールに表示します。結果は同様であっても、この検出方法によって UNIX システム管理者のアクセス性が向上します。

「セキュリティー・チェックリストのデプロイおよび実行」タスクを実行すると、スクリプトは /var/opt/BESClient/SCM の下のディレクトリーに置かれます。

ディレクトリー構造を図式化したものを以下に示します。

1. ディレクトリー、サブディレクトリー、ファイルの説明

ディレクトリー/スクリプト 「説明」
<BES クライアント・フォルダー> / SCM このディレクトリーは OS 固有のチェック・スクリプトおよびマスター・スクリプト (runme.sh) の基本ディレクトリーです。このディレクトリーのコンテンツは、「セキュリティー・チェックリストのデプロイおよび実行」タスクが「 Endpoint Manager」コンソールから実行されるたびに上書きされます。
../SCM/util BES クライアント・フォルダー/ SCM ディレクトリーのサブディレクトリーで、このサブディレクトリーには、マスター・スクリプトおよび個別の検出で使用されるユーティリティー・スクリプトと、修復スクリプトがあります。このディレクトリーで検出される基本ユーティリティーは、「globalfind」スクリプトです。
../SCM/$OS/$OS_version このディレクトリーは、実行するプラットフォーム固有のもので、$OS および $OS バージョンで指定されます。たとえば、Red Hat Enterprise Linux 4 は、(../SCM/Linux/4) と表示されます。このディレクトリー・パスには、固有の検出スクリプト、修復スクリプト、これらのスクリプトが使用する基本パラメーター・ファイルがあります。各チェック・スクリプトは、対応するコントロール ID で名付けられており、この ID はチェックを説明するために使用されます。対応する各 Fixlet はチェック ID も参照します。
../SCM/runme.sh このスクリプトは、「Endpoint Manager」コンソール内で「セキュリティー・チェックリストのデプロイおよび実行」タスクによって呼び出されるマスター・スクリプトで、「globalfind」スクリプトおよび各チェック・スクリプトを実行します。
../SCM/mytmp/results このフォルダーは、OS 固有の検出スクリプトがそのログ・ファイルを書き込む場所です。これらのログは、Fixlet が検査し、チェックが準拠しているかどうかを判定するために使用されます。各ログ・ファイルは所定のチェックのチェック ID に対応しています。
../SCM/mytmp/data このフォルダーには、 find.out ファイルが含まれています。このファイルは、 globalfind スクリプトによって生成され、すべてのローカル・ファイル・システムやその他の情報のディレクトリー・リストが含まれています。このファイルは多くの OS 固有スクリプトによって使用され、 globalfind スクリプトが実行時にのみ更新されます。
<BES クライアント・フォルダー>/scm_preserve このディレクトリーは、ロールバック・スクリプト、カスタム・チェック、パラメーターなどの「セキュリティー・チェックリストのデプロイおよび実行」タスク実行のたびに上書きをしない情報を保持するために使用される基本ディレクトリーです。
../scm_preserve/backup/rollback 修復スクリプトが実行されるたびに、対応するロールバック・スクリプトが作成されます。このスクリプトを使用すると、管理者は特定のチェックに関連する、以前の設定にロールバックすることができます。
../scm_preserve/$OS/$OS_version このディレクトリーには、Endpoint Manager から提供されたものではなく管理者が作成したカスタム・スクリプトを置くことができます。このディレクトリーにあるスクリプトは入力または出力の仕様に準拠し、「セキュリティー・チェックリストのデプロイおよび実行」タスクの実行時にそのまま使えるチェックを使用して実行できる必要があります。
../scm_preserve/$OS/$OS_version

/customer_params

このファイルは、管理者が定義する任意のカスタム・パラメーターを保存するために使用されます。このファイル内で定義されたパラメーターはすべて、<BES クライアント・フォルダー>/SCM/$OS/$OS_version/params に保存されている params ファイルで指定されたデフォルトのパラメーターをオーバーライドします。

各オペレーティング・システム固有のスクリプトは、/var/opt/BESClient/mytmp/results に 2 つのファイルを書き込みます。ファイル名は、OS 固有スクリプトの名前に対応します。たとえば、GEN000020.detect は、GEN000020.detect.log および GEN000020.results の 2 つのファイルを書き込みます。

拡張子が .log のファイルには、オペレーティング・システム固有スクリプトの STDOUT および STDERR が含まれています。通常の条件ではこのファイルは空です。runme.sh –t オプションで実行される場合は、このファイルにはオペレーティング・システム固有スクリプトのトレース出力が含まれます。

作成されると、拡張子が .results のファイルは、Fixlet によって読み取られ、その結果は「Endpoint Manager」コンソールで利用できるようになります。この Fixlet は [STATUS] セクションを検査して関連度を判定します。

結果のファイルの例を次に示します。

[RUN_DATE]
01 Apr 2008
[RUN_DATE_EOF]
[DESCRIPTION]
The UNIX host is configured to require a password for access to single-user 
and maintenance modes
[DESCRIPTION_EOF]
[FIXLET_DESCRIPTION]
This UNIX host is not configured to require a password for access to single-user
and maintenance modes
[FIXLET_DESCRIPTION_EOF]
[CHECK_COVERAGE]
DISA-STIG-GEN000020
[CHECK_COVERAGE_EOF]
[STATUS]
PASS
[STATUS_EOF]
[PARAMETERS]
CONFIG_FILE=/etc/default/sulogin;SETTING=PASSREQ;OP='=';VALUE=NO
[PARAMETERS_EOF]
[TIMETAKEN]
0
[TIMETAKEN_EOF]
[REASON]
The /etc/default/sulogin file does not exist, the system will default to
requiring a password for single-user and maintenance modes
[REASON_EOF]

ログ・ファイル出力の各セクションについて、次の表で説明します。

2. ログ・ファイル出力のセクションの説明

セクション名 「説明」
[RUN_DATE] スクリプトが実行された日付を示します。
[DESCRIPTION] および [FIXLET_DESCRIPTION] 非推奨 現在は使用されていません - 非推奨ファイルです
[CHECK_COVERAGE] この Fixlet が適用される規則の名前を示します。(現在は使用されていません - 非推奨ファイルです)
[STATUS] 関連付けられた Fixlet が使用し、関連度を判定します。次の文字列のいずれかが含まれます: PASS、FAIL、または NA。このセクションに FAIL の文字列が含まれる場合、関連付けられた Fixlet は「関連性あり」となります。
[PARAMETERS] スクリプトに関連付けられたパラメーターを示します。空白はセミコロンで示されます。このファイルへの出力では、表示上の理由で空白はセミコロンに変換されます。これはパラメーターの設定方法を示すものではありません。
[TIMETAKEN] スクリプトの実行に要した実際の時間を秒単位で表します。
[REASON] スクリプトが成功または失敗した理由を示します。このセクションは分析プロパティーを構成し、特定の情報を「Endpoint Manager」コンソールに必要な情報を返します。

runme.sh スクリプトも、各種 OS 固有スクリプトを実行した結果全体を含むファイルを作成します。

この /var/opt/BESClient/SCM/mytmp/results/master.results というファイルは、次のように表示されます。

TOTAL_SCRIPTLETS_RUN:69
TOTAL_SCRIPTLETS_PASS:33
TOTAL_SCRIPTLETS_FAIL:36
TOTAL_SCRIPTLETS_NA:0
TOTAL_SCRIPTLETS_ERR:0
TOTAL_TIME_TAKEN:1367