セキュリティ : Cisco Secure Access Control System

ACS 5.x:セキュア LDAP サーバの設定例

2014 年 4 月 2 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2013 年 12 月 14 日) | フィードバック

概要

Lightweight Directory Access Protocol(LDAP)は、TCP/IP および UDP 上で動作するディレクトリ サービスの問い合わせおよび変更のためのネットワーキング プロトコルです。LDAP は、x.500 ベースのディレクトリ サーバにアクセスするためのライトウェイト メカニズムです。LDAP は RFC 2251 で定義されています。

Access Control Server (ACS) 5.x は、LDAP プロトコルを使用して LDAP 外部データベース(ID ストアとも呼ばれる)と統合します。LDAP サーバへの接続には、プレーン テキスト(シンプル)接続と SSL(暗号化)接続という 2 つの方法が使用されます。ACS 5.x は、この方法の両方を使用して LDAP サーバに接続するように設定できます。このドキュメントでは、暗号化接続を使用して LDAP サーバに接続するように ACS 5.x が設定されています。

前提条件

要件

このドキュメントでは、ACS 5.x が LDAP サーバに IP 接続し、ポート TCP 636 が空いていることが想定されています。

ポート TCP 636 でセキュア LDAP 接続を容認するように、Microsoft® Active Directory LDAP サーバを設定する必要があります。このドキュメントでは、Microsoft LDAP サーバにサーバ証明書を発行した認証局(CA)のルート証明書があることが想定されています。LDAP サーバの設定方法の詳細については、『サードパーティ認証局を使用して SSL で LDAP を有効にする方法』を参照してください。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

  • Cisco Secure ACS 5.x

  • Microsoft Active Directory LDAP サーバ

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。対象のネットワークが実稼働中である場合には、どのような作業についても、その潜在的な影響について確実に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

背景説明

ディレクトリ サービス

ディレクトリ サービスは、コンピュータ ネットワークのユーザおよびネットワーク リソースに関する情報を保存および編成するためのソフトウェア アプリケーション(アプリケーションのセット)です。ディレクトリ サービスを使用すると、これらのリソースへのユーザ アクセスを管理できます。

LDAP ディレクトリ サービスは、クライアント/サーバ モデルに基づきます。クライアントは、LDAP サーバに接続することで LDAP セッションを開始し、操作要求をサーバに送信します。サーバは、応答を送信します。1 台以上の LDAP サーバに、LDAP ディレクトリ ツリーまたは LDAP バックエンド データベースからのデータが含まれています。

ディレクトリ サービスは、ディレクトリを管理します。ディレクトリは、情報を保有するデータベースです。ディレクトリ サービスは、情報を保存するために分散モデルを使用します。その情報は、通常はディレクトリ サーバ間で複製されます。

LDAP ディレクトリは、単純なツリー階層で編成されており、数多くのサーバ間で分散できます。各サーバには、定期的に同期化されるディレクトリ全体の複製バージョンを配置できます。

ツリーのエントリには属性のセットが含まれており、各属性には名前(属性タイプまたは属性の説明)と 1 つ以上の値があります。属性はスキーマに定義されます。

それぞれのエントリには固有の識別子、認定者名(DN)があります。この名前には、エントリ内の属性で構成されている相対識別名(RDN)と、それに続く親エントリの DN が含まれています。DN は完全なファイル名、RDN はフォルダ内の相対ファイル名と考えることができます。

LDAP を使用した認証

ACS 5.x は、ディレクトリ サーバでバインド操作を実行し、プリンシパルを検索および認証することによって、LDAP ID ストアに対してプリンシパルを認証できます。認証が成功した場合、ACS はプリンシパルに所属するグループおよび属性を取得できます。取得する属性は、ACS Web インターフェイス(LDAP ページ)で設定できます。ACS は、これらのグループおよび属性を使用してプリンシパルを認可できます。

ユーザの認証または LDAP ID ストアの問い合わせを行うために、ACS は LDAP サーバに接続し、接続プールを保持します。

LDAP 接続管理

ACS 5.x では、複数の同時 LDAP 接続がサポートされています。接続は、最初の LDAP 認証時にオン デマンドで開かれます。最大接続数は、LDAP サーバごとに設定されます。事前に接続を開いておくと、認証時間が短縮されます。

同時バインディング接続に使用する最大接続数を設定できます。開かれる接続の数は、LDAP サーバ(プライマリまたはセカンダリ)ごとに異なる場合があり、サーバごとに設定される最大管理接続数によって決まります。

ACS は、ACS で設定されている LDAP サーバごとに、開いている LDAP 接続(バインド情報を含む)のリストを保持します。認証プロセス中に、Connection Manager は開いている接続をプールから検索しようとします。

開いている接続が存在しない場合、新しい接続が開かれます。LDAP サーバが接続を閉じた場合、Connection Manager はディレクトリを検索する最初のコールでエラーをレポートし、接続を更新しようとします。

認証プロセスが完了したあと、Connection Manager は Connection Manager への接続を解放します。詳細については、『ACS 5.X ユーザ ガイド』を参照してください。

設定

このセクションでは、このドキュメントで説明する機能を設定するために必要な情報を提供しています。

ACS 5.x でのルート CA 証明書のインストール

Cisco Secure ACS 5.x にルート CA 証明書をインストールするには、次の手順を実行します。

注:ポート TCP 636 で暗号化接続を容認するように LDAP サーバが事前設定されていることを確認してください。Microsoft LDAP サーバの設定方法の詳細については、『サードパーティ認証局を使用して SSL で LDAP を有効にする方法』を参照してください。

  1. Microsoft LDAP サーバにサーバ証明書を発行した CA のルート証明書を追加するには、[Users and Identity Stores] > [Certificate Authorities] を選択し、[Add] をクリックします。

    acs-ldaps-config-01.gif

  2. 証明書ファイルを検索するには、[Certificate File to Import] セクションで [Certificate File] の横にある [Browse] をクリックします。

    acs-ldaps-config-02.gif

  3. 必要な証明書ファイル(Microsoft LDAP サーバにサーバ証明書を発行した CA のルート証明書)を選択し、[Open] をクリックします。

    acs-ldaps-config-03.gif

  4. [Description] の横にあるスペースに説明を入力し、[Submit] をクリックします。

    acs-ldaps-config-04.gif

    次の図は、ルート証明書が適切にインストールされたことを示しています。

    acs-ldaps-config-05.gif

セキュア LDAP 用の ACS 5.X の設定

ACS 5.x をセキュア LDAP 用に設定するには、次の手順を実行します。

  1. [Users and Identity Stores] > [External Identity Stores] > [LDAP] を選択し、新しい LDAP 接続を作成するために [Create] をクリックします。

    acs-ldaps-config-06.gif

  2. [General] タブで、新しい LDAP の [Name] および [Description](オプション)を指定し、[Next] をクリックします。

    acs-ldaps-config-07.gif

  3. [Server Connection] タブの [Primary Server] セクションで、[Hostname]、[Port]、[Admin DN]、[Password] を指定します。 [Use Secure Authentication] チェックボックスがオンになっていることを確認し、最近インストールしたルート CA 証明書を選択します。[Test Bind To Server] をクリックします。

    注:セキュア LDAP の IANA 割り当てポート番号は TCP 636 です。ただし、LDAP サーバが使用しているポート番号を LDAP Admin から確認してください。

    注:[Admin DN] および [Password] は LDAP Admin によって提供されます。[Admin DN] は、LDAP サーバのすべての OU に関するすべての権限を読み取る必要があります。

    acs-ldaps-config-08.gif

    次の図は、サーバへの接続テスト バインドが正常に実行されたことを示しています。

    注:テスト バインドが正常に実行されなかった場合は、[Hostname]、[Port number]、[Admin DN]、[Password]、[Root CA] を LDAP Administrator から再確認してください。

    acs-ldaps-config-09.gif

  4. [Next] をクリックします。

    acs-ldaps-config-10.gif

  5. [Directory Organization] タブの [Schema] セクションで、必要な詳細を指定します。LDAP Admin によって提供されるように、[Directory Structure] セクションで必要な情報を指定します。[Test Configuration] をクリックします。

    acs-ldaps-config-11.gif

    次の図は、設定テストが正常に実行されたことを示しています。

    注:設定テストが正常に実行されなかった場合は、[Schema] および [Directory Structure] で指定したパラメータを LDAP Administrator から再確認してください。

    acs-ldaps-config-12.gif

  6. [Finish] をクリックします。

    acs-ldaps-config-13.gif

    LDAP サーバが正常に作成されます。

    acs-ldaps-config-14.gif

ID ストアの設定

ID ストアを設定するには、次の手順を実行します。

  1. [Access Policies] > [Access Services] > [Service Selection Rules] を選択し、どのサーバが認証にセキュア LDAP サーバを使用するかを確認します。この例のサービスは Default Network Access です。

    acs-ldaps-config-15.gif

  2. 手順 1 でサービスを確認したら、特定のサービスに移動し、[Allowed Protocols] をクリックします。[Allow PAP/ASCII] が選択されていることを確認し、[Submit] をクリックします。

    注:[Allow PAP/ASCII] とともに、別の認証プロトコルを選択できます。

    acs-ldaps-config-16.gif

  3. 手順 1 で確認したサービスをクリックし、[Identity] をクリックします。[Identity Source] の横にある [Select] をクリックします。

    acs-ldaps-config-17.gif

  4. 新しく作成したセキュア LDAP サーバ(この例では myLDAP)を選択し、[OK] をクリックします。

    acs-ldaps-config-18.gif

  5. [Save Changes] をクリックします。

    acs-ldaps-config-19.gif

  6. 手順 1 で確認したサービスの [Authorization] セクションに移動し、認証を許可するルールが最低 1 つ存在することを確認します。

    acs-ldaps-config-20.gif

トラブルシューティング

ACS は、バインド要求を送信して、LDAP サーバに対してユーザを認証します。バインド要求には、ユーザの DN およびユーザ パスワードがクリア テキストで含まれています。ユーザの DN およびパスワードが LDAP ディレクトリ内のユーザ名およびパスワードと一致した場合に、ユーザは認証されます。

  • 認証エラー:ACS は認証エラーを ACS ログ ファイルに記録します。

  • 初期化エラー:LDAP サーバのタイムアウト設定を使用して、LDAP サーバでの接続または認証が失敗したと判断する前に ACS が LDAP サーバからの応答を待つ秒数を設定します。LDAP サーバが初期化エラーを返す理由で考えられるのは、次のとおりです。

    • LDAP がサポートされていない

    • サーバがダウンしている

    • サーバがメモリ不足である

    • ユーザに特権がない

    • 間違った管理者クレデンシャルが設定されている

  • バインド エラー:LDAP サーバがバインド(認証)エラーを返す理由で考えられるのは、次のとおりです。

    • フィルタリング エラー

    • フィルタリング条件を使用した検索の失敗

    • パラメータ エラー

    • 無効なパラメータの入力

    • ユーザ アカウントが制限されている(無効、ロックアウト、期限切れ、パスワード期限切れなど)

外部リソース エラーとして次のエラーがロギングされ、LDAP サーバで考えられる問題が示されます。

  • 接続エラーが発生した

  • タイムアウトが期限切れになった

  • サーバがダウンしている

  • サーバがメモリ不足である

未知ユーザ エラーとして、エラー A user does not exist in the database がロギングされます。

無効パスワード エラーとして、エラー An invalid password was entered がロギングされます。ユーザは存在しますが、送信されたパスワードが無効です。

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 113472