この節では、送信データの機密レベルと同じセキュリティレベルで構成されたゲートウェイだけを経由する通信ルートが必ず使用されるために、知っておかなければならないことが書かれています。この節は、「ルーティング」の節をすでに読んで理解していることを前提にしています。ルーティングの設定手順については、第 10 章「トラステッドネットワークデータベース におけるセキュリティ属性の指定とルーティング設定」の「ルーティングの IP ラベルを設定するには」を参照してください。
トラステッドルーティングを設定するには、セキュリティ管理者が、すべてのホストとゲートウェイにあるトラステッドネットワークデータベースのエントリを設定できなければなりません。
送信側ホストで、テンプレートに CIPSO IP ラベルと CIPSO DOI が定義されている宛先にパケットを送信する場合は、宛先に割り当てられた DOI と送信側ホストに割り当てられた DOI が一致しなければなりません。さらに、最初のホップのゲートウェイのテンプレートには、宛先のものと一致する CIPSO DOI が定義され、パケットの CIPSO ラベルを含む認可範囲が設定される必要があります。テンプレートに RIPSO IP ラベル (格付け) と RIPSO PAF (コンパートメント) が定義されている宛先にパケットを送信する場合は、宛先に割り当てられた RIPSO の格付けとコンパートメントの組み合わせが、送信側ホストに割り当てられた組み合わせと一致しなければなりません。また、最初のホップのゲートウェイのテンプレートには、宛先と同じ RIPSO ラベルと PAF が定義される必要があります。セキュリティ管理者役割によって宛先ホストのテンプレートに IP ラベルが指定されると、トラステッドネットワークソフトウェアは、指定されたラベルを送信パケットの IP 部に挿入します。IP ラベル型を CIPSO にする場合は、パケットの機密ラベルから CIPSO ラベルを取得します。IP ラベル型を RIPSO にする場合は、宛先ホストのテンプレートに管理目的で定義された RIPSO ラベルを使用します。
受信側ホストでパケットを受信する場合は、発信元ホストのテンプレートに指定された CIPSO ラベルと CIPSO DOI が、受信側ホストに指定された CIPSO ラベルと CIPSO DOI に一致しなければなりません。
ここでは、前の節に記述した規則を簡単な例と図で説明していきます。ホスト H1 と H2 は Trusted Solaris ホストであり、これらのホストは、CIPSO IP ラベルに基づくトラステッドルーティングを使用して通信します。H1 は、G1 までのデフォルトルートを設定する in.rdisc を実行しています。G1 と H2 の間には、他の Trusted Solaris ゲートウェイが存在する可能性もあります。
次の図は、発信元ホスト H1 がパケットを G1 経由で H2 に送信できるようにするために、H1 の tnrhdb、tnrhtp、tnidb ファイルに設定しなければならない定義内容を示しています。パケットの機密ラベルは CONFIDENTIAL になっており、この例では、この機密ラベルによって直接 CIPSO ラベルの CONFIDENTIAL に割り当てられているとします。
送信側ホストでは、パケットの送信前に、トラステッドネットワークソフトウェアが次の手順で検査を行います。
H2 のテンプレートを検査し、IP ラベルタイプが CIPSO に、CIPSO DOI が 1 に指定されていることを確認する。ソフトウェアによって取得されたパケットの CIPSO ラベルは C であり、H2 の認可範囲 (confidential から confidential) であるため、次の検査を行う。
H1 のテンプレートを検査し、H2 の CIPSO DOI と同じ CIPSO DOI が定義されていることを確認する。また、パケットのラベルが、H1 に割り当てられたテンプレートに構成されている送信インタフェースの認可範囲内であることもチェックする。ここでは、どちらの検査にも合格するので、次に G1 のテンプレートに対する検査を行う。
G1 のテンプレートを検査し、パケットと同じ CIPSO DOI が定義されていること、および認可範囲にパケットと同じ CIPSO ラベルが含まれていることを確認する。
すべての検査に合格すると、トラステッドネットワークソフトウェアは CIPSO ラベル C と CIPSO DOI 1 をパケットに挿入し、G1 に送信します。図 9-13 は前の図の続きで、パケットの転送前にゲートウェイで実行される検査を示しています。
ゲートウェイでは、パケットの転送前に、トラステッドネットワークソフトウェアが次の手順で検査を行います。
パケットの IP オプション部をチェックし、IP ラベルが CIPSO に、CIPSO DOI が 1 に設定されていることを確認する。
受信ネットワークインタフェースに割り当てられたテンプレートに、CIPSO IP ラベルと CIPSO DOI 1 が定義されていることを確認する。
受信インタフェースの tnidb エントリを検査し、認可範囲に C が含まれていることを確認する。
パケットを別のゲートウェイに転送する場合は、G2 のテンプレートの IP ラベルに CIPSO と CIPSO DOI 1 が定義され、認可範囲に C が含まれていることを確認する。
次の図は図 9-14の続きで、パケット受信時に宛先ホストで実行される検査を示しています。
宛先ホスト H2 では、パケットを受信する前に、トラステッドネットワークソフトウェアが次の手順で検査を行います。
パケットの IP オプション部を検査し、IP ラベルが CIPSO に、CIPSO DOI が 1 に指定されていることを確認する。
H1 のテンプレートを検査し、IP ラベルが CIPSO に、CIPSO DOI が 1 に指定されていることを確認する。ソフトウェアによって取得されたパケットの CIPSO ラベルは C であり、H1 の認可範囲の confidential から confidential 内であるため、次の検査を行う。
H2 の受信インタフェースの tnrhtp エントリに CIPSO DOI 1 が定義され、受信インタフェースの tnidb エントリの認可範囲に C が含まれていることを確認する。
セキュリティ管理者役割は、最初のホップのゲートウェイおよび宛先ホストに対し、同じホストタイプと IP ラベル型を指定します。
IP ラベルを指定するには、ホストタイプとして次のどれかを指定します。
sun_tsol
tsix
cipso
ripso
また、IP ラベル型を次のどちらかで統一する必要があります。
RIPSO または
CIPSO
例:
RIPSO をサポートする非 Trusted Solaris システムを実行しているゲートウェイ、または商用 RIPSO ルーターのための IP ラベルを指定する場合は、次のホストタイプを入力します。
ripso
CIPSO をサポートする非 Trusted Solaris システムを実行しているゲートウェイ、または商用 CIPSO ルーターのための IP ラベルを指定する場合は、次のホストタイプを入力します。
cipso
CIPSO タイプ 3 を使用して Trusted Solaris 1.x ホストを経由させる場合は、IP ラベルとして次のホストタイプを入力します。
msix
Trusted Solaris ゲートウェイはまず、設定されたテンプレートによって sun_tsol、tsix、ciposo、ripso のいずれかのホストタイプとして識別されます。その後で RIPSO または CIPSO の IP ラベル型が IP ラベルフィールドに割り当てられます。RIPSO または CIPSO ラベルをサポートする非 Trusted Solaris ホストや商用ルーターも、ripso または cipso ホストタイプを使用して構成できます。Trusted Solaris 1.x ホストの場合は、パケットにタイプ 3 の CIPSO ラベルが挿入されるため、トラステッドルーティングには使用できません。
CIPSO ラベルは、トラステッドネットワークソフトウェアによってパケットの機密ラベルから取得されます。一方、RIPSO ラベルは、セキュリティ管理者役割によってテンプレートの 「RIPSO Send Class」と「RIPSO -Send PAF」フィールドに指定されます。
パケットがゲートウェイで転送されるときは、トラステッドネットワークソフトウェアによってパケットの CIPSO または RIPSO ラベルが参照され、ルーティングテーブルにルートの拡張メトリック情報がある場合は、それと比較されます。ルートの拡張メトリック情報がない場合は、最初のホップのゲートウェイのトラステッドネットワークデータベースのエントリのセキュリティ情報と比較されます。このようにして、メッセージが適切な信頼レベルのゲートウェイだけを経由することが保証されます。
トラステッドネットワークソフトウェアは、次の図に示すパケットの部分しか参照しません。Trusted Solaris と TSIX ラベル、その他のセキュリティ属性は、パケットの TCP/UDP ヘッダーとEthernet トレーラ間にあるアクセス不能な部分に保存されます。一方、CIPSO ラベルと RIPSO ラベルは、パケットのアクセス可能な IP ヘッダー部に保存されます。
表 9-8 トラステッドネットワークソフトウェアがアクセス可能なパケット部Ethernet ヘッダー | IP ヘッダー [IP オプションの RIPSO ラベル] | TCP または UDP ヘッダー | . . . | Ethernet トレーラ |
CIPSO または RIPSO IP ラベルで指定された sun_tsol と tsix ホストタイプとの組み合わせを使用すると、パケットに Trusted Solaris または TSIX のセキュリティ属性を付加して、それらの属性を認識する宛先ホストに送信できるようになります。また、宛先との間にある Trusted Solaris ルーターでは、トラステッドネットワークソフトウェアがパケットのアクセス可能な IP 部の CIPSO または RIPSO ラベルを参照し、パケットの搬送ルートを制御されます。IP ラベルが指定されていないと、ゲートウェイのトラステッドネットワークソフトウェアは、パケットのラベルを確認したり、次のホップで必要な認可チェックを実行することができません。なぜなら、トラステッドネットワークソフトウェアは、パケット内に保持されているラベルと他のセキュリティ属性を確認しないからです。
CIPSO ラベルは、送信データの実際の機密ラベルから取得されるため、セキュリティ管理者役割が CIPSO ラベルを指定することはありません。ただし、IP ラベル型が CIPSO の場合は、このラベル型の通信がルートされる各セキュリティドメインのセキュリティ管理者の間で、通信に使用される Trusted Solaris の機密ラベルが合意されていなければなりません。これは、トラステッドネットワークソフトウェアによって、機密ラベルが同等の CIPSO ラベルに変換されるためです。また、セキュリティ管理者たちは、先に掲げたすべてのホストタイプに対し、同じ CIPSO DOI を指定することも承諾している必要があります。
RIPSO ラベルと RIPSO エラーは管理上の目的で定義されるため、リストにあげたホストには、それぞれ同じ RIPSO ラベルと RIPSO エラーを指定しなければなりません。IP ラベル型が RIPSO の場合は、この IP ラベルの通信がルートされる各セキュリティドメインのセキュリティ管理者の間で、先に掲げたすべてのホストタイプに対し、指定すべき RIPSO ラベル、保護許可フラグ、RIPSO エラーが合意されている必要があります。