Oracle Solaris では、大域ゾーンと非大域ゾーンに同じようなセキュリティー対策を施しています。IPsec と IKE によってネットワークを保護し、権利と監査によってリソースの不正使用を防ぎ、不変ゾーンによって管理のセキュリティーを強化しています。次の各セクションでは、非大域ゾーンへのこれらのセキュリティー機能の実装について説明します。
root 役割には、すべての管理権利が含まれています。デフォルトでは、大域ゾーン管理者 (root) はすべての非大域ゾーンを管理できます。
セキュリティーのため、root 役割は、信頼できるユーザーが必要な権利だけでゾーンを管理できるように権利を委任するべきです。Oracle Solaris の権利は特権コマンドと承認であり、個々の責任分野の権利プロファイルにまとめられます。Oracle Solaris では、ゾーン向けにいくつかの権利プロファイルを提供しています。
root 役割には、ゾーン内で管理権利を制限する別の方法も含まれています。各非大域ゾーンには admin リソースが含まれています。root では、admin リソース内にユーザー名と必要な承認を指定することで、そのゾーンへのアクセスを制限できます。サイトのセキュリティー対策として責務を分離する必要がある場合、この方法によって root で非大域ゾーンにアクセスできないようにすることが可能です。
root 役割では権利プロファイルをユーザーに直接割り当てることも、管理役割を作成し、権利プロファイルをその役割に割り当てることもできます。ユーザーは役割を割り当てられると、その役割を引き受けてゾーンを管理する必要があります。
Oracle Solaris の権利とゾーン向けの admin リソースの詳細は、次を参照してください。
Oracle Solaris 11.4 でのユーザーとプロセスのセキュリティー保護 の 第 1 章, 権利を使用したユーザーとプロセスの制御について
Oracle Solaris 11.4 でのユーザーとプロセスのセキュリティー保護 の 割り当てられている管理権利の使用
Oracle Solaris Zones Configuration Resources の admin Resource Type
さまざまな理由から、大域ゾーンの管理者はゾーンを管理する権利を選ばれたユーザーに割り振ることが必要になる場合があります。これらの理由には次があります。
root がほかの管理操作に専念できるようにするため
ゾーンの管理にスペシャリストを割り当てるため
攻撃のエントリポイントの数を減らすため
責務の分離を可能にして root の権限が制限されるようにするため
PCI-DSS や HIPAA コンプライアンスなど、サイトのセキュリティー要件を実装するため
ゾーンの管理を委任するために root 役割で割り当てられる権利には、次の権利プロファイルが含まれます。
管理者が installed 状態または suspended 補助状態のゾーンを移行できるようにします。
ゾーンのコールド移行プロファイルを使用して、ゾーン管理者がコールド移行およびウォーム移行を実行できますが、ライブ移行は実行できません。
admin リソースタイプの auths プロパティーが管理対象ゾーンに構成されている場合、この権利プロファイルはゾーンの移行に十分ではありません。さらに、ゾーン管理者が admin リソースタイプの user プロパティーに指定されており、solaris.zone.migrate.cold 承認も割り当てられている必要があります。ログインが制限されている場合、ゾーン管理者に solaris.zone.login 承認も割り当てられている必要があります。
管理者がホスト上の任意のゾーン構成を作成、変更、または削除できるようにします。
ゾーン構成権利プロファイルを使用して、ゾーン管理者はゾーンを構成できます。移行されるゾーンでは、ゾーンの構成がまだターゲットシステムに存在していない場合、移行を完了するために、管理者にターゲットシステム上のこの権利プロファイルが付与されている必要があります。ゾーン構成権利プロファイルには、zonecfg コマンドのみが含まれます。
admin リソースタイプの auths プロパティーが管理対象ゾーンに構成されている場合、この権利プロファイルはゾーンの構成に十分ではありません。さらに、ゾーン管理者が admin リソースタイプの user プロパティーに指定されており、solaris.zone.config 承認も割り当てられている必要があります。ログインが制限されている場合、ゾーン管理者に solaris.zone.login 承認も割り当てられている必要があります。
管理者が既存のゾーンを管理できるようにします。
ゾーン管理権利プロファイルには、zlogin および zoneadm コマンドが含まれます。
admin リソースタイプの auths プロパティーが管理対象ゾーンに構成されている場合、この権利プロファイルはゾーンの管理に十分ではありません。さらに、ゾーン管理者が admin リソースタイプの user プロパティーに指定されており、ゾーンにログインして管理するために solaris.zone.* 承認も割り当てられている必要があります。
管理者が任意のタイプのゾーンを移行できるようにします。
ゾーン移行権利プロファイルを使用して、ゾーン管理者はインストール済みまたは実行中のゾーンの移行を実行できます。このプロファイルが割り当てられているゾーン管理者はライブ移行、ウォーム移行、またはコールド移行を実行できます。ゾーン移行権利プロファイルには、zoneadm および zonecfg コマンドが含まれます。
admin リソースの auths プロパティーが管理対象ゾーンに構成されている場合、この権利プロファイルはゾーンの移行に十分ではありません。さらに、ゾーン管理者が admin リソースに user として指定されており、solaris.zone.migrate 承認も割り当てられている必要があります。ログインが制限されている場合、ゾーン管理者に solaris.zone.login 承認も割り当てられている必要があります。
管理者がホスト上に、Trusted Extensions で構成されたゾーンを含む任意のゾーン構成を作成、変更、または削除できるようにします。
ゾーンセキュリティー権利プロファイルには、zonecfg または txzonemgr コマンドとすべての solaris.zone.* 承認が含まれます。割り当て対象者はゾーン管理を委任できます。txzonemgr については、Trusted Extensions 構成と管理 の Creating Labeled Zonesを参照してください。
admin リソースタイプの auths プロパティーが管理対象ゾーンに構成されている場合、この権利プロファイルはゾーンの作成、ログイン、および構成に十分ではありません。さらに、ゾーン管理者が admin リソースタイプの user プロパティーに指定されており、solaris.zone.* 承認も割り当てられている必要があります。
権利プロファイルの内容を確認したり、権利プロファイルを割り当てたりするには、次のコマンドを使用します。
権利プロファイルの内容を一覧表示します。
$ profiles -p "rights-profile-name" info
Zone 権利プロファイル内のコマンドに付与されている権利または特権を表示します。
$ getent exec_attr | grep Zone
このコマンドでは、「Zone」という語を含む権利プロファイル内の特権コマンドを検索します。
権利プロファイルをユーザーに割り当てます。
# usermod -K profiles+="rights-profile-name" username
プロセスは、特権のサブセットに制限されています。特権を制限することで、ほかのゾーンに影響を及ぼす可能性がある操作がゾーンで実行されないようにします。特権セットにより、特権が付与されたユーザーがゾーン内で実行可能な機能が制限されます。
特定のゾーンで利用可能な特権のリストを表示するには、ppriv ユーティリティーを使用します。ゾーン内からは ppriv -l コマンドを使用します。大域ゾーンからは、このコマンドにゾーン名を追加します (ppriv -l zonename)。
次の表に、Oracle Solaris の特権すべて、およびゾーン内での各特権のステータスを示します。省略可能な特権は、デフォルト特権セットの一部ではありませんが、limitpriv プロパティーを使って指定できます。必須の特権が、生成される特権セットに含まれている必要があります。禁止された特権を、生成される特権セットに含めることはできません。
|
|
|
|
次の表に、Oracle Solaris Trusted Extensions の特権すべて、および各特権のゾーン内のステータスを示します。省略可能な特権は、デフォルト特権セットの一部ではありませんが、limitpriv プロパティーを使って指定できます。
|
非大域ゾーンで利用できる特権を変更する場合は、ゾーンの特権を変更する方法を参照してください。
特権の詳細は、ppriv(1) のマニュアルページおよびOracle Solaris 11.4 でのユーザーとプロセスのセキュリティー保護 の プロセス権管理を参照してください。
不変ゾーンは、読み取り専用の root ファイルシステムを持つゾーンです。このゾーンは、非大域ゾーンにも大域ゾーンにもできます。読み取り専用の root では、ゾーンの構成が維持されます。また、実行時環境に追加の制限を加えることにより、ゾーンのセキュアな実行時の境界が拡張されます。保守操作は可能ですが、保守を行うにあたっては、管理者は慎重な手順でゾーンにアクセスする必要があります。システムバイナリまたはシステム構成への変更は、必須書き込みアクセス制御 (MWAC) セキュリティーポリシーによってブロックされます。
MWAC を使用すると、SMF プロパティー file-mac-profile を介してファイルシステム書き込み権限を適用できます。MWAC セキュリティーポリシーを指定するには、zonecfg コマンドで file-mac-profile 値を変更します。このポリシーはカーネルで適用されます。大域ゾーンは非大域ゾーンの MWAC ポリシーの対象ではないため、大域ゾーンではインストール、イメージの更新、および保守のために非大域ゾーンのファイルシステムに書き込むことができます。
ゾーンが ready 状態になると、MWAC ポリシーがダウンロードされます。このポリシーはゾーンのブート時に有効になります。インストール後のアセンブリと構成を行うには、一時的な書き込み可能ルートファイルシステムのブート処理を使用します。ゾーンの MWAC 構成への変更は、ゾーンをリブートしたときにのみ反映されます。
IP データグラムの保護を提供する IPsec (Internet Protocol Security Architecture) は、排他的 IP ゾーン内で使用できます。IPsec については、Securing the Network in Oracle Solaris 11.4 の IPsec Referenceに説明されています。IKE (Internet Key Exchange) プロトコルを使用して、認証および暗号化に必要な鍵材料が自動的に管理されます。
詳細は、ipsecconf(8) および ipseckey(8) のマニュアルページを参照してください。
IPsec は、大域ゾーン内で使用できます。ただし、非大域ゾーン内では、IPsec で IKE を使用することはできません。そのため、大域ゾーンで Internet Key Exchange (IKE) プロトコルを使用して、非大域ゾーンの IPsec キーおよび IPSec ポリシーを管理する必要があります。構成中の非大域ゾーンに対応するソースアドレスを使用します。
IPsec は、排他的 IP ゾーン内で使用できます。
Oracle Solaris 監査はすべてのゾーン内でデフォルトで有効になっています。
監査には、ゾーンを実行しているシステムでの次の 2 つの監査モデルが用意されています。
すべてのゾーンを大域ゾーンから一元的に監査します。このモデルは、すべてのゾーンが大域ゾーンによって管理される場合 (たとえば、ゾーンを使用してサービスの隔離を実現する場合) に使用されます。
各ゾーンを大域ゾーンから独立して監査します。このモデルは、各ゾーンが別々に管理される場合 (たとえば、ゾーンごとにサーバーの統合を実現する場合) に使用されます。
詳細は、次を確認してください。
Managing Auditing in Oracle Solaris 11.4 の 第 1 章, About Auditing in Oracle Solaris
Managing Auditing in Oracle Solaris 11.4 の Auditing on a System With Oracle Solaris Zones
Managing Auditing in Oracle Solaris 11.4 の Configuring the Audit Service in Zones
auditconfig(8)、auditreduce(8)、usermod(8)、および user_attr(5) の各マニュアルページ