外部LDAPS IDストアを使用したISEの設定とト
ラブルシューティング
目次
はじめに 前提条件 要件 使用するコンポーネント 設定 ネットワーク図 Active DirectoryでのLDAPSの設定 ドメインコントローラへのID証明書のインストール LDAPSディレクトリ構造へのアクセス ISEとLDAPSサーバの統合 スイッチの設定 エンドポイントの設定 ISEでのポリシーセットの設定 確認 トラブルシューティング 関連情報はじめに
このドキュメントでは、Cisco Identity Service Engine(ISE)と外部アイデンティティソースとして のSecure Lightweight Directory Access Protocol(LDAPS)サーバの統合について説明します。 LDAPSを使用すると、ディレクトリバインドが確立されたときに、転送中のLDAPデータ(ユー ザクレデンシャルを含む)を暗号化できます。LDAPSはTCPポート636を使用します。
前提条件
要件
次の項目に関する知識が推奨されます。 ISE管理の基礎知識 ● Active Directory/LDAPの基礎知識 ●使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。 Cisco ISE 2.6パッチ7 ● Active DirectoryライトウェイトディレクトリサービスがインストールされたMicrosoft ●Windowsバージョン2012 R2 ネイティブサプリカントとユーザ証明書がインストールされたWindows 10 OS PC ● CiscoスイッチC3750X(152-2.E6イメージ搭載) ● 本書の情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメン トで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働 中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。 背景説明 LDAPSでは、次の認証プロトコルがサポートされています。 EAP汎用トークンカード(EAP-GTC) ●
Password Authentication Protocol(PAP; パスワード認証プロトコル)
●
EAP Transport Layer Security(EAP-TLS)
●
Protected EAP Transport Layer Security(PEAP-TLS)
● 注:EAP-MSCHAPV2(PEAP、EAP-FASTまたはEAP-TTLSの内部方式として)、LEAP、 CHAP、およびEAP-MD5は、LDAPS外部アイデンティティソースではサポートされません 。
設定
このセクションでは、ネットワークデバイスの設定、およびISEとMicrosoft Active Directory(AD)LDAPSサーバの統合について説明します。ネットワーク図
この設定例では、エンドポイントはスイッチとのイーサネット接続を使用してローカルエリアネ ットワーク(LAN)に接続します。 接続されたスイッチポートは、ISEでユーザを認証するために 802.1x認証用に設定されています。ISEでは、LDAPSは外部IDストアとして設定されます。 次の図に、使用するネットワーク トポロジを示します。Active DirectoryでのLDAPSの設定
ドメインコントローラへのID証明書のインストール
LDAPSを有効にするには、次の要件を満たす証明書をドメインコントローラ(DC)にインストール します。 LDAPS証明書は、ドメインコントローラの個人証明書ストアにあります。 1. 証明書と一致する秘密キーがドメインコントローラのストアに存在し、証明書に正しく関連 付けられています。 2. 拡張キー使用拡張機能には、サーバ認証(1.3.6.1.5.5.7.3.1)オブジェクト識別子(OID)が含ま れます。 3. ドメインコントローラ(DC1.testlab.comなど)の完全修飾ドメイン名(FQDN)は、次のいず れかの属性に含まれている必要があります。[Subject]フィールドのCommon Name (CN)と [Subject Alternative Name Extension]のDNSエントリです。4. 証明書は、ドメインコントローラとLDAPSクライアントが信頼する認証局(CA)によって発 行する必要があります。信頼できるセキュアな通信では、クライアントとサーバは互いのル ートCAと、証明書を発行した中間CA証明書を信頼する必要があります。 5. キーを生成するには、チャネル暗号化サービスプロバイダー(CSP)を使用する必要がありま す。 6.
LDAPSディレクトリ構造へのアクセス
Active DirectoryサーバのLDAPSディレクトリにアクセスするには、任意のLDAPブラウザを使用 します。この実習では、Softerra LDAPブラウザ4.5を使用します。 1. TCPポート636でドメインへの接続を確立します。 2.簡単にするために、ADにISE OUという名前の組織ユニット(OU)を作成し、UserGroupという 名前のグループを作成する必要があります。2人のユーザ(user1とuser2)を作成し、グループ UserGroupのメンバーにします。ISEとLDAPSサーバの統合
1.信頼できる証明書にLDAPサーバルートCA証明書をインポートします。
2. ISE管理証明書を検証し、ISE管理証明書発行者証明書が信頼された証明書ストアにも存在する ことを確認します。
3. LDAPSサーバを統合するには、LDAPSディレクトリからのさまざまなLDAP属性を使用します 。[Administration] > [Identity Management] > [External Identity Sources] > [LDAP Identity Sources] > [Add]に移動します。
4. 「一般」タブから次の属性を構成します。 Subject Objectclass:このフィールドは、ユーザーアカウントのオブジェクトクラスに対応します 。次の4つのクラスのいずれかを使用できます。 Top ● Person ● OrganizationalPerson ● InetOrgPerson ●
Subject Name Attribute:このフィールドは、要求のユーザー名を含む属性の名前です。この属性は 、ISEがLDAPデータベース内の特定のユーザ名を照会したときにLDAPSから取得されます(cn、 sAMAccountNameなどを使用できます)。 このシナリオでは、エンドポイントのuser1ユーザ名 が使用されます。
グループ名属性:グループの名前を保持する属性です。LDAPディレクトリのグループ名属性の 値は、[ユーザグループ]ページのLDAPグループ名と一致する必要があります Group Objectclass:この値は、グループとして認識されるオブジェクトを指定するために検索で使 用されます。 グループマップ属性:この属性は、ユーザをグループにマッピングする方法を定義します。 証明書の属性:証明書定義を含む属性を入力します。これらの定義は、必要に応じて、クライア ントが証明書認証プロファイルの一部として定義されたときに提示する証明書を検証するために 使用できます。この場合、クライアント証明書とLDAP IDソースから取得された証明書の間でバ イナリ比較が実行されます。
5. LDAPS接続を設定するには、[Connection]タブに移動します。
6.ドメインコントローラでdsqueryを実行して、LDAPサーバへの接続に使用するユーザ名DNを取 得します。
PS C:\Users\Administrator> dsquery user -name pongarg "CN=poongarg,CN=Users,DC=testlab,DC=com"
ステップ1:SLDAPサーバの正しいIPアドレスまたはホスト名を設定し、LDAPポート(TCP 636)と Admin DNを定義して、SSL経由でLDAPと接続します。
ステップ2:[Secure Authentication]および[Server Identity Check]オプションを有効にします。
certificate User CA証明書(同じLDAPサーバにインストールされた認証局を使用してISE管理証明 書を発行しました)を選択します。
ステップ4:[Test Bind to server]を選択します。この時点では、検索ベースがまだ設定されていな いため、サブジェクトまたはグループは取得されません。
7. [Directory Organization]タブで、[Subject/Group Search Base]を設定します。これは、ISEから LDAPへの結合ポイントです。 これで、結合ポイントの子であるサブジェクトとグループのみを 取得できます。このシナリオでは、件名とグループの両方がOU=ISE OU
8. [Groups] で、[Add] をクリックして、ISEのLDAPからグループをインポートし、次の図に示す ようにグループを取得します。
スイッチの設定
802.1x認証用にスイッチを設定します。Windows PCがスイッチポートGig2/0/47に接続されてい る
aaa new-model radius server ISE address ipv4 x.x.x.x auth-port 1812 acct-port 1813 key xxxxxx aaa group server radius ISE_SERVERS server name ISE ! aaa server radius dynamic-author client x.x.x.x server-key xxxxxx ! aaa authentication dot1x default group ISE_SERVERS local aaa authorization network default group ISE_SERVERS aaa accounting dot1x default start-stop group ISE_SERVERS ! dot1x system-auth-control ip device tracking ! radius-server attribute 6 on-for-login-auth radius-server attribute 8 include-in-access-req ! ! interface GigabitEthernet2/0/47
switchport access vlan xx switchport mode access authentication port-control auto dot1x pae authenticator
エンドポイントの設定
Windowsネイティブサプリカントが使用され、LDAPでサポートされているEAPプロトコルの1つ が使用されます。EAP-TLSはユーザ認証と認可に使用されます。 1. PCにユーザ証明書(user1)がプロビジョニングされ、クライアント認証として意図されている こと、および信頼されたルート証明機関に発行者証明書チェーンがPCに存在することを確認しま す。 2. Dot1x認証を有効にし、EAP-TLS認証用にMicrosoft:スマートカードまたはその他の証明書と して認証方式を選択します。3. [Additional Settings]をクリックすると、ウィンドウが開き、specify authentication modeでボッ クスをオンにし、次の図に示すようにUser authenticationを選択します。
ISEでのポリシーセットの設定
EAP-TLSプロトコルが使用されるため、ポリシーセットを設定する前に、証明書認証プロファイ ルを設定する必要があり、後で認証ポリシーでアイデンティティソースシーケンスを使用します 。
[Identity Source Sequence]の[Certificate Authentication Profile]を参照して、[Authentication Search]リストでLDAPS外部アイデンティティソースを定義します。
この設定が完了すると、LDAPS Identityソースに対してEAP-TLSプロトコルを使用してエンドポ イントを認証できるようになります。
確認
2. LDAPSとISEの設定を確認するために、サーバへのテスト接続を使用してサブジェクトとグル ープを取得できます。
3.ユーザ認証レポートを確認します。
5. ISEでLDAPSサーバに向けてパケットキャプチャを取得して、ISEとLDAPSサーバ間でデータ が暗号化されていることを確認します。
トラブルシューティング
ここでは、この設定で発生する一般的なエラーと、そのトラブルシューティング方法を説明しま す。
認証レポートに、次のエラーが示される場合があります。
●
Authentication method is not supported by any applicable identity store
このエラー メッセージは、選択した認証方式が LDAP でサポートされないことを意味します。同 じレポート内に、認証プロトコル としてサポートされている方式(EAP-GTC、EAP-TLS、 PEAP-TLS)のいずれかが示されていることを確認してください。 サーバーへのテストバインドがエラーで終了しました。 ● 最も一般的な原因は、LDAPSサーバ証明書の検証チェックの失敗です。このような問題のトラブ ルシューティングを行うには、ISEでパケットキャプチャを取得し、3つのランタイムおよびprrt-jniコンポーネントをすべてデバッグレベルで有効にし、問題を再作成し、prrt-server.logファイル を確認します。 Bad certificateおよびprrt-serverに関するパケットキャプチャのエラーメッセージは次のとおりで す。 04:10:20,197,ERROR,0x7f9c5b6f1700,LdapSslConnectionContext::checkCryptoResult(id = 1289): error message = SSL alert: code=0x22A=554 ; source=local ; type=fatal ; message="Server certificate identity verification failed: host IP didnt match SAN IP.s3_clnt.c:1290
注:LDAPページのホスト名は、証明書のサブジェクト名(またはサブジェクト代替名)で 設定する必要があります。 したがって、サブジェクトまたはSANに証明書がない限り、こ の証明書は機能しません。SANリストにIPアドレスを含む証明書が必要です。
3.認証レポートで、IDストアにサブジェクトが見つからなかったことがわかります。これは、レ ポートに示されているユーザ名と一致する [Subject Name] 属性を持つユーザが LDAP データベー ス内で見つからなかったことを意味します。このシナリオでは、この属性の値は
sAMAccountNameに設定されています。これは、ISEが一致を検索しようとするときにLDAPユー ザのsAMAccountName値を参照することを意味します。 4.サブジェクトとグループは、サーバーへのバインドテスト中に正しく取得されない可能性があ ります。この問題の原因として最も可能性が高いのは、検索ベースが誤って設定されていること です。LDAP 階層は、リーフからルートの方向および dc(複数の単語で構成可能)で指定する必 要があることに注意してください。