新しいテーラリングを徹底的にテストしたら、新しいルールファイルをインストールするための IPS パッケージを作成できます。パッケージマニフェストは、パッケージ作成の早期の段階です。パッケージ作成の手順については、Oracle Solaris 11.3 でのImage Packaging System を使用したソフトウェアのパッケージ化と配布を参照してください。
$ pfexec compliance tailor -t basic tailoring:basic> export -x -o basic.xccdf.xml tailoring:basic> exit
次の出力は、テーラリングのためのパッケージマニフェストのサンプルテンプレートを示しています。このテーラリングは solaris ベンチマークに基づいているため、このテーラリングパッケージは、solaris ベンチマークをインストールする solaris-policy パッケージに依存します。このマニフェスト内の太字の項目は不変です。長い行は、読みやすさのためにインデントされた 2 行目に続いています。マニフェストでは、改行されません。
$ pfedit solaris-basic.p5m set name=pkg.fmri value=pkg://publisher-name/hierarchical-namepkg-name@mainVersion.revision set name=pkg.summary value="summary" set name=pkg.description value="description" file ./exported-rules-file group=group mode=permissions owner=owner path=usr/lib/compliance/benchmarks/solaris/tailorings/installed-rules-file.xml depend fmri=pkg:/security/compliance/benchmark/solaris-policy type=require
ここで
pkg.fmri value= は、パッケージのフルネームを指定します。この名前はユーザーが指定します。パブリッシャー名はオプションです。これはここで指定するか、またはこのパッケージを公開するときに指定できます。
pkg.summary value= は、pkg info mainVersion コマンドの Summary フィールドに表示される情報を指定します。このサマリーはユーザーが記入します。
pkg.description value= は、pkg info mainVersion コマンドの Description フィールドに表示される情報を指定します。この説明はユーザーが記入します。
file は、テーラリングがインストールされている場所を指定します。この指定には、テーラリングのためのルールファイルのソース名とインストールされている名前、最初のスラッシュなしのインストールされているファイルのディレクトリの場所 (usr/lib/compliance/benchmarks/solaris/tailorings)、および DAC 権限が含まれます。DAC の権限と場所は固定です。このパッケージがシステムにインストールするルールファイルの名前はユーザーが指定します。ソースルールファイルは、インストールされているバージョンとは異なる名前にできます。
depend は、テーラリングのためのソースベンチマークを提供するパッケージがまだインストールされていない場合は、システムにインストールされることを指定します。このエントリは必須です。
basic テーラリングは solaris ベンチマークに基づいているため、solaris-policy パッケージは、まだインストールされていない場合はシステムにインストールされます。solaris-policy パッケージは、テーラリングファイルが配置されるディレクトリ /usr/lib/compliance/benchmarks/solaris/tailorings をインストールします。このパッケージの仕様を表示するには、pkg contents -m solaris-policy コマンドを入力します。
注意 - パッケージマニフェストには、このパッケージが依存するパッケージによってすでに指定されているパスを複製しないでください。 |
このサンプルマニフェストでは、example-IT リポジトリの solaris-basic.exportx.xml ファイルがファイル basic.xccdf.xml としてインストールされます。
set name=pkg.fmri value=pkg://example-IT/security/compliance/tailorings/solaris-basic@1.0 set name=pkg.summary value="Tailors a basic Solaris compliance assessment for all systems" set name=pkg.description value="This Solaris basic tailoring is applicable to all systems, development and production. All Oracle Solaris systems are expected to pass the rules in this tailoring." file ./solaris-basic.exportx.xml group=sys mode=0555 owner=root path=usr/lib/compliance/benchmarks/solaris/tailorings/basic.xccdf.xml depend fmri=pkg:/security/compliance/benchmark/solaris-policy type=require
この例は、NFS クライアントのテーラリングのためのパッケージマニフェストを作成する方法を示しています。ルール選択ファイルのソース名は solaris-Baseline-nfs-client.exportx.xml です。そのインストールされているバージョンは nfs-client.xccdf.xml です。このテーラリングは、solaris ベンチマークの Baseline プロファイルに基づいているため、このパッケージは solaris-policy パッケージに依存します。
テーラリングをエクスポートし、エディタを終了します。
$ pfexec compliance tailor -t solaris-Baseline-nfs-client tailoring:solaris-Baseline-nfs-client> export -x -o sB-nfs-client.exportx.xml tailoring:solaris-Baseline-nfs-client> exit
パッケージ名を持つマニフェストを作成し、マニフェストの内容を入力します。
$ pfedit /home/ooyl/packages/tailorings/solaris-Baseline-nfs-client.p5m
set name=pkg.fmri value=pkg://corporate-IT/security/compliance/tailorings/ solaris-Baseline-nfs-client@1.0 set name=pkg.summary value="An NFS client tailoring for Solaris Baseline systems." set name=pkg.description value="This NFS tailoring is an adjunct to the solaris.Baseline profile. Assess all NFS client systems with this nfs-client tailoring." file ./sB-nfs-client.exportx.xml group=sys mode=0555 owner=root path=usr/lib/compliance/benchmarks/solaris/tailorings/nfs-client.xccdf.xml depend fmri=pkg:/security/compliance/benchmark/solaris-policy type=require
この例では、管理者は 2 つのテーラリングパッケージをインストールし、テーラリングテストファイルを保持しています。solaris/ は、インストールされているテーラリングパッケージが solaris ベンチマークに基づいていることを示します。
$ compliance tailor list solaris/basic solaris/RKerberos testBaselinePlus
Compliance Assessor 管理者は、インストールされているテーラリングの評価を実行し、その結果をブラウザに表示します。
管理者は、両方のテーラリングの評価を実行します。
$ pfexec compliance assess -t solaris/basic Assessment will be named "basic.2015-11-12,10:10" Title The OS version is correct Rule OSC-53005 Result pass ... % compliance report /var/compliance/assessments/solaris/basic/basic.2015-11-12,10:10/report.html
$ pfexec compliance assess -t solaris/RKerberos Assessment will be named "RKerberos.2015-11-12,10:20" ... Title Service svc:/network/rpc/gss is enabled Rule OSC-62511 Result pass ... $ compliance report /var/compliance/assessments/solaris/RKerberos/RKerberos.2015-11-12,11:10/report.html
管理者は、ブラウザに次のエントリを入力することによってレポートを表示します。
file:///var/share/compliance/assessments/solaris/basic/basic.2015-11-12,10:10/report.html file:///var/share/compliance/assessments/solaris/RKerberos/RKerberos.2015-11-12,11:10/report.html
次のステップ
このパッケージのテストおよび配布を完了するには、Oracle Solaris 11.3 でのImage Packaging System を使用したソフトウェアのパッケージ化と配布を参照してください。テーラリングパッケージには署名するようにしてください。パッケージングユーティリティーには、パッケージマニフェストで使用する可能性のあるその他の属性 (ファセットなど) が含まれています。