このドキュメントでは、Cisco Secure Access Control System(ACS)for Windowsバージョン3.2でExtensible Authentication Protocol-Transport Layer Security(EAP-TLS)を設定する方法について説明します。
注:マシン認証は、Novell認証局(CA)ではサポートされていません。ACS は、EAP-TLS を使用して、Microsoft Windows Active Directory に対するマシン認証をサポートすることができます。エンドユーザ クライアントは、ユーザ認証のプロトコルを、マシン認証に使用するプロトコルと同じものに制限する場合があります。その場合、マシン認証に EAP-TLS を使用するとしたら、ユーザ認証にも EAP-TLS を使用する必要があります。マシン認証に関する詳細については、『Cisco Secure Access Control Server 4.1 ユーザ ガイド』の「マシン認証」のセクションを参照してください。
注:EAP-TLS経由でマシンを認証するようにACSを設定し、ACSがマシン認証用に設定されている場合、クライアントはマシン認証のみを実行するように設定する必要があります。詳細については、「Windows Vista、Windows Server 2008 、および Windows XP Service Pack 3 で、802.1 X ベースのネットワーク用のコンピューターのみの認証を有効にする方法」を参照してください。
このドキュメントに関しては個別の前提条件はありません。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。
Cisco Secure ACS for Windows バージョン 3.2
Microsoft Certificate Services(エンタプライズのルート証明機関 [CA] としてインストールされている)
注:詳細については、『Step-by-Step Guide to Setting up a Certification Authority 』を参照してください。
Service Pack 3 およびホットフィックス 323172 を適用済みの Windows 2000 Server を使用した DNS サービス
注: CAサーバで問題が発生した場合は、ホットフィックス323172 をインストールしてください。Windows 2000 SP3クライアントでは、ホットフィックス313664 を適用しないとIEEE 802.1x認証を有効にできません。
Cisco Aironet 1200 シリーズ Wireless Access Point 12.01T
Service Pack 1 を適用済みの Windows XP Professional を実行する IBM ThinkPad T30
このマニュアルの情報は、特定のラボ環境に置かれたデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、使用前にその潜在的な影響について確実に理解しておく必要があります。
EAP-TLS と Protected Extensible Authentication Protocol(PEAP)は両方とも、TLS/Secure Socket Layer(SSL; セキュア ソケット レイヤ)トンネルを構築し、使用します。EAP-TLS では、ACS(Authentication, Authorization, and Accounting(AAA; 認証、認可、およびアカウンティング))サーバとクライアントの両方が証明書を用意し、相互に ID を証明する相互認証を使用します。ただし、PEAPはサーバ側の認証だけを使用します。サーバだけが証明書を持ち、そのIDをクライアントに証明します。
ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。
このドキュメントでは次の図に示すネットワーク構成を使用しています。
ACS 3.2 を設定するには、次のステップに従います。
証明書を取得するには、次のステップに従います。
ACS サーバで Web ブラウザを開き、CA サーバにアクセスするためにアドレス バーに http://CA-ip-address/certsrv と入力します。
Administrator としてドメインにログインします。
[Request a certificate] を選択してから [Next] をクリックします。
[Advanced request] を選択してから [Next] をクリックします。
[Submit a certificate request to this CA using a form] を選択してから [Next] をクリックします。
証明書のオプションを設定します。
証明書のテンプレートとして [Web Server] を選択し、ACS サーバの名前を入力します。
[Key Size] フィールドに 1024 と入力し、[Mark keys as exportable] および [Use local machine store] チェックボックスをオンにします。
必要に応じてその他のオプションを設定し、[Submit] をクリックします。
注: 「Potential Scripting Violation」ダイアログボックスが表示されたら、「Yes」をクリックして続行します。
[Install this certificate] をクリックします。
注: 「Potential Scripting Violation」ダイアログボックスが表示されたら、「Yes」をクリックして続行します。
インストールが正常に完了すると、[Certificate Installed] メッセージが表示されます。
ストレージにある証明書を使用するよう ACS を設定するには、次のステップに従います。
Web ブラウザを開き、ACS サーバにアクセスするためにアドレス バーに http://ACS-ip-address:2002/ と入力します。
[System Configuration] をクリックし、[ACS Certificate Setup] をクリックします。
[Install ACS Certificate] をクリックします。
[Use certificate from storage] オプション ボタンをクリックします。
[Certificate CN] フィールドに、このドキュメントの「ACS サーバ用の証明書を取得する」セクションのステップ 5a で割り当てた証明書の名前を入力します。
[Submit] をクリックします。
設定が完了すると、ACS サーバの設定が変更されたことを通知する確認メッセージが表示されます。
注:この時点では、ACSを再起動する必要はありません。
ACS は、自身の証明書を発行した CA を自動的に信頼します。クライアント証明書が別の CA により発行された場合は、次のステップを完了する必要があります。
[System Configuration] をクリックし、[ACS Certificate Setup] をクリックします。
[ACS Certificate Authority Setup] をクリックして、信頼された証明書のリストに CA を追加します。
CA 証明書ファイル用のフィールドに証明書の場所を入力し、[Submit] をクリックします。
[Edit Certificate Trust List] をクリックします。
ACS が信頼するすべての CA にチェック マークを付け、ACS が信頼しないすべての CA のチェック マークを外します。
[Submit] をクリックします。
サービスを再起動して EAP-TLS 設定を構成するには、次のステップに従います。
[System Configuration] をクリックし、[Service Control] をクリックします。
[Restart] をクリックしてサービスを再起動します。
EAP-TLS 設定を構成するために、[System Configuration] をクリックし、[Global Authentication Setup] をクリックします。
[Allow EAP-TLS] チェックボックスをオンにしてから、1 つ以上の証明書比較にチェック マークを付けます。
[Submit] をクリックします。
アクセス ポイント(AP)を AAA クライアントとして設定するには、次のステップに従います。
[Network Configuration] をクリックします。
[AAA Clients] で、[Add Entry] をクリックします。
[AAA Client Hostname] フィールドにアクセス ポイントのホスト名を入力し、[AAA Client IP Address] フィールドにその IP アドレスを入力します。
Key フィールドに、ACS とアクセス ポイント用の共有秘密鍵を入力します。
認証方式として [RADIUS (Cisco Aironet)] を選択し、[Submit] をクリックします。
外部ユーザ データベースを設定するには、次のステップに従います。
[External User Databases] をクリックし、[Database Configuration] をクリックします。
[Windows Database] をクリックします。
注:定義済みのWindowsデータベースがない場合は、Create New Configurationをクリックし、Submitをクリックします。
[Configure] をクリックします。
Configure Domain List の下で、SEC-SYD ドメインを、Available Domains から Domain List へ移動させます。
[Windows EAP Settings] 領域で、[Permit EAP-TLS machine authentication] チェックボックスをオンにしてマシン認証を有効にします。
注:マシン認証名のプレフィックスは変更しないでください。Microsoft では現在、「/host」(デフォルト値)を使用して、ユーザ認証とマシン認証を区別しています。
オプションで、[EAP-TLS Strip Domain Name] チェックボックスをオンにしてドメイン ストリッピングを有効にします。
[Submit] をクリックします。
[External User Databases] をクリックし、[Unknown User Policy] をクリックします。
[Check the following external user databases] オプション ボタンをクリックします。
Windows データベースを [External Databases] リストから [Selected Databases] リストに移動します。
[Submit] をクリックします。
ACS の設定を完了したら、次のステップに従ってサービスを再起動します。
[System Configuration] をクリックし、[Service Control] をクリックします。
[Restart] をクリックします。
自動でマシン証明書を登録するためのドメインを設定するには、次のステップに従います。
[Start] > [Settings] > [Control Panel] > [Administrative Tools] に移動し、Active Directory ユーザおよびコンピュータを開きます。
[domain sec-syd] を右クリックし、[Properties] を選択します。
[Group Policy] タブをクリックします。
[Default Domain Policy] をクリックしてから [Edit] をクリックします。
[Computer Configuration] > [Windows Settings] > [Security Settings] > [Public Key Policies] > [Automatic Certificate Request Settings] に移動します。
メニュー バーで、[Action] > [New] > [Automatic Certificate Request] に移動し、[Next] をクリックします。
[Computer] を選択し、[Next] をクリックします。
認証局にチェック マークを付けます(この例では「Our TAC CA」)。
[Next] をクリックし、次に [Finish] をクリックします。
認証サーバとして ACS を使用する AP を設定するには、次のステップに従います。
Web ブラウザを開き、AP にアクセスするためにアドレス バーに http://AP-ip-address/certsrv と入力します。
ツールバーで [Setup] をクリックします。
[Services] 領域で、[Security] をクリックし、[Authentication Server] をクリックします。
注:APでアカウントを設定した場合は、ログインする必要があります。
オーセンティケータの構成時の設定を入力します。
802.1x プロトコル バージョンの場合(EAP 認証の場合)は [802.1x-2001] を選択します。
Server Name/IP フィールドに ACS サーバの IP アドレスを入力します。
[Server Type] として [RADIUS] を選択します。
[Port] フィールドに 1645 または 1812 と入力します。
「アクセス ポイントを AAA クライアントとして指定および設定する」で指定した共有秘密鍵を入力します。
サーバの用途を指定するために、[EAP Authentication] のオプションにチェック マークを付けます。
終了したら、[OK] をクリックします。
[Radio Data Encryption (WEP)] をクリックします。
内部データ暗号化設定を入力します。
データ暗号化のレベルを設定するために、[Use of Data Encryption by Stations is] ドロップダウン リストから [Full Encryption] を選択します。
[Accept Authentication Type] として、[Open] チェックボックスをオンにして許容される認証のタイプを設定し、[Network-EAP] チェックボックスをオンにして LEAP を有効にします。
[Require EAP] として、[Open] チェックボックスをオンにして EAP を要件にします。
[Encription Key] フィールドに暗号キーを入力し、[Key Size] ドロップダウン リストから [128 bit] を選択します。
終了したら、[OK] をクリックします。
[Network] > [Service Sets] に移動して [SSID Idx] を選択し、正しいサービス セット識別子(SSID)が使用されていることを確認します。
[OK] をクリックします。
ACS 3.2 を設定するには、次の手順を実行します。
ドメインにワイヤレス クライアントを追加するには、次の手順を実行します。
注:これらの手順を完了するには、ワイヤレスクライアントが、有線接続または802.1xセキュリティを無効にしたワイヤレス接続のいずれかを介してCAに接続できる必要があります。
ローカル管理者として Windows XP にログインします。
[Control Panel] > [Performance and Maintenance] > [System] を選択します。
[Computer Name] タブを選択し、[Change] をクリックします。
[Computer Name] フィールドにホスト名を入力します。
[Domain] を選択し、ドメインの名前(この例では「SEC-SYD」)を入力します。
[OK] をクリックします。
[Login] ダイアログボックスが表示されたら、ドメインに参加するのに十分な権限が割り当てられているアカウントでログインします。
コンピュータがドメインへの参加に成功したら、コンピュータを再起動します。
マシンがドメインのメンバーになります。マシン自動登録が設定されているため、マシンには CA の証明書ならびにマシン認証用の証明書がインストールされています。
ユーザ用の証明書を取得するには、次のステップに従います。
証明書を必要とするアカウントとして、ワイヤレス クライアント(ラップトップ)上で Windows XP とドメイン(SEC-SYD)にログインします。
Web ブラウザを開き、CA サーバにアクセスするためにアドレス バーに http://CA-ip-address/certsrv と入力します。
同じアカウントで CA サーバにログインします。
注:証明書は、ワイヤレスクライアントの現在のユーザプロファイルに保存されます。したがって、WindowsとCAにログインするには、同じアカウントを使用する必要があります。
[Request a certificate] オプション ボタンをクリックし、[Next] をクリックします。
[Advanced request] オプション ボタンを選択し、[Next] ボタンをクリックします。
[Submit a certificate request to this CA using a form] オプション ボタンを選択してから [Next] をクリックします。
[Certificate Template] から [User] を選択し、[Key Size] フィールドに 1024 と入力します。
必要に応じてその他のオプションを設定し、[Submit] をクリックします。
注: 「Potential Scripting Violation」ダイアログボックスが表示されたら、「Yes」をクリックして続行します。
[Install this certificate] をクリックします。
注: 「Potential Scripting Violation」ダイアログボックスが表示されたら、「Yes」をクリックして続行します。
注:ルート証明書ストアは、CA自身の証明書がワイヤレスクライアントにまだ保存されていない場合に表示されることがあります。その場合は [Yes] をクリックして、証明書をローカル ストレージに保存します。
インストールが正常に完了すると、確認メッセージが表示されます。
ワイヤレス ネットワーキングのオプションを設定するには、次の手順を実行します。
ドメイン ユーザとしてドメインにログインします。
[Control Panel] > [Network and Internet Connections] > [Network Connections] に進みます。
[Wireless Network] を右クリックして、[Properties] を選択します。
[Wireless Networks] タブをクリックします。
使用可能なネットワークのリストからワイヤレス ネットワークを選択し、[Configure] をクリックします。
[Authentication] タブで、[Enable IEEE 802.1x authentication for this network] チェックボックスをオンにします。
[EAP type] ドロップダウン リストから [Smart Card or other Certificate] を選択し、[Properties] をクリックします。
注:マシン認証を有効にするには、Authenticate as computer when computer information is availableチェックボックスにチェックマークを付けます。
[Use a certificate on this computer] オプション ボタンをクリックし、[Use simple certificate selection] チェックボックスをオンにします。
[Validate server certificate] チェックボックスをオンにしてから、[OK] をクリックします。
注:クライアントがドメインに参加すると、CAの証明書は自動的に信頼されたルート認証局としてインストールされます。クライアントは自動的かつ暗黙的に、クライアントの証明書に署名した CA を信頼します。追加の CA が信頼されるには、Trusted Root Certification Authorities リストで CA をチェックします。
ネットワークのプロパティのウィンドウの [Association] タブで、[Data encryption (WEP enabled)] および [The key is provided for me automatically] チェックボックスをオンにします。
[OK] をクリックしてから再度 [OK] をクリックして、ネットワーク設定のウィンドウを閉じます。
このセクションに記載する情報を参考に、設定が正しく機能していることを確認できます。
ワイアレス クライアントが認証済みになっていることを確認するには、以下の手順に従います。
ワイヤレス クライアントで、[Control Panel] > [Network and Internet Connections] > [Network Connections] に進みます。
メニュー バーで [View] > [Tiles] に移動します。
ワイヤレス接続には「Authentication succeeded」のメッセージが表示されるはずです。
ワイヤレス クライアントが認証済みであることを確認するために、ACS Web インターフェイスで [Reports and Activity] > [Passed Authentications] > [Passed Authentications active.csv] に移動します。
このセクションでは、設定のトラブルシューティングに役立つ情報を紹介します。
Service Pack 3 が適用された Windows 2000 Advanced Server 上で、MS Certificate Services がエンタープライズ ルート認証局としてインストールされていることを確認します。
Windows 2000(Service Pack 3)とともに Cisco Secure ACS for Windows バージョン 3.2 を使用していること確認します。
無線クライアント上でマシン認証が失敗する場合は、無線接続でネットワーク接続が存在しません。プロファイルが無線クライアント上にキャッシュされているアカウントだけが、ドメインにログインできます。マシンを有線ネットワークにつなげるか、802.1x セキュリティを使用していないワイヤレス接続用に設定する必要があります。
ドメインに参加する際に CA への自動登録が失敗する場合は、イベント ビューアを確認して考えられる理由を調べます。
無線クライアントのユーザ プロファイルに有効な証明書がない場合も、パスワードが正しければマシンとドメインにログオンできますが、無線接続には接続性がないことに注意してください。
無線クライアント上の ACS の証明書が無効である(証明書の有効な「from」および「to」の日付、クライアントの日付と時刻の設定、および CA の信頼性に依存)場合、クライアントはその証明書を拒否し、認証が失敗します。ACS は失敗した認証を Web インターフェイスの [Reports and Activity] > [Failed Attempts] > [Failed Attempts XXX.csv] に記録します。これは、たとえば「EAP-TLS or PEAP authentication failed during SSL handshake」のような認証失敗コードで記録されます。 CSAuth.log ファイルには、次のようなエラー メッセージが記録されるはずです。
AUTH 06/04/2003 14:56:41 E 0345 1644 EAP: buildEAPRequestMsg: other side probably didn't accept our certificate
ACS 上のクライアントの証明書が無効である(証明書の有効な「from」および「to」の日付、サーバの日付と時刻の設定、および CA の信頼性に依存)場合、サーバはその証明書を拒否し、認証が失敗します。ACS は失敗した認証を Web インターフェイスの [Reports and Activity] > [Failed Attempts] > [Failed Attempts XXX.csv] に記録します。これは、たとえば「EAP-TLS or PEAP authentication failed during SSL handshake」のような認証失敗コードで記録されます。 ACS が CA を信頼しないために ACS がクライアントの証明書を拒絶する場合、CSAuth.log ファイルには次のようなエラー メッセージが記録されるはずです。
AUTH 06/04/2003 15:47:43 E 0345 1696 EAP: ProcessResponse: SSL handshake failed, status = 3 (SSL alert fatal:unknown CA certificate)
証明書が期限切れになったために ACS がクライアントの証明書を拒絶する場合、CSAuth.log ファイルには次のようなエラー メッセージが記録されるはずです。
AUTH 06/04/2005 15:02:08 E 0345 1692 EAP: ProcessResponse: SSL handshake failed, status = 3 (SSL alert fatal:certificate expired)
ACS Webインターフェイスのログでは、Reports and Activity > Passed Authentications > Passed Authentications XXX.csvおよびReports and Activity > Failed Attempts > Failed Attempts XXX.csvの両方で、EAP-TLS認証が<user-id>@<domain>の形式で表示されます。PEAP 認証は <DOMAIN>\<user-id> の形式で表示されます。
次のステップに従うことで、ACS サーバの証明書と信頼性を確認できます。
Administrator の特権を持つアカウントを使用して、ACS サーバで Windows にログインします。
[Start] > [Run] に移動し、mmc と入力して [OK] をクリックします。これにより、Microsoft 管理コンソールが開きます。
メニュー バーで、[Console] > [Add/Remove Snap-in] に移動し、[Add] をクリックします。
[Certificates] を選択して、[Add] をクリックします。
[Computer account] を選択してから [Next] をクリックし、[Local computer] (このコンソールが実行されているコンピュータ) を選択します。
[Finish]、[Close]、[OK] の順にクリックします。
ACS サーバに有効なサーバ側の証明書が存在することを確認するには、[Console Root] > [Certificates(Local Computer)] > [Personal] > [Certificates] に移動し、ACS サーバの証明書(この例では、OurACS という名前の証明書)があることを確認します。
証明書を開き、次の項目を確認します。
すべての使用目的に関して検証されていない証明書に関する警告が存在しない。
信頼されていない証明書に関する警告が存在しない。
「This certificate is intended to - Ensures the identity of a remote computer.」というメッセージが存在する。
証明書は期限切れになっておらず、また有効になっている(有効な「from」および「to」の日付を確認)。
「You have a private key that corresponds to this certificate.」というメッセージが存在する。
Details タブで、Version フィールドの値が V3 で、Enhanced Key Usage フィールドは Server Authentication (1.3.6.1.5.5.7.3.1) となっていること確認します。
ACS サーバが CA サーバを信頼することを確認するには、[Console Root] > [Certificates (Local Computer)] > [Trusted Root Certification Authorities] > [Certificates] に移動し、CA サーバの証明書(この例では、Our TAC CA という名前の証明書)があることを確認します。
証明書を開き、次の項目を確認します。
すべての使用目的に関して検証されていない証明書に関する警告が存在しない。
信頼されていない証明書に関する警告が存在しない。
証明書の使用目的が正しい。
証明書は期限切れになっておらず、また有効になっている(有効な「from」および「to」の日付を確認)。
ACS とクライアントが同じルート CA を使用していなかった場合は、CA サーバの証明書連鎖が完全にインストールされていることを確認します。証明書が下位証明機関から取得された場合も、同じことが当てはまります。
次のステップに従うことで、無線クライアントのマシン証明書と信頼性を確認できます。
Administrator の特権を持つアカウントを使用して、ACS サーバで Windows にログインします。[Start] > [Run] に移動し、mmc と入力して [OK] をクリックします。これにより、Microsoft 管理コンソールが開きます。
メニュー バーで、[Console] > [Add/Remove Snap-in] に移動し、[Add] をクリックします。
[Certificates] を選択し、[Add] をクリックします。
[Computer account] を選択してから [Next] をクリックし、[Local computer] (このコンソールが実行されているコンピュータ) を選択します。
[Finish]、[Close]、[OK] の順にクリックします。
マシンが有効なクライアント側の証明書を持っていることを確認します。証明書が無効である場合は、マシン認証は失敗します。証明書を確認するには、[Console Root] > [Certificates (Local Computer)] > [Personal] > [Certificates] に移動します。マシンの証明書があることを確認します。名前の形式は<host-name>.<domain>です。証明書を開き、次の項目を確認します。
すべての使用目的に関して検証されていない証明書に関する警告が存在しない。
信頼されていない証明書に関する警告が存在しない。
「This certificate is intended to - Proves your identity to a remote computer.」というメッセージが存在する。
証明書は期限切れになっておらず、また有効になっている(有効な「from」および「to」の日付を確認)。
「You have a private key that corresponds to this certificate.」というメッセージが存在する。
Detailsタブで、Versionフィールドの値がV3であること、およびEnhanced Key Usageフィールドに少なくともClient Authenticationという値(1.3.6.1.5.5.7.3.2)が含まれていることを確認します。その他の用途が表示される場合があります。SubjectフィールドにCN = <host-name>.<domain>という値が含まれていることを確認します。その他の値が表示される場合があります。ホスト名とドメインが、証明書で指定されているものと一致することを確認します。
クライアントのプロファイルが CA サーバを信頼することを確認するには、[Console Root] > [Certificates (Current User)] > [Trusted Root Certification Authorities] > [Certificates] に移動します。CA サーバ用の証明書があることを確認します(この例の名前は「Our TAC CA」)。証明書を開き、次の項目を確認します。
すべての使用目的に関して検証されていない証明書に関する警告が存在しない。
信頼されていない証明書に関する警告が存在しない。
証明書の使用目的が正しい。
証明書は期限切れになっておらず、また有効になっている(有効な「from」および「to」の日付を確認)。
ACS とクライアントが同じルート CA を使用していなかった場合は、CA サーバの証明書連鎖が完全にインストールされていることを確認します。証明書が下位証明機関から取得された場合も、同じことが当てはまります。
「Cisco Secure ACS for Windows v3.2 の設定」で説明されている ACS の設定を確認します。
「MS 証明書のマシン自動登録の設定」で説明されている CA の設定を確認します。
「シスコ アクセス ポイントの設定」で説明されている AP の設定を確認します。
「ワイヤレス クライアントの設定」で説明されているワイヤレス クライアントの設定を確認します。
AAA サーバの内部データベース、または設定済みの外部データベースの 1 つにユーザ アカウントが存在すること、およびアカウントが無効にされていないことを確認します。
セキュア ハッシュ アルゴリズム 2(SHA-2)に基づく CA から発行された証明書は、現在 SHA-2 をサポートしていない Java で開発されているため、Cisco Secure ACS との互換性はありません。この問題を解決するには、CA を再インストールし、SHA-1 で証明書を発行するように設定します。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
30-Jun-2003 |
初版 |