この章では、Trusted Extensions のトラステッドネットワークの概念とメカニズムを説明します。
Trusted Extensions は、ゾーン、ホスト、およびネットワークにセキュリティー属性を割り当てます。これらの属性により、ネットワークで次のセキュリティー機能が実施されます。
ネットワーク通信で、データに適切なラベルが付けられます。
必須アクセス制御 (MAC) の規則が、ローカルネットワークを通してデータを送受信するとき、およびファイルシステムをマウントするときに実施されます。
データが遠隔地のネットワークに経路指定されるときに、MAC の規則が実施されます。
データがゾーンに経路指定されるときに、MAC 規則が実施されます。
Trusted Extensions では、ネットワークパケットは MAC によって保護されます。MAC に関する決定には、ラベルが使用されます。データには、機密度を表すラベルが明示的または暗黙的に付けられます。ラベルには、ID フィールド、格付け (「レベル」) フィールド、およびコンパートメント (「カテゴリ」) フィールドがあります。データは、認可検査に合格する必要があります。この検査は、ラベルが適格な形式であるかどうか、およびラベルが受信側ホストの認可範囲内にあるかどうかを確認します。受信側ホストの認可範囲内にある適格な形式のパケットは、アクセスが許可されます。
信頼されたシステム間で交換される IP パケットには、ラベルが付けられます。Trusted Extensions は Commercial IP Security Option (CIPSO) ラベルをサポートします。パケットの CIPSO ラベルは、IP パケットの分類、分離、および経路指定を行います。経路指定の決定では、データの機密ラベルが宛先のラベルと比較されます。
一般的にトラステッドネットワークでは、ラベルは送信側ホストによって生成され、受信側ホストによって処理されます。ただし、信頼されたルーターは、トラステッドネットワークでパケットを転送するときにラベルを追加したり取り除くことができます。機密ラベルは、転送の前に CIPSO ラベルにマップされます。CIPSO ラベルは IP パケットに埋め込まれます。通常、パケットの送信側と受信側は、同じラベルで操作を行います。
トラステッドネットワークソフトウェアは、サブジェクト (プロセス) とオブジェクト (データ) が別のホストに配置されている場合でも、Trusted Extensions のセキュリティーポリシーが実施されるようにします。Trusted Extensions ネットワークは、分散型アプリケーション全体で MAC を保存します。
Trusted Extensions のデータパケットには、CIPSO ラベルオプションが含まれます。データパケットは、IPv4 または IPv6 ネットワークで送信できます。
標準の IPv4 形式では、オプションを指定した IPv4 ヘッダーのあとに TCP か UDP または SCTP ヘッダーが続き、そのあとに実際のデータが続きます。Trusted Extensions の IPv4 パケットは、セキュリティー属性として IP ヘッダーに CIPSO オプションを使用します。
標準の IPv6 形式では、拡張した IPv6 ヘッダーのあとに TCP か UDP または SCTP ヘッダーが続き、そのあとに実際のデータが続きます。Trusted Extensions の IPv6 パケットでは、拡張されたヘッダー内にマルチレベルのセキュリティーオプションが含まれます。
Trusted Extensions は、トラステッドネットワークでラベル付きホストとラベルなしホストをサポートします。LDAP は、完全にサポートされるネームサービスです。さまざまなコマンドと GUI でネットワークを管理できます。
Trusted Extensions ソフトウェアを実行しているシステムは、Trusted Extensions ホストと次のタイプのシステムとのネットワーク通信をサポートします。
Trusted Extensions を実行している、ほかのシステム
セキュリティー属性を認識しないが、TCP/IP をサポートするオペレーティングシステムを実行しているシステム (Solaris システム、ほかの UNIX システム、Microsoft Windows、Macintosh OS システムなどを実行しているシステム)
CIPSO ラベルを認識するほかのトラステッドオペレーティングシステムを実行しているシステム
Solaris OS の場合と同様に、Trusted Extensions ネットワークの通信とサービスは、ネームサービスによって管理できます。Trusted Extensions は、Solaris のネットワークインタフェースに次のインタフェースを追加します。
Trusted Extensions は、tnzonecfg、tnrhdb、および tnrhtp の 3 つのネットワーク構成データベースを追加します。詳しくは、「Trusted Extensions のネットワーク構成データベース」を参照してください。
Trusted Extensions のネームサービスのスイッチファイル nsswitch.conf には、tnrhtp および tnrhdb データベースのエントリが含まれます。これらのエントリは、各サイトの構成に応じて修正できます。
Trusted Extensions は LDAP ネームサービスを使用して、ホスト、ネットワーク、およびユーザーを定義する構成ファイルを集中的に管理します。LDAP ネームサービスに関する、トラステッドネットワークデータベースの nsswitch.conf のデフォルトエントリを次に示します。
# Trusted Extensions tnrhtp: files ldap tnrhdb: files ldap |
Sun Java System Directory Server の LDAP ネームサービスは、Trusted Extensions で完全にサポートされる唯一のネームサービスです。Trusted Extensions が設定されたシステムでの LDAP の使用方法については、第 9 章Trusted Extensions と LDAP (概要)を参照してください。
Trusted Extensions は、Solaris 管理コンソールにツールを追加します。コンソールを使用して、ゾーン、ホスト、およびネットワークを集中的に管理します。ネットワークツールについては、「Solaris 管理コンソールツール」を参照してください。
『Oracle Solaris Trusted Extensions 構成ガイド』では、ネットワークを構成するときにゾーンとホストを定義する方法について説明しています。詳細は、第 13 章Trusted Extensions でのネットワークの管理 (手順)を参照してください。
Trusted Extensions は、トラステッドネットワークを管理するためのコマンドを追加します。また、Trusted Extensions は Solaris ネットワークコマンドにオプションを追加します。コマンドの説明については、「Trusted Extensions のネットワークコマンド」を参照してください。
Trusted Extensions は、カーネルに 3 つのネットワーク構成データベースをロードします。これらのデータベースは、データがホスト間で転送されるときの認可検査に使用されます。
tnzonecfg – このローカルデータベースは、セキュリティーに関連するゾーン属性を格納します。各ゾーンの属性は、ゾーンラベルと、シングルレベルおよびマルチレベルポートへのゾーンのアクセスを指定します。 ping などの制御メッセージへの応答は、別の属性が処理します。ゾーンのラベルは、label_encodings ファイルで定義します。詳細は、label_encodings(4) と smtnzonecfg(1M) のマニュアルページを参照してください。マルチレベルポートについては、「ゾーンとマルチレベルポート」を参照してください。
tnrhtp – このデータベースは、ホストとゲートウェイのセキュリティー属性を表すテンプレートを格納します。tnrhtp は、ローカルデータベースにすることも、LDAP サーバーに保存することもできます。ホストとゲートウェイはトラフィックを送信するときに、宛先ホストと次のホップのゲートウェイの属性を使用して MAC を実施します。トラフィックを受信する場合、ホストとゲートウェイは送信側の属性を使用します。セキュリティー属性については、「トラステッドネットワークのセキュリティー属性」を参照してください。詳細は、smtnrhtp(1M) のマニュアルページを参照してください。
tnrhdb – このデータベースは、通信が許可されたすべてのホストに対応する IP アドレスとネットワーク接頭辞 (代替機構) を保持します。tnrhdb は、ローカルデータベースにすることも、LDAP サーバーに保存することもできます。各ホストまたはネットワーク接頭辞には、tnrhtp データベースからセキュリティーテンプレートが割り当てられます。テンプレートの属性は、割り当てられたホストの属性を定義します。詳細は、smtnrhdb(1M) のマニュアルページを参照してください。
Trusted Extensions では、Solaris 管理コンソールはこれらのデータベースを処理できるように拡張されています。詳しくは、「Solaris 管理コンソールツール」を参照してください。
Trusted Extensions は、トラステッドネットワークを管理するために、次のコマンドを追加します。
tnchkdb – このコマンドは、トラステッドネットワークデータベースの正しさを確認するために使用します。tnchkdb コマンドは、セキュリティーテンプレート (tnrhtp)、セキュリティーテンプレートの割り当て (tnrhdb)、またはゾーンの構成 (tnzonecfg) を変更するごとに使用されます。Solaris 管理コンソールツールは、データベースが修正されたときに、このコマンドを自動的に実行します。詳しくは、tnchkdb(1M) のマニュアルページを参照してください。
tnctl – このコマンドは、カーネルのトラステッドネットワーク情報を更新するために使用できます。また、tnctl はシステムサービスです。svcadm restart /network/tnctl コマンドによる再起動は、ローカルシステムのトラステッドネットワークデータベースからカーネルキャッシュを更新します。Solaris 管理コンソールツールは、データベースがファイルの有効範囲で修正されたときに、このコマンドを自動的に実行します。詳しくは、tnctl(1M) のマニュアルページを参照してください。
tnd – このデーモンは、LDAP ディレクトリおよびローカルファイルから tnrhdb および tnrhtp 情報を取得します。各ネームサービスの情報は、nsswitch.conf ファイル内での順番に従って読み込まれます。tnd デーモンはブート時に、svc:/network/tnd サービスによって起動されます。このサービスは svc:/network/ldap/client に依存します。
tnd コマンドは、デバッグやポーリング間隔の変更にも使用できます。詳しくは、tnd(1M) のマニュアルページを参照してください。
tninfo – このコマンドは、トラステッドネットワークカーネルキャッシュの現在の状態を詳細に表示します。出力は、ホスト名、ゾーン、およびセキュリティーテンプレートを使用してフィルタ処理できます。詳しくは、tninfo(1M) のマニュアルページを参照してください。
Trusted Extensions は、次の Solaris ネットワークコマンドにオプションを追加します。
ifconfig – このコマンドの all-zones インタフェースフラグは、特定のインタフェースをシステムのすべてのゾーンで利用できるようにします。データを配信する適切なゾーンは、データに関連付けられたラベルによって決定されます。詳しくは、ifconfig(1M) のマニュアルページを参照してください。
netstat – -R オプションは、マルチレベルソケットのセキュリティー属性や経路指定テーブルエントリなどの Trusted Extensions 固有の情報を表示するために、Solaris の netstat の使用法を拡張します。拡張されたセキュリティー属性には、接続先のラベルや、ソケットがゾーンに固有か複数ゾーンで利用できるかの区別などがあります。詳しくは、netstat(1M) のマニュアルページを参照してください。
route – -secattr オプションは Solaris の route を拡張し、経路のセキュリティー属性を表示します。オプションの値は、次の形式で指定します。
min_sl=label,max_sl=label,doi=integer,cipso |
cipso キーワードは省略可能で、デフォルトで設定されます。詳しくは、route(1M) のマニュアルページを参照してください。
snoop – Solaris OS と同様、このコマンドに -v オプションを指定すると、IP ヘッダーを詳細に表示できます。Trusted Extensions では、ヘッダーにラベル情報が含まれます。
Trusted Extensions のネットワーク管理は、セキュリティーテンプレートに基づきます。セキュリティーテンプレートは、共通のプロトコルおよび同じセキュリティー属性を持つ一連のホストを記述します。
セキュリティー属性はテンプレートにより、システム (ホストとルーターの両方) に管理の目的で割り当てられます。セキュリティー管理者はテンプレートを管理し、これらをシステムに割り当てます。システムにテンプレートが割り当てられていない場合、このシステムとの通信は許可されません。
すべてのテンプレートには名前が付けられ、次の情報が含まれます。
「ラベルなし」または「CIPSO」のいずれかの「ホストタイプ」。ネットワーク通信に使用されるプロトコルは、テンプレートのホストタイプによって決定されます。
ホストタイプは、CIPSO オプションを使用するかどうかを決定し、MAC に影響します。「セキュリティーテンプレートのホストタイプとテンプレート名」を参照してください。
各ホストタイプに適用される一連のセキュリティー属性。
ホストタイプとセキュリティー属性の詳細は、「Trusted Extensions のネットワークセキュリティー属性」を参照してください。
Trusted Extensions には、セキュリティーテンプレートのデフォルトのセットがインストールされています。ホストにテンプレートを割り当てると、テンプレートのセキュリティー値がホストに適用されます。Trusted Extensions では、ネットワーク上のラベルなしホストとラベル付きホストの両方に、テンプレートによってセキュリティー属性が割り当てられます。セキュリティーテンプレートが割り当てられていないホストとは通信できません。テンプレートは、ローカルに保存したり、Sun Java System Directory Server の LDAP ネームサービスに保存することができます。
テンプレートはホストに直接または間接的に割り当てることができます。直接割り当てでは、テンプレートを特定の IP アドレスに割り当てます。間接割り当てでは、ホストを含むネットワークアドレスにテンプレートを割り当てます。セキュリティーテンプレートがないホストは、Trusted Extensions が設定されたホストと通信できません。直接割り当てと間接割り当てについては、「トラステッドネットワーク代替機構」を参照してください。
テンプレートは、Solaris 管理コンソールの「セキュリティーテンプレート」ツールを使用して修正または作成することができます。「セキュリティーテンプレート」ツールは、テンプレートの必要なフィールドへの入力を実施します。どのフィールドが必要かは、ホストタイプに基づきます。
各ホストタイプには、必須および任意のセキュリティー属性の独自セットがあります。セキュリティーテンプレートで、次のセキュリティー属性を指定します。
デフォルトラベル – ラベルなしホストの信頼レベルを定義します。ラベルなしホストから送信されたパケットは、受信側の Trusted Extensions ホストまたはゲートウェイにより、このラベルで読み取られます。
「デフォルトラベル」属性は、ラベルなしホストタイプに固有です。詳細は、smtnrhtp(1M) のマニュアルページと、次の節を参照してください。
DOI – 解釈のドメインを識別するゼロ以外の正の整数です。DOI は、ネットワーク通信またはネットワークエンティティーに適用するラベルエンコーディングのセットを識別するために使用されます。DOI が異なるラベル同士は、その他の設定が同じでも無関係です。ラベルなしホストでは、DOI はデフォルトラベルに適用されます。Trusted Extensions では、デフォルト値は 1 です。
最小ラベル – ラベル認可範囲の下限を定義します。ホストおよび次のホップのゲートウェイは、テンプレートで指定された最小ラベルより下位レベルのパケットを受信しません。
最大ラベル – ラベル認可範囲の上限を定義します。ホストおよび次のホップのゲートウェイは、テンプレートで指定された最大ラベルを超えるパケットを受信しません。
セキュリティーラベルセット – 省略可能です。セキュリティーテンプレート用のセキュリティーラベルの不連続なセットを指定します。セキュリティーラベルセットが指定されたテンプレートに割り当てられたホストは、最大ラベルと最小ラベルで決定される認可範囲に加え、ラベルセット内のいずれかのラベルに一致するパケットも送受信できます。指定できる最大のラベル数は 4 です。
Trusted Extensions は、トラステッドネットワークデータベースで 2 種類のホストタイプをサポートし、2 つのデフォルトテンプレートを提供します。
CIPSO ホストタイプ – トラステッドオペレーティングシステムを実行するホストに使用します。Trusted Extensions は、このホストタイプに対して cipso という名前のテンプレートを提供します。
Common IP Security Option (CIPSO) プロトコルは、IP オプションフィールドで渡すセキュリティーラベルを指定するために使用されます。CIPSO ラベルは、データのラベルから自動的に派生します。CIPSO セキュリティーラベルの受け渡しには、タグタイプ 1 が使用されます。続いてこのラベルは、IP レベルでセキュリティー検査を行い、ネットワークパケットのデータにラベルを付けるために使用されます。
ラベルなしホストタイプ - 標準ネットワークプロトコルを使用し、CIPSO オプションをサポートしないホストに使用します。Trusted Extensions は、このホストタイプに対して admin_low という名前のテンプレートを提供します。
このホストタイプは、Solaris OS またはほかのラベルなしオペレーティングシステムを実行するホストに割り当てられます。このホストタイプは、ラベルなしホストとの通信に適用するデフォルトラベルとデフォルト認可上限を提供します。また、ラベル範囲または一連の不連続ラベルを指定して、ラベルなしゲートウェイへの転送用パケットの送信を許可できます。
admin_low テンプレートは、ラベルなしテンプレートをサイト固有のラベルで構築する例を提供します。Trusted Extensions のインストールには admin_low テンプレートが必要ですが、通常のシステム操作に対してセキュリティー設定が適切でない場合があります。システム保守やサポート上の理由により、提供されているテンプレートは変更を加えずそのまま保持してください。
ラベルなしホストタイプのテンプレートでは、デフォルトラベルが指定されます。このラベルは、Solaris システムなど、ラベルを認識しないオペレーティングシステムを実行しているホストとの通信を制御するために使用します。割り当てられるデフォルトラベルは、ホストとそのユーザーに適切な信頼レベルを反映します。
ラベルなしホストとの通信は原則的にデフォルトラベルのみに限定されるため、これらのホストは「シングルラベルのホスト」とも呼ばれます。
同じ DOI (解釈のドメイン) を使用する組織は、ラベル情報やその他のセキュリティー属性を同じ方法で解釈します。Trusted Extensions がラベルの比較を行う場合、DOI が同じであるかどうかが確認されます。
Trusted Extensions システムでは、1 つの DOI 値に対してラベルポリシーを適用します。Trusted Extensions システムのすべてのゾーンは、同じ DOI で動作する必要があります。Trusted Extensions システムでは、異なる DOI を使用するシステムから受信されるパケットに対する例外処理を用意していません。
サイトでデフォルト値と異なる DOI 値を使用する場合は、その値を /etc/system ファイルに追加し、各セキュリティーテンプレートの DOI 値を変更する必要があります。初期手順については、『Oracle Solaris Trusted Extensions 構成ガイド』の「解釈ドメインの構成」を参照してください。各セキュリティーテンプレートで DOI を設定する場合は、例 13–1 を参照してください。
「最小ラベル」および「最大ラベル」属性は、ラベル付きホストおよびラベルなしホストのラベル範囲を決定するために使用されます。これらの属性は、次の処理に使用されます。
遠隔 CIPSO ホストと通信するときに使用できるラベル範囲を設定する
パケットを宛先ホストに送信するには、パケットのラベルが、宛先ホストのセキュリティーテンプレートでホストに割り当てられたラベル範囲内にある必要があります。
CIPSO ゲートウェイまたはラベルなしゲートウェイを通して転送されるパケットのラベル範囲を設定する
ラベルなしホストタイプのラベル範囲はテンプレートで指定できます。ラベル範囲を使用すると、ホストは、指定のラベル範囲内にあるパケットであれば、ホストのラベルにあるものではなくても転送できます。
セキュリティーラベルセットは、遠隔ホストでパケットを受信、転送、または送信できる不連続なラベルを、最大で 4 つ定義します。この属性は省略可能です。デフォルトでは、セキュリティーラベルセットは定義されていません。
tnrhdb データベースは、セキュリティーテンプレートを特定のホストに直接または間接的に割り当てることができます。直接割り当てでは、テンプレートをホストの IP アドレスに割り当てます。間接割り当ては、代替機構で処理されます。トラステッドネットワークソフトウェアは、ホストの IP アドレスをテンプレートに割り当てる固有のエントリを最初に検索します。ホストに固有のエントリが見つからない場合、ソフトウェアは「最長接頭辞一致」で検索します。ホストの IP アドレスが、接頭辞を固定長にした IP アドレスの「最長接頭辞一致」を満たす場合は、ホストをセキュリティーテンプレートに間接的に割り当てることができます。
IPv4 では、サブネットを利用して間接割り当てが可能です。4、3、2、または 1 個の後続ゼロ (0) オクテットを使用して間接割り当てを行う場合、ソフトウェアは接頭辞の長さをそれぞれ 0、8、16、または 24 に計算します。表 12–1 のエントリ 3 - 6は、この代替機構を示します。
スラッシュと固定ビット数を追加して、接頭辞の長さを設定することもできます。IPv4 ネットワークアドレスの接頭辞長は、1 - 32 です。IPv6 ネットワークアドレスの接頭辞長は、1 - 128 です。
次の表に、代替アドレスとホストアドレスの例を示します。代替アドレスセットに含まれるアドレスが直接割り当てられる場合、そのアドレスに対して代替機構は使用されません。
表 12–1 tnrhdb ホストアドレスと代替機構のエントリ
IP バージョン |
tnrhdb エントリ |
含まれるアドレス |
|||
---|---|---|---|---|---|
IPv4 |
|
/32 は、接頭辞長が 32 ビットであることを示します。 |
|||
|
192.168.118.0 ~ 192.168.118.63 |
||||
|
192.168.118. ネットワーク上のすべてのアドレス。 |
||||
|
192.168.0. ネットワーク上のすべてのアドレス。 |
||||
|
192.168. ネットワーク上のすべてのアドレス。 |
||||
|
192. ネットワーク上のすべてのアドレス。 |
||||
|
ネットワークアドレス 192.168.0.0。ワイルドカードアドレスではありません。 |
||||
|
ネットワークアドレス 192.168.118.0。ワイルドカードアドレスではありません。 |
||||
|
ネットワークアドレス 192.0.0.0。ワイルドカードアドレスではありません。 |
||||
|
ホストアドレス 0.0.0.0。ワイルドカードアドレスではありません。 |
||||
|
全ネットワーク上の全アドレス。 |
||||
IPv6 |
|
|
|||
|
2001:DB8:22:5000::0 ~ 2001:DB8:22:5fff:ffff:ffff:ffff:ffff |
||||
|
全ネットワーク上の全アドレス。 |
アドレス 0.0.0.0/32 は、アドレス 0.0.0.0 に一致することに注意してください。tnrhdb エントリ 0.0.0.0/32:admin_low は、リテラルアドレス 0.0.0.0 が発信元 IP アドレスとして使用されているシステムで便利です。たとえば、DHCP クライアントは、DHCP サーバーがクライアントに IP アドレスを割り当てるまでは、DHCP サーバーに 0.0.0.0 として接続します。
DHCP クライアントにサービスを提供する Sun Ray サーバー上で tnrhdb エントリを作成する方法については、例 13–13 を参照してください。0.0.0.0:admin_low はデフォルトのワイルドカードエントリであるため、このデフォルトを削除または変更する前に、「トラステッドネットワーク上で接続できるホストを制限する」の留意事項を参照してください。
IPv4 および IPv6 アドレスの接頭辞長については、『System Administration Guide: IP Services』の「Designing Your CIDR IPv4 Addressing Scheme」 と 『System Administration Guide: IP Services』の「IPv6 Addressing Overview」を参照してください。
Trusted Extensions では、異なるネットワーク上にあるホスト間の送信経路は、伝送の各ステップでセキュリティーを維持する必要があります。Trusted Extensions は、Solaris OS の経路制御プロトコルに拡張セキュリティー属性を追加します。Solaris OS と異なり、この Trusted Extensions のリリースは動的な経路指定をサポートしません。静的な経路指定の詳細は、route(1M) のマニュアルページの -p オプションを参照してください。
ゲートウェイとルーターはパケットを経路指定します。この説明では、「ゲートウェイ」と「ルーター」の 2 つの用語を同じ意味で使用しています。
同じサブネット上のホスト間の通信では、ルーターが必要ないため、認可検査は終端のみで実行されます。ラベル範囲検査は発信元で実行されます。受信側ホストが Trusted Extensions ソフトウェアを実行している場合は、宛先でもラベル範囲検査が実行されます。
発信元ホストと宛先ホストが別のサブネット上にある場合、パケットは発信元ホストからゲートウェイに送信されます。経路を選択するときに、宛先のラベル範囲と 1 ホップ目のゲートウェイのラベル範囲が発信元で検査されます。ゲートウェイは、宛先ホストが接続されたネットワークにパケットを転送します。宛先に届くまでに、パケットが複数のゲートウェイを通過する場合もあります。
Trusted Extensions ゲートウェイでは、特定の場合にラベル範囲検査が実行されます。Trusted Extensions システムが 2 つのラベルなしホスト間でパケットを経路指定している場合、発信元ホストのデフォルトラベルと宛先ホストのデフォルトラベルが比較されます。ラベルなしホストがデフォルトラベルを共有している場合は、パケットが経路指定されます。
各ゲートウェイは、すべての宛先への経路をリストで維持します。標準の Solaris の経路指定では、最適となる経路が選択されます。Trusted Extensions は、経路の選択に適用されるセキュリティー要件を検査するための追加ソフトウェアを提供します。セキュリティー要件を満たさない Solaris の選択はスキップされます。
Trusted Extensions の経路指定テーブルのエントリには、セキュリティー属性を組み込むことができます。セキュリティー属性には、cipso キーワードを含めることができます。セキュリティー属性には、最大ラベル、最小ラベル、および DOI を含める必要があります。
セキュリティー属性を指定しないエントリには、ゲートウェイのセキュリティーテンプレートの属性が使用されます。
Trusted Extensions ソフトウェアは、セキュリティーの見地から、送信経路の適切さを判定します。ソフトウェアは「認可検査」と呼ばれる一連のテストを、発信元ホスト、宛先ホスト、および中間ゲートウェイで実行します。
次の説明では、ラベル範囲の認可検査はセキュリティーラベルセットの検査も意味します。
認可検査では、ラベル範囲と CIPSO ラベル情報が確認されます。経路のセキュリティー属性は、経路指定テーブルのエントリから取得されるか、エントリにセキュリティー属性がない場合はゲートウェイのセキュリティーテンプレートから取得されます。
通信の着信時には、Trusted Extensions ソフトウェアは可能であればパケット自体からラベルを取得します。パケットからのラベルの取得は、ラベルをサポートするシステムからメッセージが送信されている場合にのみ可能です。パケットからラベルを取得できない場合は、トラステッドネットワークデータベースファイルからデフォルトラベルがメッセージに割り当てられます。これらのラベルは認可検査時にも使用されます。Trusted Extensions は、発信メッセージ、転送メッセージ、および着信メッセージに対して複数の検査を実施します。
送信側プロセスまたは送信側ゾーンで、次の認可検査が実行されます。
すべての宛先について、データのラベルが、送信経路の次のホップ (最初のホップ) のラベル範囲内にある必要があります。また、ラベルは 1 ホップ目のゲートウェイのセキュリティー属性に含まれる必要があります。
すべての宛先について、発信パケットの DOI が宛先ホストの DOI に一致している必要があります。DOI は、1 ホップ目のゲートウェイを含め、経路に沿ったすべてのホップの DOI にも一致する必要があります。
宛先ホストがラベルなしホストの場合、次のいずれかの条件を満たす必要があります。
送信側ホストのラベルが、宛先ホストのデフォルトラベルに一致する必要がある。
送信側ホストにラベル間通信を行う権限が与えられ、送信側のラベルが宛先のデフォルトラベルよりも優位である。
送信側ホストにラベル間通信を行う権限が与えられ、送信側のラベルが ADMIN_LOW である。つまり、送信側が大域ゾーンから送信を行っている。
最初のホップ検査は、メッセージが任意のネットワーク上のホストからゲートウェイを経由して別のネットワーク上のホストに送信されているときに行われます。
Trusted Extensions ゲートウェイシステムでは、次のホップのゲートウェイに対して認可検査が実行されます。
着信パケットにラベルがない場合、パケットは tnrhdb エントリから発信元ホストのデフォルトラベルを継承します。それ以外の場合、パケットは指定された CIPSO ラベルを受け取ります。
パケット転送の検査は、発信元の認可と同様に処理されます。
すべての宛先について、データのラベルは次のホップのラベル範囲内にある必要があります。また、ラベルは次のホップのホストのセキュリティー属性に含まれる必要があります。
すべての宛先について、発信パケットの DOI が宛先ホストの DOI に一致している必要があります。DOI は、次のホップのホストの DOI にも一致する必要があります。
ラベルなしパケットのラベルは、宛先ホストのデフォルトラベルに一致する必要があります。
CIPSO パケットのラベルは、宛先ホストのラベル範囲内にある必要があります。
Trusted Extensions ホストがデータを受信するときに、ソフトウェアは次の検査を実行します。
着信パケットにラベルがない場合、パケットは tnrhdb エントリから発信元ホストのデフォルトラベルを継承します。それ以外の場合、パケットは指定された CIPSO ラベルを受け取ります。
パケットのラベルと DOI は、宛先ゾーンまたは宛先プロセスのラベルおよび DOI と一致する必要があります。プロセスがマルチレベルポートで待機している場合は例外です。プロセスにラベル間通信が許可され、プロセスが大域ゾーンで実行されているか、パケットのラベルよりも優位なラベルを持つ場合、待機中のプロセスはパケットを受信できます。
Trusted Extensions は、ネットワーク間通信の経路指定を、複数の方法でサポートしています。セキュリティー管理者役割は、サイトのセキュリティーポリシーで要求されるセキュリティーレベルを実施できる経路を設定できます。
たとえば、サイトではローカルネットワークの外部の通信をシングルラベルに制限できます。このラベルは、公開情報に適用します。UNCLASSIFIED や PUBLIC などのラベルで公開情報を表すことができます。制限を実施するために、これらのサイトはシングルラベルテンプレートを外部ネットワークに接続されたネットワークインタフェースに割り当てます。TCP/IP と経路指定の詳細は、次のマニュアルを参照してください。
『System Administration Guide: IP Services』の「Planning for Routers on Your Network」
『System Administration Guide: IP Services』の「Configuring Systems on the Local Network」
『System Administration Guide: IP Services』の「Major TCP/IP Administrative Tasks (Task Map)」
『Solaris のシステム管理 (IP サービス)』の「DHCP サービスを使用するためのネットワークの準備 (作業マップ)」
Trusted Extensions ホストは、信頼度のもっとも高いルーターとして動作します。ほかの種類のルーターは、Trusted Extensions のセキュリティー属性を認識するとは限りません。管理アクションを行わないと、MAC セキュリティー保護を提供しないルーターを経由してパケットが送信される可能性があります。
CIPSO ルーターは、パケットの IP オプションセクションに正しい種類の情報が見つからなかった場合、パケットを破棄します。たとえば、CIPSO ルーターは、必要な CIPSO オプションが IP オプションに見つからない場合、または IP オプションの DOI が宛先の認可と一致しない場合に、パケットを破棄します。
Trusted Extensions ソフトウェアを実行していないほかの種類のルーターを構成して、CIPSO オプションを含むパケットを通過させたり破棄させたりできます。Trusted Extensions などが提供する CIPSO を認識するゲートウェイのみが、CIPSO IP オプションの内容を使用して、MAC を実施することができます。
トラステッド経路指定をサポートするために、Trusted Extensions セキュリティー属性を含むように Solaris 10 経路指定テーブルが拡張されます。属性については、「Trusted Extensions の経路指定テーブルエントリ」を参照してください。Trusted Extensions では、経路指定テーブルのエントリを管理者が手動で作成する、静的経路指定がサポートされます。詳しくは、route(1M) のマニュアルページの -p オプションを参照してください。
経路指定ソフトウェアは、経路指定テーブルで宛先ホストへの送信経路を探します。ホストが明示的に定義されていない場合、経路指定ソフトウェアは、ホストが配置されているサブネットワークのエントリを探します。ホストと、ホストが配置されているネットワークのどちらも定義されていない場合、デフォルトゲートウェイが定義されていれば、ホストはデフォルトゲートウェイにパケットを送信します。複数のデフォルトゲートウェイを定義可能で、それぞれが同等に扱われます。
このリリースの Trusted Extensions では、セキュリティー管理者は経路を手動で設定し、条件が変更されたときに手動で経路指定テーブルを変更します。たとえば、多くのサイトは外部との通信を単一のゲートウェイで行なっています。この場合、ネットワーク上の各ホストで、単一のゲートウェイを「デフォルト」として静的に定義することができます。動的な経路指定のサポートは、Trusted Extensions の今後のリリースで利用できるようになる可能性があります。
Trusted Extensions の経路指定の例は次のとおりです。図と表では、ホスト 1 とホスト 2 の間で可能な 3 つの送信経路を示しています。
経路 |
最初のホップのゲートウェイ |
最小ラベル |
最大ラベル |
DOI |
---|---|---|---|---|
#1 |
ゲートウェイ 1 |
CONFIDENTIAL |
SECRET |
1 |
#2 |
ゲートウェイ 3 |
ADMIN_LOW |
ADMIN_HIGH |
1 |
#3 |
ゲートウェイ 5 |
|
|
|
送信経路 #1 は、CONFIDENTIAL から SECRET のラベル範囲のパケットを伝送できます。
送信経路 #2 は、ADMIN_LOW から ADMIN_HIGH の範囲のパケットを伝送できます。
送信経路 #3 には、経路指定情報が指定されていません。したがって、セキュリティー属性は tnrhtp データベースにあるゲートウェイ 5 のテンプレートから取得されます。
ラベルやソケットの拡張されたセキュリティー属性を表示するために、Trusted Extensions では次の Solaris のネットワークコマンドが修正されています。
netstat -rR コマンドは、経路指定テーブルのエントリにあるセキュリティー属性を表示します。
netstat -aR コマンドは、ソケットのセキュリティー属性を表示します。
route -p コマンドに add または delete オプションを指定すると、経路指定テーブルエントリが変更されます。
詳しくは、netstat(1M) と route(1M) のマニュアルページを参照してください。
例については、「セキュリティー属性を使用して経路を構成する」を参照してください。