compliance - セキュリティー準拠テストの管理
compliance [subcommand subcommand_options ...]
compliance コマンドは、セキュリティー準拠ポリシーを管理します。
compliance コマンドは、ベンチマークとプロファイルを使用して、セキュリティーのガイド、評価、およびレポートを生成します。ガイドは、ベンチメークのポリシーと、そのポリシーへの準拠を確認するために行われたテストについて記したドキュメントです。この評価は、ベンチマークに対して実行された、システムのセキュリティー構成の評価です。ベンチマークは、システムのセキュリティーパラメータの許容可能な範囲をプログラムで解釈可能なように指定したものです。プロファイルは、評価においてベンチマークのどのテストを評価するかを選択します。一連のプロファイルがベンチマークの一部として指定されます。テイラリングは、ベンチマークの外部でプロファイルを指定します。レポートは、評価を実行した結果の形式です。
このコマンドには、assess, delete, explain, get-options, get-policy, guide, list, report, roster, setoptions, set-policy, store, および tailor の 13 個のサブコマンドがあります。
assess サブコマンドは、現在のシステム構成をベンチマークに対してテストし、結果リポジトリを作成します。
–a オプションを使用すると、評価リポジトリの名前を指定できます。これが指定されていない場合、値はデフォルトで、評価のパラメータと評価の実行時に基づく値に設定されます。
–b オプションを使用すると、ベンチマークを指定できます。ベンチマーク引数は、インストールされた名前付きのベンチマークにする必要があります。
–m オプションを使用すると、ユーザー指定の一致データを評価に関連付けることができます。matches パラメータは、keys のコンマ区切りリストまたは key=value のペアです。詳細は、次の「パラメータの一致」セクションを参照してください。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上で評価を実行することを指定します。この場合、assess サブコマンドは、評価が完了するか、またはリモートシステムで障害が発生しないと戻りません。
–p オプションを使用すると、指定したプロファイルに評価を制限できます。–p オプションが指定されていない場合、ベンチマークで定義されたプロファイルがある場合、値はデフォルトでその最初のプロファイルに設定されます。
–r オプションは、roster に示されているリモートシステムのグループを評価するために使用できます。roster には各リモートシステムを評価するために使用されるほかのすべてのパラメータを指定できるため、–r オプションは、–a および –s オプションと一緒にのみ使用できます。詳細については、compliance-roster(8) のマニュアルページを参照してください。–r が使用された場合、assess サブコマンドは、リモートシステム上で評価が完了するまで待たずに、roster 内の各リモートシステムの評価を開始したあとに戻ります。list -av を使用して、評価のステータスを確認します (後述の list サブコマンドを参照)。
–s オプションは、完了時に、store-URI パラメータを使用して評価をリモート評価ストアに転送するべきであることを指定します。詳細は、次の「ストア URI」セクションを参照してください。転送が成功したあとで、ローカル評価ストアの評価の暫定的なコピーが自動的に削除されます。
–t オプションは、指定されたテイラリングに対して評価すべきであることを指定します。–b オプションが指定された場合、インストールされているテイラリングは、テイラリングオペランドだけでベンチマーク/テイラリングであるかのように想定されます。プロファイルはテイラリングによって暗黙的に指定されているため、–p オプションを –t オプションと一緒に使用することはできません。
–b、–p、および –t のいずれのオプションも指定されていない場合、ベンチマーク、プロファイル、およびテイラリングはデフォルトのポリシーから取得されます。詳細は、set-policy サブコマンドを参照してください。
–a、–m、および –s のいずれのオプションも指定されていない場合、対応するパラメータはデフォルトオプションから取得されます。詳細は、set-options サブコマンドを参照してください。空のパラメータ ("") を指定してこれらのいずれかのオプションを明示的に使用すると、対応するデフォルトのパラメータが設定されていない場合と同じ効果があります。
–N オプションも –r オプションも指定されていない場合、評価はローカルシステムで実行されます。この場合、assess サブコマンドは、評価が完了するか、またはローカルシステムで失敗するまで戻りません。
ユーザーには、すべてのゾーン特権と、評価を実行するための solaris.compliance.assess 承認が必要です。Compliance Assessor 権利プロファイルが割り当てられているユーザーには、評価を実行するための権利があります。
assess サブコマンドはまた、評価の統計情報も生成し、それらをローカルの統計ストアにアップロードします。統計情報は、承認されたユーザーが sstore コマンドを使用して表示できます。Compliance Assessor 権利プロファイルが割り当てられているユーザーには、統計情報をアップロードするための権利があります。Compliance Reporter 権利プロファイルが割り当てられているユーザーには、評価統計情報を収集し表示するための権利があります。詳細は、sstore(1) のマニュアルページを参照してください。
次の統計情報のクラスが生成されます。
//:class.app/solaris/compliance/assessment //:class.app/solaris/compliance/rule
delete サブコマンドは、指定された assessment の結果リポジトリ (すべての関連するレポートを含む) を削除します。
–m オプションを使用すると、matches 式と一致する評価を削除対象として選択できます。詳細は、次の「パラメータの一致」セクションを参照してください。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上で削除が行われることを指定します。
–n オプションは、削除される評価を一覧表示しますが、実際の削除操作は抑制します。
–v オプションは、削除される評価を一覧表示します。
explain サブコマンドは、デフォルトのシステムポリシーベンチマーク、または引数が与えられていない場合に –b オプションで提供されるベンチマークのルールを一覧表示します。
1 つ以上の引数が与えられている場合、指定されたコンプライアンスルールの説明が出力されます。与えられた引数に一致したルールがない場合、与えられた引数の検索が大文字と小文字を区別せずに実行され、一致したすべてのコンプライアンスルールの説明が出力されます。
–H オプションは、コンプライアンスルールを一覧表示するときに列ヘッダーを出力しないように指定します。
–b オプションは、コンプライアンスルールが benchmark パラメータに制限されるように指定します。–b オプションが与えられない場合、デフォルトのシステムポリシーベンチマークが使用されます。下の「get-policy」を参照してください。
–t オプションは、指定されたカスタマイズにおける値が、必要に応じて、出力されるルールとタイトルで使用されるように指定します。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上にコンプライアンスルールの説明を表示するように指定します。
「all」キーワードは、このベンチマークのすべてのコンプライアンスルールの説明を出力するように指定します。
指定されたルールの識別子の説明が出力されます。ルール識別子が一致しない場合、–b ベンチマークのテストの説明に対して、大文字と小文字を区別しない検索が実行され、一致したテストの説明だけが出力されます。
get-options サブコマンドは、デフォルトの評価オプションを表示します。詳細は、set-options サブコマンドを参照してください。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上でデフォルトの評価オプションを表示することを指定します。
get-policy サブコマンドは、デフォルトの評価ポリシーを表示します。詳細は、set-policy サブコマンドを参照してください。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上でデフォルトの評価オプションを表示することを指定します。
–guide サブコマンドは、HTML 形式で、指定されたベンチマークの準拠の要件について記したドキュメントの場所を示し、必要に応じて、インストールされているすべてのベンチマークについて、1 つまたは複数の特定のガイドを生成します。
–a オプションが指定されている場合、インストールされたすべてのベンチマークおよび関連付けられたプロファイルについて、ガイドは生成されます。
個々のガイドの場合、–b オプションは benchmark の指定に使用できます。benchmark 引数は、インストールされた名前付きベンチマークにする必要があり、指定されていない場合、この値はデフォルトで solaris になります。
–o オプションが指定されている場合、ガイドは pathname に配置されます。
このガイドは、–p オプションを使用することで指定された profile に合わせて調整できます。このオプションが指定されていない場合、ガイドでは、benchmark で定義されたすべてのプロファイルが対象となります。
–o オプションが指定されていないか、–a オプションが指定されている場合、ガイドはコンプライアンスガイドのストレージに配置されます。Compliance Reporter または Compliance Assessor のいずれかの権利プロファイルが割り当てられたユーザーには、そのようなガイドを生成するための権利があります。
list サブコマンドは、インストールされたベンチマーク、実行された評価、テイラリング、名簿など、さまざまなコンプライアンスオブジェクトに関する情報を一覧表示します。デフォルトでは、ベンチマークと評価は 1 行に 1 つずつ一覧表示されます。
–a オプションと 1 つ以上の assessment パラメータが存在する場合、情報は一致する評価に制限されます。
–b オプションと 1 つ以上の benchmark パラメータが存在する場合、情報は一致するベンチマークに制限されます。
–m オプションを使用すると、matches 式と一致する評価のみを一覧表示対象として選択できます。詳細は、次の「パラメータの一致」セクションを参照してください。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上でオブジェクトを一覧表示するために使用できます。
–p オプションが指定されている場合は、各ベンチマークのプロファイルが一覧表示されます。
–r オプションが指定されている場合、名簿が一覧表示されます。
–t オプションが指定されている場合、テイラリングが一覧表示されます。
–v オプションが指定されている場合、各オブジェクトに関する追加の説明情報が出力に含められます。
report サブコマンドは、評価のための望ましい形式のレポートの場所を提供するとともに、必要に応じて必要な形式のレポートを生成します。
–a オプションを使用すると、評価リポジトリの名前を指定できます。指定されていない場合、この値はデフォルトで、最後に実行された評価になります。
準拠レポートの形式は、–f オプションで選択できます。形式オプションには、log、xccdf、html、および summary があります。log 形式レポートは、個々の評価結果の単純なテキストによる一覧です。xccdf 形式レポートは、プログラム的な処理を対象とした XML 形式の評価結果です。html レポートは、失敗したテストの修正情報など、特定の評価結果の HTML 形式の説明を提供します。summary レポートは、HTML 形式の全体的な情報と、さまざまな形式の個々の評価レポートへのリンクを提供します。呼び出しに複数の評価が含まれている場合、summary 形式のみを指定できます。デフォルトの形式は、呼び出しが単一の評価を対象としている場合は html で、呼び出しに複数の評価が含まれている場合は summary です。
–m オプションを使用すると、matches 式と一致する評価をレポートへの取り込み対象として選択できます。詳細は、次の「パラメータの一致」セクションを参照してください。
–o オプションが指定されていない場合、レポートは評価ストレージに配置されます。Compliance Reporter または Compliance Assessor のいずれかの権利プロファイルが割り当てられたユーザーには、そのようなレポートを生成するための権利があります。–o オプションが指定されている場合、レポートは pathname に配置されます。
roster サブコマンドにより、ユーザーはテイラリングを作成、表示、編集、および管理できます。詳細については、compliance-roster(8) のマニュアルページを参照してください。
set-options サブコマンドはデフォルトの評価オプションを変更します。デフォルトオプションは、assess サブコマンドのデフォルトのパラメータとして、およびスケジュールされた評価サービス用に使用されます。デフォルトの assessment、matches、および store-URI パラメータはそれぞれ個別に設定できます。
–a オプションは、デフォルトの評価名を指定します。assessment オプション値は、デフォルトの評価名がないことを示すために空 ("") にできます。
–m オプションは、デフォルトの一致パラメータを指定します。matches オプションの値は、デフォルトの一致パラメータがないことを示すために空 ("") にできます。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上でデフォルトの評価オプションを変更するために使用できます。
–s オプションは、デフォルトの store-URI パラメータを指定します。store-URI オプション値は、デフォルトの store-URI パラメータがないことを示すために空 ("") にできます。
ユーザーには、デフォルトオプションを設定するための solaris.compliance.assess 承認が必要です。Compliance Assessor 権利プロファイルが割り当てられているユーザーにはそのような権利があります。
set-policy サブコマンドは、デフォルトの評価ポリシーを変更します。デフォルトポリシーは、assess サブコマンドのデフォルトのパラメータとして、およびスケジュールされた評価サービス用に使用されます。–b および –t の少なくとも 1 つのオプションを指定する必要があります。
–b オプションはデフォルトのベンチマークを指定します。
–p オプションはデフォルトのプロファイルを指定します。–p オプションでは、–b オプションも指定する必要があります。–p オプションは –t オプションと同時には使用できません。
–N オプションは、node-URI パラメータ (後述の URI オペランドを参照) を使用して、リモートノード上でデフォルトの評価ポリシーを変更するために使用できます。
–t オプションはデフォルトのテイラリングを指定します。
ユーザーには、デフォルトポリシーを設定するための solaris.compliance.assess 承認が必要です。Compliance Assessor 権利プロファイルが割り当てられているユーザーにはそのような権利があります。
store サブコマンドは、指定された store-URI を使用して、関連付けられたすべてのレポートを含む指定された評価をリモート評価ストアにコピーします。詳細は、次の「ストア URI」セクションを参照してください。–s オプションが指定されていない場合、デフォルトの store-URI が使用されます。元の評価はローカル評価ストア内に残ります。
–m オプションを使用すると、matches 式と一致する評価をコピー対象として選択できます。詳細は、次の「パラメータの一致」セクションを参照してください。
–n オプションは、格納される評価を一覧表示しますが、実際のストア操作は抑制します。
–v オプションは、格納される評価を一覧表示します。
tailor サブコマンドを使用すると、テイラリングの作成、表示、編集、および管理を行うことができます。詳細は、compliance-tailor(8) を参照してください。
各評価に、関連付けられた一致鍵があります。これらには、システム定義の鍵とユーザー指定の鍵の両方が含まれています。鍵には、割り当てられたオプションの値がある場合があります。評価に関連付けられた鍵は、list -av サブコマンドを使用して表示できます。
システム定義の鍵の先頭は常に大文字です。次に、システム定義の鍵とその値の定義を一覧表示します。
評価が実行されたプラットフォームのハードウェアアーキテクチャー (「uname -i」と同じ値)。
この評価の規則と値を定義するベンチマーク。この鍵は、ベンチマークが明示的に指定されていても暗黙的に指定されていても存在します。
旧バージョンの compliance コマンドで作成された評価には、UUID 鍵と値、および既存のデータから取得されたその他の一致鍵と値が自動的に割り当てられます。結果の一致データはベストエフォートの結果です。一部のシステム鍵は欠落し、インストールされたテイラリングから実行された評価の Tailoring 値は不正確になります。そのような派生評価の一致データのみに Legacy 鍵が含まれています。Legacy 鍵の値は、評価の xccdf 結果ファイルがある場合は Derived で、それ以外の場合は Empty になります。
assess サブコマンドが呼び出されたときに評価に関連付けられた名前。複数の評価が同じ Name を共有できます。
評価が実行されたシステムの名前。
評価が実行されたプラットフォームの、オペレーティングシステムバージョンに固有の Common Platform Enumeration。
この評価の規則と値を選択するプロファイル。この評価にテイラリングが使用された場合、この鍵は定義されません。
この評価のステータス。取り得る値は Completed、Initiated、および Uninitialized です。
この評価の規則と値を選択するテイラリング。この評価にテイラリングが使用された場合にのみ、この鍵が存在します。
最初は、これは assess コマンドが呼び出された時間です。評価が完了すると、評価が完了した時間に更新されます。鍵の値の形式は YYYY-MM-DDTHH-mm-SS です。
各評価に関連付けられた一意の識別子。以前のバージョンのコンプライアンスによって作成された評価では、これは Name 鍵値と同じになる可能性があります。
assess サブコマンドが呼び出されると、ユーザーは、評価に関連付けるコンマ区切りの keys または key=value のペアを追加で指定できます。ユーザー指定の鍵は小文字で始まる必要があります。
delete、list、および report サブコマンドが呼び出されると、ユーザーは、コマンドによって処理される評価を選択するために一致式を指定できます。一致式は、次のプリミティブに対するブール型の式です。
評価に関連付けられた鍵がある場合 (鍵に値が指定されているかどうかは関係ありません) は true、それ以外の場合は false。
評価に関連付けられた鍵がない場合は true、それ以外の場合は false。
評価に関連付けられた鍵があり、値 value と一致する場合は true、それ以外の場合は false。
評価に関連付けられた鍵があり、値 value と一致しない場合は true、それ以外の場合は false。
評価に関連付けられた鍵があり、値が value より小さい場合は true、それ以外の場合は false。値は文字列として比較されるため、2014-12-31T23:59:59<2015 は true と評価されます。
評価に関連付けられた鍵があり、値が value より大きい場合は true、それ以外の場合は false。値は文字列として比較されるため、2015-01-01T00:00:00>2015 は true と評価されます。
囲まれた式と同じ評価になります。
一致式のブール型の演算は次のとおりです。
operand1 と operand2 の両方が true と評価される場合は true、それ以外の場合は false。
operand1 または operand2 のいずれかが true と評価される場合は true、それ以外の場合は false。
一致式内の演算子の多くは、シェルのメタキャラクタとして使用されるため、シェルによって解釈されるのを回避するために、正しく引用符で囲むかエスケープする必要があります。
リモート評価ストアへのアクセスは、store-URI を使用して実行されます。store-URI は RAD URI として解釈されます。詳細は、rad(8) のマニュアルページを参照してください。値はノード名 (たとえば、hostname コマンドの出力、IP アドレス、完全修飾ドメイン名) として表すことができ、この場合 RAD URI 形式に強制変換されます。scheme のデフォルトは ssh になり、user のデフォルトは現在のユーザーになり、port のデフォルトは標準 RAD ポートになります。指定された store-URI では、パスワードプロンプトなどの対話式認証を必要としない必要があります。
SMF サービスインスタンス svc:/application/security/compliance:default を使用すると、スケジュールされた評価を自動化できます。評価パラメータはデフォルトのオプションとポリシーから取得されます。詳細は、set options および set-policy サブコマンドを参照してください。default インスタンスはデフォルトでオフラインです。パラメータのスケジュールの詳細は、svc.periodicd(8) のマニュアルページを参照してください。
SMF サービスインスタンス svc:/application/security/compliance:generate-guide を使用して、コンプライアンスガイドのストレージでガイドファイルの生成を自動化します。generate-guide インスタンスはデフォルトでオンラインです。restart_fmri アクチュエータとして FMRI が指定されている場合、ガイドファイルはパッケージ/システムのインストール中に生成されます。インストールされたファイルの新しさに基づいて、ガイドは、必要な場合にかぎり (再) 生成されます。
次の終了ステータスが返されます。
正常終了。
使用方法のエラー。
assess サブコマンドは、サブコマンドは成功したが評価されたシステムが非準拠であることを示すこの値を返すことがあります。
プログラムエラー。
compliance コマンドは、solaris という名前のベンダー定義のベンチマークとともに提供されます。個々の構成パラメータのよりセキュアな設定を備えたシステムがプロファイルを渡すことができるように、このベンチマークのプロファイルはしきい値として指定されます。solaris ベンチマークには、新たにインストールされた Oracle Solaris インスタンスのデフォルトのセキュリティー構成設定に対応するベースラインプロファイルと、以前のバージョンの Oracle Solaris との互換性が制約ではないシステムのためのベンダー推奨の構成に対応する推奨されるプロファイルが含まれています。
次の例は、システム上のインストールされた名前付きベンチマークを表示する方法を示しています。
% compliance list -bv pci-dss PCI-DSS Security/Compliance benchmark for Oracle Solaris solaris Oracle Solaris Security Policy使用例 2 solaris ベンチマークのプロファイルの表示
次の例は、solaris ベンチマークのプロファイルを表示する方法を示しています。
% compliance list -bp solaris solaris: Baseline Recommended使用例 3 solaris ベンチマークの推奨されるプロファイルを使用したシステムの評価
次の例は、solaris ベンチマークの推奨されるプロファイルを使用して、一致鍵 demo および example=3 を関連付けてシステムの評価を取得し、その結果を CHECK リポジトリに格納する方法を示しています。
% compliance assess -p Recommended -b solaris -a CHECK -m demo,example=3 -N ssh://example@oracle.com使用例 4 評価と鍵の一覧表示
次の例では、すべての評価を一覧表示して、関連付けられた鍵を表示する方法を示しています。
% compliance list -av CHECK UUID: 657fd530-6c58-11e5-8f4c-8003baa8d665 Benchmark=solaris Profile=Recommended Status=Completed Node=lymph Platform=cpe:/o:oracle:solaris:11 Architecture=i86pc Timestamp=2015-10-31T18:19:20 Username=root UserID=0 demo example=3使用例 5 demo 鍵とすべての評価を含むレポートの生成
次の例は、demo 鍵が関連付けられたすべての評価を含むサマリーレポートを生成する方法を示しています。
% compliance report -m demo -f summary /var/share/compliance/assessments/657fd530-6c58-11e5-8f4c-8003baa8d665/summary.html使用例 6 スケジュールされた評価の検査および構成
次の例は、スケジュールされた評価を検査して構成する方法を示しています。
# view the current schedule % svccfg -s compliance:default listprop scheduled # view when last run and next to be run % svcs -o state,lrun,nrun,astate,fmri compliance:default # configure the scheduled assessment to run every Sunday at 1am % svccfg -s compliance:default setprop scheduled/interval = week % svccfg -s compliance:default setprop scheduled/day = astring: Sunday % svccfg -s compliance:default setprop scheduled/hour = integer: 1使用例 7 notselected 結果タイプの項目を含むレポートの生成
次の例は、notselected 結果タイプの項目を含むレポートを生成するが、informational 結果タイプを抑制する方法を示しています。
% compliance report -s notselected,-informational -a CHECK /var/share/compliance/assessments/CHECK/report.-informational,notselected.html
compliance プログラム、データ、およびテストベンチマークのディレクトリ。
パッケージ化された準拠ベンチマークのディレクトリ。
準拠ガイド、名簿、評価、およびレポートのストレージ。
属性についての詳細は、マニュアルページの attributes(7) を参照してください。
|
attributes(7)、compliance-tailor(8)、compliance-roster(8)、oscap(8)、rad(8)、svc.periodicd(8)、svccfg(8)、svcs(1)、uname(1)
Oracle Solaris 11.4 セキュリティーコンプライアンスガイド
Oracle Solaris 11.4 セキュリティーと強化ガイドライン
compliance コマンドは、現在のオペレーティングシステムイメージに対してのみ実行されます。ほかのゾーンまたはドメインを検証する必要がある場合は、compliance コマンドを個別に呼び出すようにしてください。
ユーザーは、次のコマンドを使用して、評価に使用されている solaris ベンチマークのバージョンを判定できます。
% pkg info solaris-policy
svccfg コマンドを使用して svc:/application/security/compliance:default オプションまたはポリシープロパティーグループを変更することは推奨されません。そのような変更は意味上は検証されないため、あとで評価の実行に失敗することがあります。