[HOW TO] 2 つのホスト間で IPSec を使用してセキュリティで保護された通信を行う方法

文書翻訳 文書翻訳
文書番号: 301284 - 対象製品
この記事は、以前は次の ID で公開されていました: JP301284
すべて展開する | すべて折りたたむ

目次

概要

この資料では上級ユーザーを対象に、インターネット プロトコル セキュリティ (IPSec) を構成して、2 つのホスト コンピュータ間の通信のセキュリティを確保する方法を手順を追って説明しています。

IPSec の用語説明

この後で説明している手順を実行する前に、以下の単語の意味を確認してください。
  • 認証 : コンピュータの ID が正当なものであるかどうかを判別する処理。Windows 2000 IPSec では 3 種類の認証 (Kerberos、証明書、および仮共有キー) がサポートされています。Kerberos 認証は、両方のエンドポイント (コンピュータ) が、同一の Windows 2000 ドメインである場合のみ使用可能です。この認証が推奨されます。コンピュータが異なるドメインにある場合、または 1 台でもドメイン外のコンピュータがある場合は、証明書または仮共有キーを使用する必要があります。証明書は、各エンドポイントに証明機関が署名した証明書がある場合にのみ使用可能です。仮共有キーにはパスワード方式と同様の問題があります。非常に長い期間を考えた場合、この認証方式では守秘状態を確保することができません。エンドポイントが同一のドメインになく、証明書を取得できない場合は、仮共有キーが唯一の認証オプションとなります。
  • 暗号化 : 2 つのエンドポイント間でのデータ送信準備の際に、データの可読性を低下させる処理。詳しくテストされたアルゴリズムを使用することによって、エンドポイント間で暗号鍵の作成と交換が行えます。この処理によって、鍵の内容はエンドポイントだけが知っているようにすることができます。また、鍵交換シーケンスを盗聴しても、解読することはできないようになっています。
  • フィルタ : IPSec のセキュリティ アソシエーション (SA) の確立のトリガとなる IP (Internet Protocol) アドレスおよびプロトコルに関する記述。
  • フィルタ操作 : トラフィックがフィルタ一覧のフィルタに一致した場合に有効となるセキュリティ要件。
  • フィルタ一覧 : フィルタの集合。
  • IP セキュリティ ポリシー (IPSec ポリシー) : セキュリティ保護されたコンピュータ間の通信方法について記述したポリシーの集合。
  • 規則 : フィルタ一覧とフィルタ操作の間のリンク。トラフィックがフィルタ一覧に一致すると、対応するフィルタ操作が起動可能になります。IPSec ポリシーには、複数の規則を持たせることができます。
  • セキュリティ アソシエーション (SA) : セキュリティで保護されたセッションを確立する際に、エンドポイントのネゴシエーションで使用する認証と暗号化方法の集合。

Microsoft 管理コンソールで IPSec を使用する

IPSec の構成は、Microsoft 管理コンソール (MMC) で行います。Windows 2000 のインストールの際に IPSec スナップインを含む MMC が作成されます。IPSec を表示するには、[スタート] ボタンをクリックし、[プログラム] をポイントし [管理ツール] をクリックした後、[ローカル セキュリティ ポリシー] をクリックします。MMC が開いたら、左側のウィンドウで [ローカル コンピュータの IP セキュリティ ポリシー] をクリックします。MMC で、既存のデフォルトのポリシーが右側のウィンドウに表示されます。

IP アドレス、コンピュータ名、ユーザー名の変更

この例では、Alice は名前が "Alicepc" で IP アドレスが 172.16.98.231 のコンピュータのユーザーで、Bob は名前が "Bobslap" で IP アドレスが 172.31.67.244 のコンピュータのユーザーである、という状況を想定しています。また、コンピュータの接続には、Abczz というプログラムを使用しています。

Alice と Bob は、Abczz プログラムを使用して互いに直接接続する場合は、トラフィックを必ず暗号化する必要があります。Abczz が接続を作成する際に、発端側は任意の高位のポートを自身に使用し、(この例では) 宛先ポートである 6667/TCP または 6668/TCP (TCP は Transmission Control Protocol の略語です) に接続します。通常、これらのポートは IRC (Internet Relay Chat) で使用されます。Alice も Bob も接続を開始することができるため、ポリシーはどちらにも必要です。

フィルタ一覧の作成

IPSec ポリシー作成用のメニューは、MMC コンソールで [ローカル コンピュータの IP セキュリティ ポリシー] を右クリックすると表示されます。最初のメニューは [IP セキュリティ ポリシーの作成] です。このメニューから作業を開始すると良いように見えますが、実際には正しくありません。ポリシーを作成して規則に対応付ける前に、どの IPSec ポリシーのコンポーネントでも必要となるフィルタ一覧とフィルタ操作を定義しなければなりません。メニューの [IP フィルタ一覧とフィルタ操作の管理] をクリックして作業を開始します。

タブが 2 つあるダイアログ ボックスが表示されます。1 つはフィルタ一覧の管理用、もう 1 つはフィルタ操作の管理用のタブです。最初に、[IP フィルタ一覧の管理] タブを開きます。使用していない 2 つの事前定義フィルタが表示されます。これらの代わりに、接続先のコンピュータに対応したフィルタ一覧を作成できます。

Alice のコンピュータのポリシーを作成すると仮定します。
  1. [追加] をクリックし、新しいフィルタ一覧を作成します。その一覧に "Abczz to Bob's PC" という名前を付けます。
  2. [追加] をクリックし、新しいフィルタを追加します。ウィザードが起動します。
  3. [発信元アドレス] で [このコンピュータの IP アドレス] をクリックします。
  4. [宛先アドレス] で [特定の IP アドレス] をクリックし、Bob のコンピュータの IP アドレス (172.31.67.244) を入力します。また、Bob のコンピュータが DNS (Domain Name System) か WINS (Windows Internet Name Service) に登録されている場合は、[特定の DNS 名] を選択して、Bob のコンピュータの名前 (Bobslap) を入力することもできます。
  5. Abczz は TCP で通信を行うため、プロトコルの種類として [TCP] をクリックします。
  6. [IP プロトコル ポートの設定] で [任意の発信ポート] をクリックします。[次の宛先ポート] に 6667 と入力し、[完了] をクリックしてウィザードを閉じます。
  7. 上記の手順を再度行いますが、今回はポート番号として 6668 を入力し、[閉じる] をクリックします。
これで、フィルタ一覧には 2 つのフィルタが表示されます。1 つは、Alice から Bob の 6667 ポート (Bob の側) への通信用、もう 1 つは 6668 ポート (Bob の側) への通信用です (Bob は、6667 と 6668 ポートの両方を自分のコンピュータにセットアップしています。1 つは送信用、もう 1 つは受信用です)。これらのフィルタはミラー化されています (IPSec フィルタを使用する場合、通常必要となります)。ミラー化することで、それらのフィルタのすべてに対して、送信元と宛先アドレスがまったく逆になっているフィルタを一覧に含めることができます (表示はされません)。フィルタをミラー化しないと、IPSec 通信は通常成功しません。

フィルタ操作の作成

セキュリティを保護する必要のあるトラフィックの種類を定義しましたので、セキュリティの機構を指定する必要があります。[フィルタ操作の管理] タブをクリックします。デフォルトで 3 つのフィルタ操作が表示されます。[セキュリティが必要] 操作を使用する代わりに、より厳密な操作を新規作成する必要があります。

新しいフィルタ操作を作成するには
  1. [追加] をクリックし、新しいフィルタ操作を作成します。ウィザードが起動します。その操作に "Encrypt Abczz" という名前を付けます。
  2. [フィルタ操作の全般オプション] で、[セキュリティのネゴシエート] をクリックして [次] をクリックし、[IPSec をサポートしないコンピュータとは通信しない] をクリックして [次] をクリックします。
  3. [高 (Encapsulated Secure Payload)] オプションをクリックして [次へ] をクリックし、[完了] をクリックしてウィザードを終了します。
  4. 新たに作成したフィルタ操作 (上記の手順で作成した "Encrypt Abczz") をダブルクリックします。
  5. [セキュリティで保護されていない通信を受け付けるが、常に IPSec を使って応答] チェック ボックスをオフにします。これにより、コンピュータは、Abczz パケットを送信する前に IPSec でネゴシエーションしなくてはならなくなります。
  6. [セッション キーの PFS (Perfect Forward Secrecy)] をクリックして、鍵の情報が再利用されないようにします。[OK] をクリックして、[閉じる] をクリックします。

IPSec ポリシーを作成する

ポリシーの要素が揃ったので、ポリシー自体を作成できます。MMC の右側のウィンドウを右クリックして、[IP セキュリティ ポリシーの作成] をクリックします。ウィザードが起動したら、以下の手順を実行します。
  1. ポリシーに "Alice's IPSec" という名前を付けます。
  2. [既定の応答規則をアクティブにする] チェック ボックスをオフにします。
  3. [プロパティを編集する] がオフになっている場合はオンにし、[完了] をクリックしてウィザードを終了します。ポリシーのプロパティのダイアログ ボックスが表示されます。
IPSec を動作させるには、フィルタ操作に対してフィルタ一覧をリンクする規則が 1 つ以上含まれている必要があります。

規則を [プロパティ] ダイアログ ボックスで指定するには
  1. [追加] をクリックし、新しい規則を作成します。ウィザードが起動されたら、[この規則ではトンネルを指定しない] をクリックします。
  2. [ネットワークの種類を選択します] で、[ローカル エリア ネットワーク (LAN)] をクリックします。
  3. Alice と Bob の両方のコンピュータが同じ Windows 2000 ドメインにある場合は、[Windows 2000 既定値 (Kerberos V5 プロトコル)] をクリックします。同じ Windows 2000 ドメインにない場合は、[次の文字列をキー交換 (仮共有キー) の保護に使う] をクリックして、文字列を入力します (記憶できる範囲の長い文字列を使用し、正確に入力します)。
  4. 上記の手順で作成したフィルタ一覧を選択します。この例では、そのフィルタ一覧は "Abczz to Bob's PC" になります。上記の手順で作成したフィルタ操作を選択します。この例では、そのフィルタ操作は "Encrypt Abczz" になります。
  5. [完了] をクリックしてウィザードを閉じます。

ほかのエンドポイントを構成する

Bob のコンピュータで、Alice のコンピュータで行った上記の手順をすべて再度実行します。当然ながら、ここでは手順の変更が必要となります (たとえば、"Abczz to Bob's PC" は "Abczz to Alice's PC" に変更する必要があります)。

ポリシーを割り当てる

両方のエンドポイントでポリシーの定義が完了したので、次にポリシーを割り当てる必要があります。
  1. [ローカル セキュリティ設定] MMC で、ポリシーを右クリックします (この例では "Abczz")。
  2. [割り当て] をクリックします。
IPSec ポリシーは一度に 1 つしか割り当てることはできませんが、1 つのポリシーを必要に応じて複数の規則に割り当てることができます。たとえば、Alice が異なるプロトコルを使用した Eve との通信をセキュリティで保護する必要がある場合、対応するフィルタ一覧と操作を作成し、規則を Alice の IPSec に追加して特定のフィルタ一覧とフィルタ操作をリンクする必要があります。[Use a different shared key for this rule] をクリックします。これで、Alice のポリシーは 2 つになりました。1 つは Abczz で Bob と通信するためのもので、もう 1 つは Eve と通信するためのものです。Bob と Eve は相互にセキュリティで保護された通信を行う必要がないため、Bob のポリシーには何も追加する必要はありません。Eve のポリシーには Alice と通信するための規則が 1 つ含まれます。

注意点

IPSecMon を使用してポリシーをテストする

Windows 2000 には、IPSec の SA が正常に確立されているかどうかをテストするユーティリティ (IPSecMon.exe) が含まれています。IPSecMon を起動するには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。
  2. ipsecmon と入力し、Enter キーを押します。
  3. [オプション] ボタンをクリックします。
  4. [更新間隔の秒数] を 1 に変更します。
エンドポイント間で通信を確立する必要があります。エンドポイントで暗号情報の交換と SA の完了に数秒かかるため、遅延が発生する可能性があります。この動作は IPSecMon で確認できます。エンドポイントがそれぞれの SA を確立すると、IPSecMon に動作状態を表示する項目が表示されます。

SA が確立されていることが予想されるにもかかわらず何の変化もない場合、各エンドポイントのフィルタ一覧に戻って、設定内容を見直してください。送信元と宛先のアドレスやポートを簡単に反転できるように、使用するプロトコルに対して正しい定義が行われていることを確認します。ここで、すべてのトラフィックを指定したフィルタ一覧を新規に作成することをお勧めします。また、このフィルタ一覧を使用する新しい規則をポリシーに追加し、既存のルールを無効にすることもできます。これらの手順は、両方のエンドポイントで行います。次に、ping コマンドを使用して接続性のテストを行います。SA のフェーズの間に、ping コマンドでは "Negotiating IP Security" と表示され、SA が確定されると通常の結果が表示されます。

NAT と IPSec で互換性がない

NAT (Network Address Translation) が 2 つのエンドポイント間にあると、IPSec は動作しません。IPSec はエンドポイントのアドレスをペイロードの一部として埋め込みます。また IPSec では、パケットを回線に乗せる前にパケットのチェックサムを計算する際にも、発信元のアドレスが使用されます。NAT によって送信パケットの発信元アドレスが変更される可能性があるため、宛先では自身のチェックサムを計算する際にヘッダー内のアドレスが使用されます。パケットによって送信されてきた、"元の" 送信元が計算したチェックサムは、宛先側で計算したチェックサムとは一致せず、宛先側ではそのパケットは破棄されます。NAT デバイスでは IPSec は使用できません。

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 301284 (最終更新日 2001-07-19) をもとに作成したものです。

プロパティ

文書番号: 301284 - 最終更新日: 2006年2月26日 - リビジョン: 4.0
この資料は以下の製品について記述したものです。
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional
キーワード:?
jptrf kbhowtomaster KB301284
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com