Trusted Extensions では、異なるネットワーク上にあるホスト間の送信経路は、伝送の各ステップでセキュリティーを維持する必要があります。Trusted Extensions は、Oracle Solaris OS の経路制御プロトコルに拡張セキュリティー属性を追加します。Trusted Extensions は Oracle Solaris と違って、動的ルーティングをサポートしません。静的なルーティングの詳細は、route(1M) のマニュアルページの –p オプションを参照してください。
ゲートウェイとルーターはパケットを経路指定します。この説明では、「ゲートウェイ」と「ルーター」の 2 つの用語を同じ意味で使用しています。
同じサブネット上のホスト間の通信では、ルーターが必要ないため、認可検査は終端のみで実行されます。ラベル範囲検査は発信元で実行されます。受信側ホストが Trusted Extensions ソフトウェアを実行している場合は、宛先でもラベル範囲検査が実行されます。
発信元ホストと宛先ホストが別のサブネット上にある場合、パケットは発信元ホストからゲートウェイに送信されます。経路を選択するときに、宛先のラベル範囲と 1 ホップ目のゲートウェイのラベル範囲が発信元で検査されます。ゲートウェイは、宛先ホストが接続されたネットワークにパケットを転送します。宛先に届くまでに、パケットが複数のゲートウェイを通過する場合もあります。
Trusted Extensions ゲートウェイでは、特定の場合にラベル範囲検査が実行されます。Trusted Extensions システムが 2 つのラベルなしホスト間でパケットをルーティングしている場合、発信元ホストのデフォルトラベルと宛先ホストのデフォルトラベルが比較されます。ラベルなしホストがデフォルトラベルを共有している場合は、パケットが経路指定されます。
各ゲートウェイは、すべての宛先への経路をリストで維持します。標準の Oracle Solaris のルーティングでは、最適となる経路が選択されます。Trusted Extensions は、経路の選択に適用されるセキュリティー要件を検査するための追加ソフトウェアを提供します。セキュリティー要件を満たさない Oracle Solaris の選択はスキップされます。
Trusted Extensions のルーティングテーブルのエントリには、セキュリティー属性を組み込むことができます。セキュリティー属性には、cipso キーワードを含めることができます。セキュリティー属性には、最大ラベル、最小ラベル、および DOI を含める必要があります。
セキュリティー属性を指定しないエントリには、ゲートウェイのセキュリティーテンプレートの属性が使用されます。
Trusted Extensions ソフトウェアは、セキュリティーの見地から、送信経路の適切さを判定します。ソフトウェアは「認可検査」と呼ばれる一連のテストを、発信元ホスト、宛先ホスト、および中間ゲートウェイで実行します。
認可検査では、ラベル範囲と CALIPSO または CIPSO ラベル情報が確認されます。経路のセキュリティー属性は、ルーティングテーブルのエントリから取得されるか、エントリにセキュリティー属性がない場合はゲートウェイのセキュリティーテンプレートから取得されます。
通信の着信時には、Trusted Extensions ソフトウェアは可能であればパケット自体からラベルを取得します。パケットからのラベルの取得は、ラベルをサポートするホストからメッセージが送信されている場合にのみ可能です。パケットからラベルを取得できない場合は、セキュリティーテンプレートからデフォルトラベルがメッセージに割り当てられます。これらのラベルは認可検査時にも使用されます。Trusted Extensions は、発信メッセージ、転送メッセージ、および着信メッセージに対して複数の検査を実施します。
送信側プロセスまたは送信側ゾーンで、次の認可検査が実行されます。
すべての宛先について、発信パケットの DOI が宛先ホストの DOI に一致している必要があります。DOI は、1 ホップ目のゲートウェイを含め、経路に沿ったすべてのホップの DOI にも一致する必要があります。
すべての宛先について、送信パケットのラベルが、送信経路の次のホップ (最初のホップ) のラベル範囲内にある必要があります。また、ラベルは 1 ホップ目のゲートウェイのセキュリティー属性に含まれる必要があります。
宛先ホストがラベルなしホストの場合、次のいずれかの条件を満たす必要があります。
送信側ホストのラベルが、宛先ホストのデフォルトラベルに一致する必要がある。
送信側ホストにラベル間通信を行う権限が与えられ、送信側のラベルが宛先のデフォルトラベルよりも優位である。
送信側ホストにラベル間通信を行う権限が与えられ、送信側のラベルが ADMIN_LOW である。つまり、送信側が大域ゾーンから送信を行っている。
Trusted Extensions ゲートウェイシステムでは、次のホップのゲートウェイに対して認可検査が実行されます。
着信パケットにラベルがない場合、パケットはセキュリティーテンプレートから発信元ホストのデフォルトラベルを継承します。それ以外の場合、パケットは CALIPSO または CIPSO オプションに指定されているラベルを受け取ります。
パケット転送の検査は、発信元の認可と同様に次のように処理されます。
すべての宛先について、発信パケットの DOI が宛先ホストの DOI に一致している必要があります。DOI は、次のホップのホストの DOI にも一致する必要があります。
すべての宛先について、送信パケットのラベルは次のホップのラベル範囲内にある必要があります。また、ラベルは次のホップのホストのセキュリティー属性に含まれる必要があります。
ラベルなしパケットのラベルは、宛先ホストのデフォルトラベルに一致する必要があります。
ラベル付きパケットのラベルは、宛先ホストのラベル範囲内にある必要があります。
adaptive ホストからのパケットを転送すると想定されるラベル付きゲートウェイは、そのインバウンドインタフェースを netif ホストタイプのテンプレートで構成する必要があります。adaptive および netif ホストタイプの定義については、セキュリティーテンプレートのホストタイプとテンプレート名を参照してください。
Trusted Extensions システムがデータを受信するときに、ソフトウェアは次の検査を実行します。
着信パケットにラベルがない場合、パケットはセキュリティーテンプレートから発信元ホストのデフォルトラベルを継承します。それ以外の場合、パケットはラベル付きオプションに指定されているラベルを受け取ります。
パケットのラベルと DOI は、宛先ゾーンまたは宛先プロセスのラベルおよび DOI と一致する必要があります。プロセスがマルチレベルポートで待機している場合は例外です。プロセスにラベル間通信が許可され、プロセスが大域ゾーンで実行されているか、パケットのラベルよりも優位なラベルを持つ場合、待機中のプロセスはパケットを受信できます。