セキュリティ : Cisco ASA 5500-X シリーズ次世代型ファイアウォール

ASA 8.x:AnyConnect SSL VPN CAC スマート カードの設定(Windows 用)

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

ASA 8.x:AnyConnect SSL VPN CAC スマート カードの設定(Windows 用)

目次

概要
前提条件
      要件
      使用するコンポーネント
      表記法
Cisco ASA の設定
      導入に関する考慮事項
認証、許可、アカウンティング(AAA)設定
      LDAP サーバの設定
証明書の管理
      キーの生成
      ルート CA 証明書のインストール
      ASA の登録と ID 証明書のインストール
AnyConnect VPN の設定
      IP アドレス プールの作成
      トンネル グループおよびグループ ポリシーの作成
      トンネル グループ インターフェイスおよびイメージの設定
      証明書の照合ルール(OCSP が使用される場合)
OCSP の設定
      OCSP レスポンダ証明書の設定
      OCSP を使用するための CA の設定
      OCSP ルールの設定
Cisco AnyConnect Client の設定
      Cisco Anyconnect VPN Client のダウンロード - Windows
      Cisco Anyconnect VPN Client の起動 - Windows
      新規接続
      リモート アクセスの開始
付録 A:LDAP マッピングおよび DAP
      シナリオ 1:リモート アクセス許可ダイヤルインを使用した Active Directory の強制:アクセスの許可/拒否
      Active Directory の設定
      ASA の設定
      シナリオ 2:アクセスを許可または拒否するためのグループ メンバシップを使用した Active Directory の強制
      Active Directory の設定
      ASA の設定
      シナリオ 3:複数の memberOf 属性のためのダイナミック アクセス ポリシー
      ASA の設定
付録 B:ASA CLI 設定
付録 C:トラブルシューティング
      AAA および LDAP のトラブルシューティング
      例 1:正しい属性マッピングによる接続の許可
      例 2:設定が誤った Cisco 属性マッピングによる接続の許可
DAP のトラブルシューティング
      例 1:DAP による接続の許可
      例 2:DAP による接続の拒否
認証局および OCSP のトラブルシューティング
付録 D:MS 内の LDAP オブジェクトの確認
      LDAP Viewer
      Active Directory サービス インターフェイス エディタ
      付録 E
関連するシスコ サポート コミュニティ ディスカッション
関連情報

概要

このドキュメントでは、認証用の Common Access Card(CAC)を使用して Windows 用の AnyConnect VPN リモート アクセスを実現する、Cisco 適応型セキュリティ アプライアンス(ASA)上でのサンプル設定について説明します。

このドキュメントでは、Cisco ASA と Adaptive Security Device Manager(ASDM)、Cisco AnyConnect VPN Client、Microsoft Active Directory(AD)および Lightweight Directory Access Protocol(LDAP)の設定について扱います。

このガイドの設定では、Microsoft AD および LDAP サーバを使用します。またこのドキュメントでは、OCSP、LDAP 属性マップ、ダイナミック アクセス ポリシー(DAP)などの高度な機能についても扱います。

前提条件

要件

Cisco ASA、Cisco AnyConnect Client、Microsoft AD/LDAP、および公開キー インフラストラクチャ(PKI)についての基本的な理解があれば、完全な設定を理解するために有益です。AD グループ メンバシップ、ユーザ プロパティ、および LDAP オブジェクトについて理解していれば、証明書属性と AD/LDAP オブジェクトの間での許可プロセスの関連付けに役立ちます。

使用するコンポーネント

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

  • ソフトウェア バージョン 8.0(x) 以降が稼働する Cisco 5500 シリーズ適応型セキュリティ アプライアンス(ASA)

  • ASA 8.x 用の Cisco Adaptive Security Device Manager(ASDM)バージョン 6.x

  • Cisco AnyConnect VPN Client(Windows 版)

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用されるデバイスはすべて、初期設定(デフォルト)の状態から作業を開始しています。ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

表記法

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

Cisco ASA の設定

このセクションでは、ASDM を使用した Cisco ASA の設定について扱います。ここでは、SSL AnyConnect 接続を経由した VPN リモート アクセス トンネルを配備するために必要なステップについて説明します。認証には CAC 証明書が使用され、証明書内のユーザ プリンシパル名(UPN)属性が、許可のために Active Directory に取り込まれます。

導入に関する考慮事項

  • このガイドでは、インターフェイス、DNS、NTP、ルーティング、デバイス アクセス、ASDM アクセスなどの基本的な設定については扱いません。ネットワーク オペレータはこれらの設定をよく理解しているものとします。

    詳細は、『マルチファンクション セキュリティ アプライアンス』を参照してください。

  • 赤色で強調表示されているセクションは、基本的な VPN アクセスのために必要な必須の設定です。たとえば、VPN トンネルは CAC カードで設定でき、OCSP チェック、LDAP マッピング、ダイナミック アクセス ポリシー(DAP)チェックを行う必要はありません。DoD では OCSP チェックが規定されていますが、OCSP を設定しなくてもトンネルは機能します。

  • 青色で強調表示されているセクションは、設計にセキュリティを追加するために含めることができる高度な機能です。

  • ASDM と AnyConnect/SSL VPN は、同じインターフェイスの同じポートを使用できません。一方または他方のポートを変更してアクセスすることを推奨します。たとえば、ASDM をポート 445 にし、AC/SSL VPN は 443 のままにします。ASDM への URL アクセスは、8.x で変更されました。https://<ip_address>:<port>/admin.html を使用してください。

  • 必要な ASA イメージは最低 8.0.2.19 で、ASDM 6.0.2 です。

  • AnyConnect/CAC は Vista でサポートされています。

  • ポリシーを強制するための LDAP およびダイナミック アクセス ポリシーのマッピングの例については、付録 A を参照してください。

  • LDAP オブジェクトを MS でチェックする方法については、付録 D を参照してください。

  • ファイアウォール設定のためのアプリケーション ポートのリストについては、『関連情報』を参照してください。

認証、許可、アカウンティング(AAA)設定

Common Access Card(CAC)内の証明書の使用は、DISA 認証局(CA)サーバまたは自分の組織の CA サーバを通じて認証されます。証明書はネットワークへのリモート アクセス用に有効である必要があります。認証に加えて、Microsoft Active Directory または Lightweight Directory Access Protocol(LDAP)の使用が許可されている必要もあります。米国国防総省(DoD)では、ユーザ プリンシパル名(UPN)属性を許可用に使用することを求めていますが、これは証明書の Subject Alternative Name(SAN)セクションの一部です。UPN または EDI/PI は、1234567890@mil のフォーマットである必要があります。これらの設定では、ASA 内の AAA サーバを LDAP サーバと一緒に許可用に構成する方法を示しています。LDAP オブジェクト マッピングの追加の設定については、付録 A を参照してください。

LDAP サーバの設定

次の手順を実行します。

  1. [Remote Access VPN] > [AAA Setup] > [AAA Server Group] を選択します。

  2. AAA サーバ グループ テーブルで、[Add 3] をクリックします。

  3. サーバ グループ名を入力し、プロトコル オプション ボタンで [LDAP] を選択します。図 1 を参照してください。

  4. 選択されたグループ テーブルで、[Add] をクリックします。作成したサーバが前のテーブルで強調表示されていることを確認します。

  5. AAA サーバの編集ウィンドウで、次の手順を実行します。図 2 を参照してください。

    注:この接続のタイプに LDAP および AD が設定されている場合、[Enable LDAP over SSL] オプションを選択してください。

    1. LDAP が配置されるインターフェイスを選択します。このガイドでは、インターフェイスの内側であることを示しています。

    2. サーバの IP アドレスを入力します。

    3. [Server Port] を入力します。デフォルトの LDAP ポートは 389 です。

    4. [Server Type] を選択します。

    5. [Base DN] を入力します。これらの値は AD/LDAP 管理者に問い合わせてください。

      図 1

      cac-anyconnect-vpn-windows-01.gif

    6. [Scope] オプションで、該当する回答を選択します。これはベース DN によって異なります。AD/LDAP 管理者に連絡して支援を求めてください。

    7. [Naming Attribute] に、userPrincipalName と入力します。これは AD/LDAP サーバ内でユーザ許可に使用する属性です。

    8. [Login DN] に管理者 DN を入力します。

      注:ユーザは管理者権限を持つか、ユーザ オブジェクトおよびグループ メンバシップを含む LDAP 構造を表示および検索する権限を持ちます。

    9. [Login Password] に管理者のパスワードを入力します。

    10. LDAP 属性は [None] のままにします。

      図 2

      cac-anyconnect-vpn-windows-02.gif

      注:このオプションは、後で別の AD/LDAP オブジェクトを許可用に追加する設定で使用します。

    11. [OK] を選択します。

  6. [OK] を選択します。

証明書の管理

ASA に証明書をインストールするには、2 つのステップがあります。最初に、必要な CA 証明書(ルートおよび追加の認証局)をインストールします。次に、ASA を特定の CA に登録し、ID 証明書を取得します。DoD PKI では、Root CA2、Class 3 Root、ASA の登録先の CA## 中間証明書、ASA ID 証明書、および OCSP 証明書を使用します。ただし OCSP を使用しない場合は、OCSP 証明書をインストールする必要はありません

注:ルート証明書と、デバイスの ID 証明書を登録する方法の指示を取得するには、セキュリティ POC に連絡してください。ASA のリモート アクセスの場合、SSL 証明書で十分です。デュアル SAN 証明書は必要ありません

注:ローカル マシンにも DoD CA チェーンをインストールしておく必要があります。証明書は Internet Explorer を使用して Microsoft 証明書ストアから表示できます。DoD は、すべての CA を自動的にマシンに追加するバッチ ファイルを提供しています。詳細については、お客様の PKI POC にお問い合わせください。

注:DoD CA2 および Class 3 Root と、ASA ID および ASA 証明書を発行した CA 中間証明書だけが、ユーザ認証に必要な CA とする必要があります。現行のすべての CA 中間証明書は CA2 および Class 3 Root チェーンに該当するため、CA2 および Class 3 Root が追加される限り信頼されます。

キーの生成

次の手順を実行します。

  1. [Remote Access VPN] > [Certificate Management] > [Identity Certificate] > [Add] を選択します。

  2. [Add a new id certificate] を選択し、キー ペア オプションの [New] を選択します。

  3. [Add Key Pair] ウィンドウで、キー名に DoD-1024 と入力します。新しいキーを追加するオプション ボタンをクリックします。図 3 を参照してください。

    図 3

    cac-anyconnect-vpn-windows-03.gif

  4. キーのサイズを選択します。

  5. [Usage] は [General Purpose] のままにします。

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

    注:DoD Root CA 2 では 2048 ビット キーが使用されます。この CA を使用できるようにするには、2048 ビットのキー ペアを使用する 2 番目のキーを生成する必要があります。上記の手順を使用して、2 番目のキーを追加してください。

ルート CA 証明書のインストール

次の手順を実行します。

  1. [Remote Access VPN] > [Certificate Management] > [CA Certificate] > [Add] を選択します。

  2. [Install from File] を選択し、証明書を参照します。

  3. [Install Certificate] を選択します。

    図 4:ルート証明書のインストール

    cac-anyconnect-vpn-windows-04.gif

  4. このウィンドウが表示されます。図 5 を参照してください。

    図 5:

    cac-anyconnect-vpn-windows-05.gif

    注:インストールするすべての証明書について、手順 1 から手順 3 までを繰り返してください。DoD PKI では、Root CA 2、Class 3 Root、CA## 中間証明書、ASA ID、および OCSP Server のそれぞれの証明書が必要です。OCSP を使用しない場合、OCSP 証明書は不要です。

    図 6:ルート証明書のインストール

    cac-anyconnect-vpn-windows-06.gif

ASA の登録と ID 証明書のインストール

  1. [Remote Access VPN] > [Certificate Management] > [Identity Certificate] > [Add] を選択します。

  2. [Add a new id certificate] を選択します。

  3. DoD-1024 キー ペアを選択します。図 7 を参照してください。

    図 7:ID 証明書パラメータ

    cac-anyconnect-vpn-windows-07.gif

  4. [Certificate Subject DN] ボックスに移動し、[Select] を選択します。

  5. [Certificate Subject DN] ウィンドウで、デバイスの情報を入力します。図 8 の例を参照してください。

    図 8:DN の編集

    cac-anyconnect-vpn-windows-08.gif

  6. [OK] を選択します。

    注:サブジェクト DN を追加するときは、システム内で設定されているデバイスのホスト名を使用するようにします。必須フィールドについては PKI POC から聞き取ることができます。

  7. [Add Certificate] を選択します。

  8. 要求を保存するディレクトリを選択するには、[Browse] をクリックします。図 9 を参照してください。

    図 9:証明書要求

    cac-anyconnect-vpn-windows-09.gif

  9. ファイルを WordPad で開き、適切なドキュメントに要求をコピーして、お客様の PKI POC に送信します。図 10 を参照してください。

    図 10:登録要求

    cac-anyconnect-vpn-windows-10.gif

  10. CA 管理者から証明書を受け取ったら、[Remote Access VPN] > [Certificate Management] > [ID Certificate] > [Install] を選択します。図 11 を参照してください。

    図 11:ID 証明書のインポート

    cac-anyconnect-vpn-windows-11.gif

  11. 証明書のインストール ウィンドウで、ID 証明書を参照し、[Install Certificate] を選択します。図 12 の例を参照してください。

    図 12:ID 証明書のインストール

    cac-anyconnect-vpn-windows-12.gif

    注:発行された証明書およびキー ペアを保存するために、ID 証明書トラストポイントをエクスポートすることを推奨します。これによって ASA 管理者は、RMA またはハードウェア障害の場合に証明書およびキー ペアを新しい ASA にインポートすることができます。詳細は、『トラストポイントのエクスポートおよびインポート』を参照してください。

    注:設定をフラッシュ メモリに保存するには、[SAVE] をクリックします。

AnyConnect VPN の設定

ASDM で VPN パラメータを設定するには 2 つのオプションがあります。最初のオプションは SSL VPN ウィザードを使用することです。これは VPN 設定が初めてのユーザにとって、使いやすいツールです。2 つ目のオプションは、手動で各オプションを設定することです。この設定ガイドでは、手動による方法を使用します。

注:AC クライアントをユーザが取得するには、次の 2 つの方法があります。

  1. Cisco の Web サイトからクライアントをダウンロードし、マシンにインストールすることができます。

  2. Web ブラウザ経由で ASA にアクセスすると、クライアントをダウンロードできます。

注:たとえば、https://asa.test.com などがあります。このガイドでは 2 番目の方法を使用します。AC クライアントがクライアント マシンに完全にインストールされたら、AC クライアントをアプリケーションから起動します。

IP アドレス プールの作成

DHCP などの他の方法を使用する場合、これはオプションです。

  1. [Remote Access VPN] > [Network (Client) Access] > [Address Assignment] > [Address Pools] を選択します。

  2. [Add] をクリックします。

  3. [Add IP Pool] ウィンドウで、IP プールの名前、開始および終了 IP アドレスを入力し、サブネット マスクを選択します。図 13 を参照してください。

    図 13:IP プールの追加

    cac-anyconnect-vpn-windows-13.gif

  4. [OK] を選択します。

  5. [Remote Access VPN] > [Network (Client) Access] > [Address Assignment] > [Assignment Policy] を選択します。

  6. 適切な IP アドレス割り当て方法を選択します。このガイドでは、内部アドレス プールを使用します。図 14 を参照してください。

    図 14:IP アドレス割り当て方法

    cac-anyconnect-vpn-windows-14.gif

  7. [Apply] をクリックします。

トンネル グループおよびグループ ポリシーの作成

グループ ポリシー

注:新しいポリシーを作成しない場合、デフォルトの組み込みグループ ポリシーを使用できます。

  1. [Remote Access VPN] > [Network (Client) Access] > [Group Policies] を選択します。

  2. [Add] をクリックして、[Internal Group Policy] を選択します。

  3. [Add Internal Group Policy] ウィンドウで、[Name] テキスト ボックスにグループ ポリシーの名前を入力します。図 15 を参照してください。

    図 15:内部グループ ポリシーの追加

    cac-anyconnect-vpn-windows-15.gif

    1. [General] タブの [Tunneling Protocols] で [SSL VPN Client] オプションを選択します(Clientless SSL などの他のプロトコルを使用しない場合)。

    2. [Servers] セクションで、[inherit] チェック ボックスのチェックを外し、DNS サーバおよび WINS サーバの IP アドレスを入力します。該当する場合は DHCP の範囲を入力します。

    3. [Servers] セクションで、デフォルト ドメインの [inherit] チェック ボックスを選択解除し、適切なドメイン名を入力します。

    4. [General] タブで、アドレス プール セクションの [inherit] チェックを選択解除し、前の手順で作成されたアドレス プールを追加します。IP アドレス割り当てに別の方法を使用する場合、これを [inherit] のままにして、適宜変更します。

    5. 他のすべての設定タブは、デフォルト設定のままにします。

      注:AC クライアントをエンド ユーザが取得するには、2 つの方法があります。1 つの方法は、Cisco.com にアクセスして AC クライアントをダウンロードすることです。別の方法は、ユーザが接続を試行したときに ASA でクライアントをユーザにダウンロードすることです。この例では後者の方法を示します。

  4. 次に、[Advanced] > [SSL VPN Client] > [Login Settings] を選択します。図 16 を参照してください。

    図 16:内部グループ ポリシーの追加

    cac-anyconnect-vpn-windows-16.gif

    1. [Inherit] チェックボックスを選択解除します。

    2. [Post Login Setting] は、ご使用の環境に合ったほうを選択します。

    3. [Post Login Selection] は、ご使用の環境に合ったほうを選択します。

    4. [OK] を選択します。

トンネル グループ インターフェイスおよびイメージの設定

注:新しいグループを作成しない場合、デフォルトの組み込みグループを使用できます。

  1. [Remote Access VPN] > [Network (Client) Access] > [SSL VPN Connection Profile] を選択します。

  2. [Enable Cisco AnyConnect Client……] を選択します。

  3. [Would you like to designate an SVC image?]という質問を示すダイアログ ボックスが表示されます。

  4. [Yes] を選択します。

  5. 画像がすでに存在する場合、Browse Flash で使用する画像を選択します。画像が使用できない場合、[Upload] を選択してローカル コンピュータ上のファイルを参照します。図 17 を参照してください。ファイルは Cisco.com からダウンロードできます。Windows、MAC、および Linux 用のファイルがあります。

    図 17:SSL VPN クライアント イメージの追加

    cac-anyconnect-vpn-windows-17.gif

  6. 次に、[Allow Access]、[Require Client Cert] をオンにし、オプションで [Enable DTLS] をオンにします。図 18 を参照してください。

    図 18:アクセスの有効化

    cac-anyconnect-vpn-windows-18.gif

  7. [Apply] をクリックします。

  8. 次に、接続プロファイルおよびトンネル グループを作成します。[Remote Access VPN] > [Network (Client) Access] > [SSL VPN Connection Profile] を選択します。

  9. [Connection Profiles] セクションで、[Add] をクリックします。

    図 19:接続プロファイルの追加

    cac-anyconnect-vpn-windows-19.gif

    1. グループに名前を付けます。

    2. 認証方法で [Certificate] を選択します。

    3. 以前作成したグループ ポリシーを選択します。

    4. [SSL VPN Client] がオンになっていることを確認します。

    5. 他のオプションはデフォルトのままにします。

  10. 次に、[Advanced] > [Authorization] を選択します。詳細については、図 20 を参照してください。

    図 20:許可

    cac-anyconnect-vpn-windows-20.gif

    1. 以前作成した AD-LDAP グループを選択します。

    2. [Users must exist….to connect] にチェックマークを付けます。

    3. マッピング フィールドで、プライマリについては [UPN] を、セカンダリについては [None] を選択します。

  11. メニューから [SSL VPN] セクションを選択します。

  12. [Connection Aliases] セクションで、次の手順を実行します。

    図 21:接続エイリアス

    cac-anyconnect-vpn-windows-21.gif

    1. [Add] を選択します。

    2. 使用するグループ エイリアスを入力します。

    3. [Enabled] にチェックマークが付いていることを確認します。図 21 を参照してください。

  13. [OK] をクリックします。

注:設定をフラッシュ メモリに保存するには、[Save] をクリックします。

証明書の照合ルール(OCSP が使用される場合)

  1. [Remote Access VPN] > [Advanced] > [Certificate to SSL VPN Connection Profile Maps] を選択します。図 22 を参照してください。

    1. [Certificate to Connection Profile Maps] セクションで [Add] を選択します。

    2. [Map] セクションでは、既存のマップを DefaultCertificateMap として保持するか、あるいは IPsec 用の証明書マップをすでに使用している場合は新しいマップを作成することができます。

    3. ルールのプライオリティはそのままにします。

    4. マップ対象グループは、[-- Not Mapped --] のままにします。図 22 を参照してください。

      図 22:証明書の照合ルールの追加

      /image/gif/paws/107251/cac-anyconnect-vpn-windows-22.gif

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

  2. 下の表にある [Add] をクリックします。

  3. [Add Certificate Matching Rule Criterion] ウィンドウで、次の手順を実行します。

    図 23:証明書の照合ルールの基準

    /image/gif/paws/107251/cac-anyconnect-vpn-windows-23.gif

    1. [Field] カラムは [Subject] のままにします。

    2. [Component] カラムは [Whole Field] のままにします。

    3. [Operator] カラムを [Does Not Equal] に変更します。

    4. [Value] カラムに、2 つの二重引用符 “” を入力します。

    5. [OK] および [Apply] をクリックします。図 23 の例を参照してください。

OCSP の設定

OCSP の設定はさまざまであり、OCSP レスポンダ ベンダーによって異なります。詳細は、ベンダーのマニュアルをお読みください。

OCSP レスポンダ証明書の設定

  1. OCSP レスポンダから自己生成された証明書を取得します。

  2. 以前説明した手順を実行して、OSCP サーバの証明書をインストールします。

    注:OCSP 証明書トラストポイントについて [Do not check certificates for revocation] が選択されていることを確認してください。

OCSP を使用するための CA の設定

  1. [Remote Access VPN] > [Certificate Management] > [CA Certificate] を選択します。

  2. OCSP を使用するように CA を設定するために、OCSP を強調表示します。

  3. [Edit] をクリックします。

  4. [Check certificate for revocation] がチェックされていることを確認します。

  5. [Revocation Methods] セクションで、OCSP を追加します。図 24 を参照してください。

    OCSP 失効チェック

    cac-anyconnect-vpn-windows-24.gif

  6. 厳密な OCSP チェックを行う場合、[Consider Certificate valid…cannot be retrieved] のチェックマークを外してください。

注:OCSP を失効用に使用するすべての CA サーバを設定または編集します。

OCSP ルールの設定

注:証明書グループ照合ポリシーを作成し、OCSP レスポンダを設定してからこれらの手順を実行するようにしてください。

注:一部の OCSP 実装では、ASA についての DNS A および PTR レコードが必要になる場合があります。このチェックは、ASA が .mil のサイトからのものであることを確認するために実行されます。

  1. [Remote Access VPN] > [Certificate Management] > [CA Certificates 2] を選択します。

  2. OCSP を使用するように CA を設定するために、OCSP を強調表示します。

  3. [Edit] を選択します。

  4. [OCSP Rule] タブをクリックします。

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

  6. [Add OCSP Rule] ウィンドウで、次の手順を実行します。図 25 を参照してください。

    図 25:OCSP ルールの追加

    cac-anyconnect-vpn-windows-25.gif

    1. [Certificate Map] オプションで、[DefaultCertificateMap] を選択するか、以前作成したマップを選択します。

    2. [Certificate] オプションで、[OCSP responder] を選択します。

    3. [Index] オプションに、10 と入力します。

    4. [URL] オプションに、OCSP レスポンダの IP アドレスまたはホスト名を入力します。ホスト名を使用する場合、ASA に DNS サーバが設定されていることを確認します。

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

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

Cisco AnyConnect Client の設定

このセクションでは、Cisco AnyConnect VPN Client の設定について扱います。

前提条件:Cisco AnyConnect VPN Client およびミドルウェア アプリケーションがホスト PC にすでにインストールされている。ActivCard Gold および ActivClient がテスト済みである。

注:このガイドでは、AC クライアントの初期インストールについてのみ、グループ URL 方式を使用します。AC クライアントのインストールが済んだら、IPsec クライアントと同じように AC アプリケーションを起動します。

注:DoD 証明書チェーンがローカル マシンにインストールされていることが必要です。PKI POC に問い合わせて証明書またはバッチ ファイルを取得してください。

Cisco Anyconnect VPN Client のダウンロード - Windows

  1. Internet Explorer 経由で ASA への Web セッションを起動します。アドレスは https://Outside-Interface という形式になります。たとえば、https://172.18.120.225 と指定します。

  2. アクセスに使用する署名証明書を選択します。図 26 を参照してください。

    図 26:正しい証明書の選択

    cac-anyconnect-vpn-windows-26.gif

  3. プロンプトが表示されたら、PIN を入力します。

    図 27:PIN の入力

    cac-anyconnect-vpn-windows-27.gif

  4. [Yes] を選択してセキュリティ警告に同意します。

  5. SSL ログイン ページで、[Login] を選択します。クライアント証明書がログインに使用されます。図 28 を参照してください。

    図 28:SSL ログイン

    cac-anyconnect-vpn-windows-28.gif

  6. AnyConnect はクライアントのダウンロードを開始します。図 29 を参照してください。

    図 29:AnyConnect のインストール

    cac-anyconnect-vpn-windows-29.gif

  7. 使用する適切な証明書を選択します。図 30 を参照してください。AnyConnect はインストールを続行します。ASA 管理者は、クライアントを永続的にインストールするか、ASA 接続のたびにインストールすることができます。

    図 30:証明書

    cac-anyconnect-vpn-windows-30.gif

Cisco Anyconnect VPN Client の起動 - Windows

ホスト PC から、[Start] > [All Programs] > [Cisco] > [AnyConnect VPN Client] を選択します。

注:オプションの AnyConnect Client 設定については、付録 E を参照してください。

新規接続

  1. AC ウィンドウが表示されます。図 34 を参照してください。

    図 34:新規 VPN 接続

    cac-anyconnect-vpn-windows-34.gif

  2. AC が接続を自動的に試行しない場合、適切なホストを選択します。

  3. プロンプトが表示されたら、PIN を入力します。図 35 を参照してください。

    図 35:PIN の入力

    cac-anyconnect-vpn-windows-35.gif

リモート アクセスの開始

接続先となるグループおよびホストを選択します。

証明書が使用されるため、[Connect] を選択して VPN を確立します。図 36 を参照してください。

図 36:接続

cac-anyconnect-vpn-windows-36.gif

注:接続に証明書を使用するため、ユーザ名およびパスワードの入力は不要です。

注:オプションの AnyConnect Client 設定については、付録 E を参照してください。

付録 A:LDAP マッピングおよび DAP

ASA/PIX リリース 7.1(x) 以降では、LDAP マッピングと呼ばれる機能が導入されました。これは Cisco 属性と LDAP オブジェクトまたは属性の間のマッピングを提供する高度な機能で、LDAP スキーマ変更が不要になります。CAC 認証を実装する場合、これはリモート アクセス接続への追加のポリシー適用をサポートすることができます。これらは LDAP マッピングの例です。AD/LDAP サーバを変更するには、管理者権限が必要であることに注意してください。ASA 8.x ソフトウェアでは、ダイナミック アクセス ポリシー(DAP)機能が導入されました。DAP は CAC と一緒に機能して、複数の AD グループを参照したり、ポリシーや ACL などをプッシュしたりすることができます。

シナリオ 1:リモート アクセス許可ダイヤルインを使用した Active Directory の強制:アクセスの許可/拒否

この例では AD 属性 msNPAllowDailin を Cisco 属性 cVPN3000-Tunneling- Protocol にマッピングします。

  • AD 属性の値:TRUE = 許可、FALSE = 拒否

  • Cisco 属性の値:1 = FALSE、4(IPSec)または 20(4 IPSEC + 16 WebVPN)= TRUE

ALLOW 条件について、次のようにマップします。

  • TRUE = 20

DENY ダイヤルイン条件の場合、次のようにマップします。

  • FALSE = 1

注:TRUE および FALSE はすべて大文字です。詳細は、『セキュリティ アプライアンス ユーザ許可のための外部サーバの設定』を参照してください。

Active Directory の設定

  1. Active Directory サーバで、[Start] > [Run] をクリックします。

  2. 開いたテキスト ボックスに dsa.msc と入力して、[Ok] をクリックします。これで Active Directory 管理コンソールが起動します。

  3. Active Directory 管理コンソールでプラス記号をクリックして、Active Directory のユーザおよびコンピュータを展開します。

  4. プラス記号をクリックして、ドメイン名を展開します。

  5. ユーザの OU が作成されている場合、OU を展開してすべてのユーザを表示します。すべてのユーザを Users フォルダに割り当てている場合、そのフォルダを展開してユーザを表示します。図 A1 を参照してください。

    図 A1:Active Directory 管理コンソール

    /image/gif/paws/107251/cac-anyconnect-vpn-windows-40.gif

  6. 編集するユーザをダブルクリックします。

    ユーザのプロパティ ページで [Dial-in] タブをクリックし、[Allow] または [Deny] をクリックします。図 A2 を参照してください。

    図 A2:ユーザのプロパティ

    cac-anyconnect-vpn-windows-41.gif

  7. 次に [OK] をクリックします。

ASA の設定

  1. ASDM で、[Remote Access VPN] > [AAA Setup] > [LDAP Attribute Map] を選択します。

  2. [Add] をクリックします。

  3. Add LDAP Attribute Map ウィンドウで、次の手順を実行します。図 A3 を参照してください。

    図 A3LDAP 属性マップの追加

    cac-anyconnect-vpn-windows-42.gif

    1. [Name] テキストボックスに名前を入力します。

    2. [Map Name] タブの [Customer Name] テキストボックスに msNPAllowDialin と入力します。

    3. [Map Name] タブの [Cisco Name] ドロップダウン オプションで [Tunneling-Protocols] を選択します。

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

    5. [Map Value] タブを選択します。

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

    7. [Add Attribute LDAP Map Value] ウィンドウの [Customer Name] テキストボックスに TRUE と入力し、[Cisco Value] テキストボックスに 20 と入力します。

    8. [Add] をクリックします。

    9. [Customer Name] テキストボックスに FALSE と入力し、[Cisco Value] テキストボックスに 1 と入力します。図 A4 を参照してください。

      /image/gif/paws/107251/cac-anyconnect-vpn-windows-43.gif

    10. [OK] をクリックします。

    11. [OK] をクリックします。

    12. [APPLY] をクリックします。

    13. 設定は図 A5 のようになります。

      図 A5:LDAP 属性マップの設定

      /image/gif/paws/107251/cac-anyconnect-vpn-windows-44.gif

  4. [Remote Access VPN] > [AAA Setup] > [AAA Server Groups] を選択します。図 A6 を参照してください。

    図 A6:AAA サーバ グループ

    cac-anyconnect-vpn-windows-45.gif

  5. 編集するサーバ グループをクリックします。[Servers in the Selected Group] セクションからサーバの IP アドレスまたはホスト名を選択して、[Edit] をクリックします。

  6. [Edit AAA Server] ウィンドウの [LDAP Attribute Map] テキストボックスで、作成された LDAP 属性マップをドロップダウン メニューから選択します。図 A7 を参照してください。

    図 A7:LDAP 属性マップの追加

    cac-anyconnect-vpn-windows-46.gif

  7. [OK] をクリックします。

注:LDAP バインディングおよび属性マッピングが正しく機能しているかどうかを確認するために、テスト中は LDAP デバッグをオンにします。トラブルシューティング コマンドについては付録 C を参照してください。

シナリオ 2:アクセスを許可または拒否するためのグループ メンバシップを使用した Active Directory の強制

この例では、グループ メンバシップを条件として設定するために、LDAP 属性 memberOf を使用してトンネリング プロトコル属性にマッピングします。このポリシーを機能させるには、次の条件が必要です。

  • ALLOW 条件のメンバになる ASA VPN ユーザについて、すでに存在するグループを使用するか、新しいグループを作成します。

  • DENY 条件のメンバになる ASA 以外のユーザについて、すでに存在するグループを使用するか、新しいグループを作成します。

  • LDAP Viewer 内で、グループの DN が正しいことを確認します。「付録 D」を参照してください。DN が正しくない場合、マッピングは正しく動作しません。

注:このリリースでは、ASA は memeberOf 属性の最初の文字列のみ読み取ることができることに注意してください。作成された新しいグループがリストの先頭になるようにしてください。他のオプションは、特殊文字を名前の前に配置して、AD が特殊文字を最初に参照できるようにすることです。この制約を回避するには、複数のグループを参照する 8.x ソフトウェアの DAP を使用してください。

注:ユーザは拒否グループの一部であるか、memberOf を常に ASA に送り返せるような別のグループの一部であるようにしてください。FALSE 拒否条件を指定する必要はありませんが、そうすることがベスト プラクティスです。既存のグループ名にスペースが含まれる場合は、次の方法で属性を入力します。

CN=Backup Operators,CN=Builtin,DC=ggsgseclab,DC=org

注:DAP では、ASA が複数グループの memberOf 属性を参照し、グループに基づいた許可を行います。DAP のセクションを参照してください。

マッピング

  • AD 属性の値:

    • memberOf CN=ASAUsers,CN=Users,DC=ggsgseclab,DC=org

    • memberOf CN=TelnetClients,CN=Users,DC=labrat,DC=com

  • Cisco 属性の値:1 = FALSE, 20 = TRUE,

ALLOW 条件について、次のようにマップします。

  • memberOf CN=ASAUsers,CN=Users,DC=ggsgseclab,DC=org= 20

DENY 条件について、次のようにマップします。

  • memberOf CN=TelnetClients,CN=Users,DC=ggsgseclab,DC=org = 1

注:今後のリリースでは、接続を許可および拒否するための Cisco 属性が存在します。Cisco 属性についての詳細は、『セキュリティ アプライアンス ユーザ許可のための外部サーバの設定』を参照してください。

Active Directory の設定

  1. Active Directory サーバで、[Start] > [Run] を選択します。

  2. 開いたテキスト ボックスに dsa.msc と入力して、[Ok] をクリックします。これで Active Directory 管理コンソールが起動します。

  3. Active Directory 管理コンソールでプラス記号をクリックして、Active Directory のユーザおよびコンピュータを展開します。図 A8 を参照してください。

    図 A8Active Directory グループ

    cac-anyconnect-vpn-windows-47.gif

  4. プラス記号をクリックして、ドメイン名を展開します。

  5. [Users] フォルダを右クリックし、[New] > [Group] を選択します。

  6. グループ名を入力します。次に例を示します。ASAUsers。

  7. [OK] をクリックします。

  8. [Users] フォルダをクリックし、上記で作成したグループをダブルクリックします。

  9. [Members] タブを選択して、[Add] をクリックします。

  10. 追加するユーザの名前を入力して、[Ok] をクリックします。

ASA の設定

  1. ASDM で、[Remote Access VPN] > [AAA Setup] > [LDAP Attribute Map] を選択します。

  2. [Add] をクリックします。

  3. Add LDAP Attribute Map ウィンドウで、次の手順を実行します。図 A3 を参照してください。

    1. [Name] テキストボックスに名前を入力します。

    2. [Map Name] タブの [Customer Name] テキストボックス c に memberOf と入力します。

    3. [Map Name] タブの [Cisco Name] ドロップダウン オプションで [Tunneling-Protocols] を選択します。

    4. [Add] を選択します。

    5. [Map Value] タブをクリックします。

    6. [Add] を選択します。

    7. [Add Attribute LDAP Map Value] ウィンドウの [Customer Name] テキストボックスに CN=ASAUsers,CN=Users,DC=ggsgseclab,DC=org と入力し、[Cisco Value] テキストボックスに 20 と入力します。

    8. [Add] をクリックします。

    9. [Customer Name] テキストボックスに CN=TelnetClients,CN=Users,DC=ggsgseclab,DC=org と入力し、[Cisco Value] テキストボックスに 1 と入力します。図 A4 を参照してください。

    10. [OK] をクリックします。

    11. [OK] をクリックします。

    12. [Apply] をクリックします。

    13. 設定は図 A9 のようになります。

    図 A9:LDAP 属性マップ

    cac-anyconnect-vpn-windows-48.gif

  4. [Remote Access VPN] > [AAA Setup] > [AAA Server Groups] を選択します。

  5. 編集するサーバ グループをクリックします。[Servers in the Selected Group] セクションからサーバの IP アドレスまたはホスト名を選択して、[Edit] をクリックします。

    cac-anyconnect-vpn-windows-49.gif

  6. [Edit AAA Server] ウィンドウの [LDAP Attribute Map] テキストボックスで、作成された LDAP 属性マップをドロップダウン メニューから選択します。

  7. [OK] をクリックします。

注:LDAP バインディングおよび属性マッピングが正しく機能しているかどうかを確認するために、テスト中は LDAP デバッグをオンにします。トラブルシューティング コマンドについては付録 C を参照してください。

シナリオ 3:複数の memberOf 属性のためのダイナミック アクセス ポリシー

この例では、Active Directory グループ メンバシップに基づくアクセスを可能にするために、DAP を使用して複数の memberOf 属性を参照します。8.x よりも前では、ASA は最初の memberOf 属性のみを読み取っていました。8.x 以降では、ASA はすべての memberOf 属性を参照できます。

  • ALLOW 条件のメンバになる ASA VPN ユーザについて、すでに存在するグループを使用するか、新しいグループ(1 つまたは複数)を作成します。

  • DENY 条件のメンバになる ASA 以外のユーザについて、すでに存在するグループを使用するか、新しいグループを作成します。

  • LDAP Viewer 内で、グループの DN が正しいことを確認します。「付録 D」を参照してください。DN が正しくない場合、マッピングは正しく動作しません。

ASA の設定

  1. ASDM で、[Remote Access VPN] > [Network (Client) Access] > [Dynamic Access Policies] を選択します。

  2. [Add] をクリックします。

  3. [Add Dynamic Access Policy] で、次の手順を実行します。

    1. [Name] テキストボックス b に名前を入力します。

    2. プライオリティ セクションに、1 などの 0 より大きい数を入力します。

    3. 選択基準で、[Add] をクリックします。

    4. [Add AAA Attribute] で、[LDAP] を選択します。

    5. [Attribute ID] セクションで、memberOf と入力します。

    6. [Value] セクションで、[=] を選択し、AD グループ名を入力します。参照する各グループについてこの手順を繰り返します。図 A10 を参照してください。

      図 A10:AAA 属性マップ

      cac-anyconnect-vpn-windows-50.gif

    7. [OK] をクリックします。

    8. [Access Policy Attributes] セクションで、[Continue] を選択します。図 A11 を参照してください。

      図 A11:ダイナミック ポリシーの追加

      cac-anyconnect-vpn-windows-51.gif

  4. ASDM で、[Remote Access VPN] > [Network (Client) Access] > [Dynamic Access Policies] を選択します。

  5. [Default Access Policy] を選択し、[Edit] を選択します。

  6. デフォルト アクションは [Terminate] に設定されます。図 A12 を参照してください。

    図 A12:ダイナミック ポリシーの編集

    cac-anyconnect-vpn-windows-52.gif

  7. [OK] をクリックします。

注:[Terminate] が選択されない場合、デフォルトは [Continue] であるため、ユーザはどのグループに入っていない場合でも許可されます。

付録 B:ASA CLI 設定

ASA 5510
ciscoasa#show running-config
: Saved
:
ASA Version 8.0(2)
!
hostname asa80
domain-name army.mil
enable password 8Ry2YjIyt7RRXU24 encrypted
names
!
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address x.x.x.x 255.255.255.128
!
interface GigabitEthernet0/1
nameif inside
security-level 100
no ip address
!
boot system disk0:/asa802-k8.bin
ftp mode passive
dns server-group DefaultDNS
domain-name army.mil
!
--------------ACL's-------------------------------------------------
access-list out extended permit ip any any
--------------------------------------------------------------------
pager lines 24
logging console debugging
mtu outside 1500
!
---------------VPN Pool---------------------------------------------
ip local pool CAC-USERS 192.168.1.1-192.168.1.254 mask 255.255.255.0
--------------------------------------------------------------------
!
no failover
icmp unreachable rate-limit 1 burst-size 1
asdm image disk0:/asdm-602.bin
no asdm history enable
arp timeout 14400
access-group out in interface outside
route outside 0.0.0.0 0.0.0.0 172.18.120.129 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat
0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect
0:02:00
timeout uauth 0:05:00 absolute
!
--------------------------LDAP Maps & DAP---------------------------
ldap attribute-map memberOf
map-name memberOf Tunneling-Protocols
March 11, 2008 ASA – CAC Authentication for AnyConnect VPN Access
Company Confidential. A printed copy of this document is considered uncontrolled.
49
map-value memberOf CN=_ASAUsers,CN=Users,DC=ggsgseclab,DC=org 20
ldap attribute-map msNPAllowDialin
map-name msNPAllowDialin Tunneling-Protocols
map-value msNPAllowDialin FALSE 1
map-value msNPAllowDialin TRUE 20
dynamic-access-policy-record CAC-USERS
description "Multi-Group Membership Check"
priority 1
dynamic-access-policy-record DfltAccessPolicy
action terminate
--------------------------------------------------------------------
!
--------------------LDAP Server-------------------------------------
aaa-server AD-LDAP protocol ldap
aaa-server AD-LDAP (outside) host 172.18.120.160
ldap-base-dn CN=Users,DC=ggsgseclab,DC=org
ldap-scope onelevel
ldap-naming-attribute userPrincipalName
ldap-login-password *
ldap-login-dn CN=Administrator,CN=Users,DC=ggsgseclab,DC=org
--------------------------------------------------------------------
!
aaa authentication http console LOCAL
http server enable 445
http 0.0.0.0 0.0.0.0 outside
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart
!
----------------CA Trustpoints--------------------------------------
crypto ca trustpoint ASDM_TrustPoint0
revocation-check ocsp
enrollment terminal
keypair DoD-1024
match certificate DefaultCertificateMap override ocsp trustpoint
ASDM_TrustPoint5 10 url http://ocsp.disa.mil
crl configure
crypto ca trustpoint ASDM_TrustPoint1
revocation-check ocsp
enrollment terminal
fqdn asa80
subject-name CN=asa80,OU=PKI,OU=DoD,O=U.S. Government,C=US
keypair DoD-1024
match certificate DefaultCertificateMap override ocsp trustpoint
ASDM_TrustPoint5 10 url http://ocsp.disa.mil
no client-types
crl configure
crypto ca trustpoint ASDM_TrustPoint2
revocation-check ocsp
enrollment terminal
keypair DoD-2048
match certificate DefaultCertificateMap override ocsp trustpoint
ASDM_TrustPoint5 10 url http://ocsp.disa.mil
no client-types
crl configure
crypto ca trustpoint ASDM_TrustPoint3
revocation-check ocsp none
enrollment terminal
crl configure
!
-------------------Certificate Map-------------------------------
crypto ca certificate map DefaultCertificateMap 10
subject-name ne ""
--------------------CA Certificates (Partial Cert is Shown)------------
crypto ca certificate chain ASDM_TrustPoint0
certificate ca 37
3082044c 30820334 a0030201 02020137 300d0609 2a864886 f70d0101
05050030
60310b30 09060355 04061302 55533118 30160603 55040a13 0f552e53
2e20476f
7665726e 6d656e74 310c300a 06035504 0b130344 6f44310c 300a0603
55040b13
03504b49 311b3019 06035504 03131244 6f44204a 49544320 526f6f74
crypto ca certificate chain ASDM_TrustPoint1
certificate 319e
30820411 3082037a a0030201 02020231 9e300d06 092a8648 86f70d01
01050500
305c310b 30090603 55040613 02555331 18301606 0355040a 130f552e
532e2047
6f766572 6e6d656e 74310c30 0a060355 040b1303 446f4431 0c300a06
0355040b
crypto ca certificate chain ASDM_TrustPoint2
certificate ca 37
3082044c 30820334 a0030201 02020137 300d0609 2a864886 f70d0101
05050030
60310b30 09060355 04061302 55533118 30160603 55040a13 0f552e53
2e20476f
7665726e 6d656e74 310c300a 06035504 0b130344 6f44310c 300a0603
55040b13
f766e045 f15ddb43 9549d1e9 a0ea6814 b64bcece 089e1b6e 1be959a5
6fc20a76
crypto ca certificate chain ASDM_TrustPoint3
certificate ca 05
30820370 30820258 a0030201 02020105 300d0609 2a864886 f70d0101
05050030
5b310b30 09060355 04061302 55533118 30160603 55040a13 0f552e53
2e20476f
7665726e 6d656e74 310c300a 06035504 0b130344 6f44310c 300a0603
55040b13
03504b49 31163014 06035504 03130d44 6f442052 6f6f7420 43412032
301e170d
30343132 31333135 30303130 5a170d32 39313230 35313530 3031305a
305b310b
30090603 55040613 02555331 18301606 0355040a 130f552e 532e2047
6f766572
6e6d656e 74310c30 0a060355 040b1303 446f4431 0c300a06 0355040b
1303504b
49311630 14060355 0403130d 446f4420 526f6f74 20434120 32308201
crypto ca certificate chain ASDM_TrustPoint4
certificate ca 04
30820267 308201d0 a0030201 02020104 300d0609 2a864886 f70d0101
05050030
61310b30 09060355 04061302 55533118 30160603 55040a13 0f552e53
2e20476f
7665726e 6d656e74 310c300a 06035504 0b130344 6f44310c 300a0603
55040b13
03504b49 311c301a 06035504 03131344 6f442043 4c415353 20332052
6f6f7420
!
!
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
parameters
message-length maximum 512
policy-map global_policy
class inspection_default
inspect dns preset_dns_map
inspect ftp
inspect h323 h225
inspect h323 ras
inspect netbios
inspect rsh
inspect rtsp
inspect skinny
inspect esmtp
inspect sqlnet
inspect sunrpc
inspect tftp
inspect sip
inspect xdmcp
!
service-policy global_policy global
!
-------------------------SSL/WEBvpn-windows------------------------------------
ssl certificate-authentication interface outside port 443
webvpn
enable outside
svc image disk0:/anyconnect-win-2.0.0343-k9.pkg 1
svc enable
tunnel-group-list enable
--------------------------------------------------------------------
-----------------------VPN Group/Tunnel Policy--------------------
group-policy CAC-USERS internal
ggroup-policy AC-USERS internal
group-policy AC-USERS attributes
vpn-windows-tunnel-protocol svc
address-pools value CAC-USERS
webvpn
svc ask none default svc
tunnel-group AC-USERS type remote-access
tunnel-group AC-USERS general-attributes
authorization-server-group AD-LDAP
default-group-policy AC-USERS
authorization-required
authorization-dn-attributes UPN
tunnel-group AC-USERS webvpn-windows-attributes
authentication certificate
group-alias AC-USERS enable
tunnel-group-map enable rules
no tunnel-group-map enable ou
no tunnel-group-map enable ike-id
no tunnel-group-map enable peer-ip
--------------------------------------------------------------------
prompt hostname context

付録 C:トラブルシューティング

AAA および LDAP のトラブルシューティング

  • debug ldap 255:LDAP データ交換を表示します

  • debug aaa common 10:AAA データ交換を表示します

例 1:正しい属性マッピングによる接続の許可

この例は、付録 A に示すシナリオ 2 を使用した接続の成功における debug ldap および debug aaa common の出力を示します。

図 C1:debug LDAP および debug aaa common の出力:正しいマッピング
AAA API: In aaa_open
AAA session opened: handle = 39
AAA API: In aaa_process_async
aaa_process_async: sending AAA_MSG_PROCESS
AAA task: aaa_process_msg(1a87a64) received message type 0
AAA FSM: In AAA_StartAAATransaction
AAA FSM: In AAA_InitTransaction
Initiating authorization query (Svr Grp: AD-LDAP)
------------------------------------------------
AAA FSM: In AAA_BindServer
AAA_BindServer: Using server: 172.18.120.160
AAA FSM: In AAA_SendMsg
User: 1234567890@mil
Pasw: 1234567890@mil
Resp:
[78] Session Start
[78] New request Session, context 0x26f1c44, reqType = 0
[78] Fiber started
[78] Creating LDAP context with uri=ldap:// 172.18.120.160:389
[78] Binding as administrator
[78] Performing Simple authentication for Administrator to
172.18.120.160
[78] Connect to LDAP server: ldap:// 172.18.120.160, status =
Successful
[78] LDAP Search:
Base DN = [CN=Users,DC=ggsgseclab,DC=org]
Filter = [userPrincipalName=1234567890@mil]
Scope = [SUBTREE]
[78] Retrieved Attributes:
[78] objectClass: value = top
[78] objectClass: value = person
[78] objectClass: value = organizationalPerson
[78] objectClass: value = user
[78] cn: value = Ethan Hunt
[78] sn: value = Hunt
[78] userCertificate: value =
0..50........../........60...*.H........0@1.0.....&...,d....com1.0.....
&...,d...
[78] userCertificate: value =
0..'0........../..t.....50...*.H........0@1.0.....&...,d....com1.0.....
&...,d...
[78] givenName: value = Ethan
[78] distinguishedName: value = CN=Ethan
Hunt,OU=MIL,DC=labrat,DC=com
[78] instanceType: value = 4
[78] whenCreated: value = 20060613151033.0Z
[78] whenChanged: value = 20060622185924.0Z
[78] displayName: value = Ethan Hunt
[78] uSNCreated: value = 14050
[78] memberOf: value = CN=ASAUsers,CN=Users,DC=ggsgseclab,DC=org
[78] mapped to cVPN3000-Tunneling-Protocols: value = 20
[78] uSNChanged: value = 14855
[78] name: value = Ethan Hunt
[78] objectGUID: value = ..9...NJ..GU..z.
[78] userAccountControl: value = 66048
[78] badPwdCount: value = 0
[78] codePage: value = 0
[78] countryCode: value = 0
[78] badPasswordTime: value = 127954717631875000
[78] lastLogoff: value = 0
[78] lastLogon: value = 127954849209218750
[78] pwdLastSet: value = 127946850340781250
[78] primaryGroupID: value = 513
[78] objectSid: value = ................q......mY...
[78] accountExpires: value = 9223372036854775807
[78] logonCount: value = 25
[78] sAMAccountName: value = 1234567890
[78] sAMAccountType: value = 805306368
[78] userPrincipalName: value = 1234567890@mil
[78] objectCategory: value =
[78] mail: value = Ethan.Hunt@labrat.com
callback_aaa_task: status = 1, msg =
AAA FSM: In aaa_backend_callback
aaa_backend_callback: Handle = 39, pAcb = 2ae115c
[78] Fiber exit Tx=147 bytes Rx=4821 bytes, status=1
[78] Session End
AAA task: aaa_process_msg(1a87a64) received message type 1
AAA FSM: In AAA_ProcSvrResp
Back End response:
------------------
Authorization Status: 1 (ACCEPT)
AAA FSM: In AAA_NextFunction
AAA_NextFunction: i_fsm_state = IFSM_AUTHORIZE, auth_status = ACCEPT
AAA_NextFunction: authen svr = <none>, author svr = AD-LDAP, user pol =
, tunn pol = CAC-USERS
AAA_NextFunction: New i_fsm_state = IFSM_TUNN_GRP_POLICY,
AAA FSM: In AAA_InitTransaction
aaai_policy_name_to_server_id(CAC-USERS)
Got server ID 0 for group policy DB
Initiating tunnel group policy lookup (Svr Grp: GROUP_POLICY_DB)
------------------------------------------------
AAA FSM: In AAA_BindServer
AAA_BindServer: Using server: <Internal Server>
AAA FSM: In AAA_SendMsg
User: CAC-USER
Pasw:
Resp:
grp_policy_ioctl(12f1b20, 114698, 1a870b4)
grp_policy_ioctl: Looking up CAC-USERS
callback_aaa_task: status = 1, msg =
AAA FSM: In aaa_backend_callback
aaa_backend_callback: Handle = 39, pAcb = 2ae115c
AAA task: aaa_process_msg(1a87a64) received message type 1
AAA FSM: In AAA_ProcSvrResp
Back End response:
------------------
Tunnel Group Policy Status: 1 (ACCEPT)
AAA FSM: In AAA_NextFunction
AAA_NextFunction: i_fsm_state = IFSM_TUNN_GRP_POLICY, auth_status =
ACCEPT
AAA_NextFunction: authen svr = <none>, author svr = AD-LDAP, user pol =
, tunn pol = CAC-USERS
AAA_NextFunction: New i_fsm_state = IFSM_DONE,
AAA FSM: In AAA_ProcessFinal
Checking time simultaneous login restriction for user 1234567890@mil
AAA FSM: In AAA_Callback
user attributes:
1 Tunnelling-Protocol(4107) 20 20
user policy attributes:
None
tunnel policy attributes:
1 Primary-DNS(4101) 4 IP: 10.0.10.100
2 Secondary-DNS(4102) 4 IP: 0.0.0.0
3 Tunnelling-Protocol(4107) 4 4
4 Default-Domain-Name(4124) 10 "ggsgseclab.org"
5 List of address pools to assign addresses from(4313) 10
"CAC-USERS"
Auth Status = ACCEPT
AAA API: In aaa_close
AAA task: aaa_process_msg(1a87a64) received message type 3
In aaai_close_session (39)
AAA API: In aaa_send_acct_start
AAA API: In aaa_send_acct_stop
CAC-Test#

例 2:設定が誤った Cisco 属性マッピングによる接続の許可

この例は、付録 A に示すシナリオ 2 を使用した接続の許可における debug ldap および debug aaa common の出力を示します。

図 C2:debug LDAP および debug aaa common の出力:誤ったマッピング
AAA API: In aaa_open
AAA session opened: handle = 41
AAA API: In aaa_process_async
aaa_process_async: sending AAA_MSG_PROCESS
AAA task: aaa_process_msg(1a87a64) received message type 0
AAA FSM: In AAA_StartAAATransaction
AAA FSM: In AAA_InitTransaction
Initiating authorization query (Svr Grp: AD-LDAP)
------------------------------------------------
AAA FSM: In AAA_BindServer
AAA_BindServer: Using server: 172.18.120.160
AAA FSM: In AAA_SendMsg
User: 1234567890@mil
Pasw: 1234567890@mil
Resp:
[82] Session Start
[82] New request Session, context 0x26f1c44, reqType = 0
[82] Fiber started
[82] Creating LDAP context with uri=ldap://172.18.120.160:389
[82] Binding as administrator
[82] Performing Simple authentication for Administrator to
172.18.120.160
[82] Connect to LDAP server: ldap:// 172.18.120.160:389, status =
Successful
[82] LDAP Search:
Base DN = [CN=Users,DC=ggsgseclab,DC=org]
Filter = [userPrincipalName=1234567890@mil]
Scope = [SUBTREE]
[82] Retrieved Attributes:
[82] objectClass: value = top
[82] objectClass: value = person
[82] objectClass: value = organizationalPerson
[82] objectClass: value = user
[82] cn: value = Ethan Hunt
[82] sn: value = Hunt
[82] userCertificate: value =
0..50........../........60...*.H........0@1.0.....&...,d....com1.0.....
&...,d...
[82] userCertificate: value =
0..'0........../..t.....50...*.H........0@1.0.....&...,d....com1.0.....
&...,d...
[82] givenName: value = Ethan
[82] distinguishedName: value = CN=Ethan
Hunt,OU=MIL,DC=labrat,DC=com
[82] instanceType: value = 4
[82] whenCreated: value = 20060613151033.0Z
[82] whenChanged: value = 20060622185924.0Z
[82] displayName: value = Ethan Hunt
[82] uSNCreated: value = 14050
[82] memberOf: value = CN=ASAUsers,CN=Users,DC=ggsgseclab,DC=org
[82] mapped to cVPN3000-Tunneling-Protocols: value =
CN=ASAUsers,CN=Users,DC=ggsgseclab,DC=org
[82] uSNChanged: value = 14855
[82] name: value = Ethan Hunt
[82] objectGUID: value = ..9...NJ..GU..z.
[82] userAccountControl: value = 66048
[82] badPwdCount: value = 0
[82] codePage: value = 0
[82] countryCode: value = 0
[82] badPasswordTime: value = 127954717631875000
[82] lastLogoff: value = 0
[82] lastLogon: value = 127954849209218750
[82] pwdLastSet: value = 127946850340781250
[82] primaryGroupID: value = 513
[82] objectSid: value = ................q......mY...
[82] accountExpires: value = 9223372036854775807
[82] logonCount: value = 25
[82] sAMAccountName: value = 1234567890
[82] sAMAccountType: value = 805306368
[82] userPrincipalName: value = 1234567890@mil
[82] objectCategory: value =
CN=Person,CN=Schema,CN=Configuration,DC=ggsgseclab,DC=org
[82] mail: value = Ethan.Hunt@labrat.com
callback_aaa_task: status = 1, msg =
AAA FSM: In aaa_backend_callback
aaa_backend_callback: Handle = 41, pAcb = 2ae115c
[82] Fiber exit Tx=147 bytes Rx=4821 bytes, status=1
[82] Session End
AAA task: aaa_process_msg(1a87a64) received message type 1
AAA FSM: In AAA_ProcSvrResp
Back End response:
------------------
Authorization Status: 1 (ACCEPT)
AAA FSM: In AAA_NextFunction
AAA_NextFunction: i_fsm_state = IFSM_AUTHORIZE, auth_status = ACCEPT
AAA_NextFunction: authen svr = <none>, author svr = AD-LDAP, user pol =
, tunn pol = CAC-USERS
AAA_NextFunction: New i_fsm_state = IFSM_TUNN_GRP_POLICY,
AAA FSM: In AAA_InitTransaction
aaai_policy_name_to_server_id(USAFE)
Got server ID 0 for group policy DB
Initiating tunnel group policy lookup (Svr Grp: GROUP_POLICY_DB)
------------------------------------------------
AAA FSM: In AAA_BindServer
AAA_BindServer: Using server: <Internal Server>
AAA FSM: In AAA_SendMsg
User: CAC-USERS
Pasw:
Resp:
grp_policy_ioctl(12f1b20, 114698, 1a870b4)
grp_policy_ioctl: Looking up CAC-USERS
callback_aaa_task: status = 1, msg =
AAA FSM: In aaa_backend_callback
aaa_backend_callback: Handle = 41, pAcb = 2ae115c
AAA task: aaa_process_msg(1a87a64) received message type 1
AAA FSM: In AAA_ProcSvrResp
Back End response:
------------------
Tunnel Group Policy Status: 1 (ACCEPT)
AAA FSM: In AAA_NextFunction
AAA_NextFunction: i_fsm_state = IFSM_TUNN_GRP_POLICY, auth_status =
ACCEPT
AAA_NextFunction: authen svr = <none>, author svr = AD-LDAP, user pol =
, tunn pol = CAC-USERS
AAA_NextFunction: New i_fsm_state = IFSM_DONE,
AAA FSM: In AAA_ProcessFinal
Checking time simultaneous login restriction for user 1234567890@mil
AAA FSM: In AAA_Callback
user attributes:
1 Tunnelling-Protocol(4107) 20 0
user policy attributes:
None
tunnel policy attributes:
1 Primary-DNS(4101) 4 IP: 10.0.10.100
2 Secondary-DNS(4102) 4 IP: 0.0.0.0
3 Tunnelling-Protocol(4107) 4 4
4 Default-Domain-Name(4124) 10 "ggsgseclab.org"
5 List of address pools to assign addresses from(4313) 10
"CAC-USERS"
Auth Status = ACCEPT
AAA API: In aaa_close
AAA task: aaa_process_msg(1a87a64) received message type 3
In aaai_close_session (41)
AAA API: In aaa_send_acct_start
AAA API: In aaa_send_acct_stop

DAP のトラブルシューティング

  • debug dap errors:DAP エラーを表示します

  • debug dap trace:DAP 機能のトレースを表示します

例 1:DAP による接続の許可

この例は、付録 A に示すシナリオ 3 を使用した正常な接続における debug dap errors および debug dap trace の出力を示します。複数の memberOf 属性があることに注意してください。ユーザは _ASAUsers と VPNUsers の両方に属することも、いずれかのグループに属することもでき、ASA 構成によって決まります。

図 C3:DAP のデバッグ
#debug dap errors
debug dap errors enabled at level 1
#debug dap trace
debug dap trace enabled at level 1
#
The DAP policy contains the following attributes for user:
1241879298@mil
-----------------------------------------------------------------------
---
1: action = continue
DAP_TRACE: DAP_open: C8EEFA10
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.1 = top
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.2 = person
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.3 =
organizationalPerson
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.4 = user
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.cn = 1241879298
DAP_TRACE: Username: 1241879298@mil,
aaa.ldap.physicalDeliveryOfficeName = NETADMIN
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.givenName = 1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.distinguishedName =
CN=1241879298,CN=Users,DC=ggsgseclab,DC=org
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.instanceType = 4
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.whenCreated =
20070626163734.0Z
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.whenChanged =
20070718151143.0Z
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.displayName = 1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.uSNCreated = 33691
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.memberOf.1 = VPNUsers
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.memberOf.2 = _ASAUsers
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.uSNChanged = 53274
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.department = NETADMIN
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.name = 1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectGUID =
....+..F.."5....
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.userAccountControl =
328192
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.badPwdCount = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.codePage = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.countryCode = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.badPasswordTime = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.lastLogoff = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.lastLogon = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.pwdLastSet =
128273494546718750
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.primaryGroupID = 513
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.userParameters = m:
d.
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectSid = ..
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.accountExpires =
9223372036854775807
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.logonCount = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.sAMAccountName =
1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.sAMAccountType =
805306368
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.userPrincipalName =
1241879298@mil
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectCategory =
CN=Person,CN=Schema,CN=Configuration,DC=ggsgseclab,DC=org
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.msNPAllowDialin = TRUE
DAP_TRACE: Username: 1241879298@mil, aaa.cisco.username =
1241879298@mil
DAP_TRACE: Username: 1241879298@mil, aaa.cisco.tunnelgroup = CAC-USERS
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["1"] = "top";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["2"] =
"person";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["3"] =
"organizationalPerson";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["4"] =
"user";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["cn"] = "1241879298";
DAP_TRACE:
dap_add_to_lua_tree:aaa["ldap"]["physicalDeliveryOfficeName"] =
"NETADMIN";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["givenName"] = "1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["distinguishedName"] =
"CN=1241879298,CN=Users,DC=ggsgseclab,DC=org";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["instanceType"] = "4";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["whenCreated"] =
"20070626163734.0Z";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["whenChanged"] =
"20070718151143.0Z";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["displayName"] =
"1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["uSNCreated"] = "33691";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["memberOf"]["1"] =
"VPNUsers";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["memberOf"]["2"] =
"_ASAUsers";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["uSNChanged"] = "53274";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["department"] = "NETADMIN";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["name"] = "1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectGUID"] contains
binary data
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["userAccountControl"] =
"328192";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["badPwdCount"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["codePage"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["countryCode"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["badPasswordTime"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["lastLogoff"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["lastLogon"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["pwdLastSet"] =
"128273494546718750";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["primaryGroupID"] = "513";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["userParameters"] contains
binary data
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectSid"] contains binary
data
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["accountExpires"] =
"9223372036854775807";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["logonCount"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["sAMAccountName"] =
"1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["sAMAccountType"] =
"805306368";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["userPrincipalName"] =
"1241879298@mil";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectCategory"] =
"CN=Person,CN=Schema,CN=Configuration,DC=ggsgseclab,DC=org";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["msNPAllowDialin"] = "TRUE";
DAP_TRACE: dap_add_to_lua_tree:aaa["cisco"]["username"] =
"1241879298@mil";
DAP_TRACE: dap_add_to_lua_tree:aaa["cisco"]["tunnelgroup"] = "CACUSERS";
DAP_TRACE: dap_add_to_lua_tree:endpoint["application"]["clienttype"] =
"IPSec";
DAP_TRACE: Username: 1241879298@mil, Selected DAPs: CAC-USERS
DAP_TRACE: dap_request: memory usage = 33%
DAP_TRACE: dap_process_selected_daps: selected 1 records
DAP_TRACE: Username: 1241879298@mil, dap_aggregate_attr: rec_count = 1
DAP_TRACE: Username: 1241879298@mil, DAP_close: C8EEFA10
d.

例 2:DAP による接続の拒否

この例は、付録 A に示すシナリオ 3 を使用した接続の失敗における debug dap errors および debug dap trace の出力を示します。

図 C4:DAP のデバッグ
#debug dap errors
debug dap errors enabled at level 1
#debug dap trace
debug dap trace enabled at level 1
#
The DAP policy contains the following attributes for user:
1241879298@mil
-----------------------------------------------------------------------
---
1: action = terminate
DAP_TRACE: DAP_open: C91154E8
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.1 = top
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.2 = person
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.3 =
organizationalPerson
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectClass.4 = user
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.cn = 1241879298
DAP_TRACE: Username: 1241879298@mil,
aaa.ldap.physicalDeliveryOfficeName = NETADMIN
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.givenName = 1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.distinguishedName =
CN=1241879298,CN=Users,DC=ggsgseclab,DC=org
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.instanceType = 4
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.whenCreated =
20070626163734.0Z
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.whenChanged =
20070718151143.0Z
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.displayName = 1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.uSNCreated = 33691
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.memberOf = DnsAdmins
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.uSNChanged = 53274
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.department = NETADMIN
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.name = 1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectGUID =
....+..F.."5....
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.userAccountControl =
328192
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.badPwdCount = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.codePage = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.countryCode = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.badPasswordTime = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.lastLogoff = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.lastLogon = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.pwdLastSet =
128273494546718750
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.primaryGroupID = 513
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.userParameters = m:
d.
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectSid = ..
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.accountExpires =
9223372036854775807
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.logonCount = 0
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.sAMAccountName =
1241879298
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.sAMAccountType =
805306368
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.userPrincipalName =
1241879298@mil
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.objectCategory =
CN=Person,CN=Schema,CN=Configuration,DC=ggsgseclab,DC=org
DAP_TRACE: Username: 1241879298@mil, aaa.ldap.msNPAllowDialin = TRUE
DAP_TRACE: Username: 1241879298@mil, aaa.cisco.username =
1241879298@mil
DAP_TRACE: Username: 1241879298@mil, aaa.cisco.tunnelgroup = CAC-USERS
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["1"] = "top";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["2"] =
"person";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["3"] =
"organizationalPerson";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectClass"]["4"] =
"user";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["cn"] = "1241879298";
DAP_TRACE:
dap_add_to_lua_tree:aaa["ldap"]["physicalDeliveryOfficeName"] =
"NETADMIN";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["givenName"] = "1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["distinguishedName"] =
"CN=1241879298,CN=Users,DC=ggsgseclab,DC=org";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["instanceType"] = "4";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["whenCreated"] =
"20070626163734.0Z";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["whenChanged"] =
"20070718151143.0Z";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["displayName"] =
"1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["uSNCreated"] = "33691";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["memberOf"] = "DnsAdmins";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["uSNChanged"] = "53274";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["department"] = "NETADMIN";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["name"] = "1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectGUID"] contains
binary data
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["userAccountControl"] =
"328192";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["badPwdCount"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["codePage"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["countryCode"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["badPasswordTime"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["lastLogoff"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["lastLogon"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["pwdLastSet"] =
"128273494546718750";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["primaryGroupID"] = "513";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["userParameters"] contains
binary data
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectSid"] contains binary
data
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["accountExpires"] =
"9223372036854775807";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["logonCount"] = "0";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["sAMAccountName"] =
"1241879298";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["sAMAccountType"] =
"805306368";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["userPrincipalName"] =
"1241879298@mil";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["objectCategory"] =
"CN=Person,CN=Schema,CN=Configuration,DC=ggsgseclab,DC=org";
DAP_TRACE: dap_add_to_lua_tree:aaa["ldap"]["msNPAllowDialin"] = "TRUE";
DAP_TRACE: dap_add_to_lua_tree:aaa["cisco"]["username"] =
"1241879298@mil";
DAP_TRACE: Username: 1241879298@mil, Selected DAPs:
DAP_TRACE: dap_request: memory usage = 33%
DAP_TRACE: dap_process_selected_daps: selected 0 records
DAP_TRACE: Username: 1241879298@mil, dap_aggregate_attr: rec_count = 1

認証局および OCSP のトラブルシューティング

  • debug crypto ca 3

  • コンフィギュレーション モードで logging class ca console(または buffer)debugging

これらの例では、OCSP レスポンダによる証明書検証の成功と、証明書グループ照合ポリシーの失敗を示します。

図 C3 は、検証された証明書と、動作中の証明書グループ照合ポリシーのデバッグ出力を示します。

図 C4 は、設定を誤った証明書グループ照合ポリシーのデバッグ出力を示します。

図 C5 は、無効になった証明書を持つユーザのデバッグ出力を示します。

図 C5:OCSP デバッグ:成功した証明書検証
CRYPTO_PKI: Found a suitable authenticated trustpoint
ASDM_TrustPoint11.
CRYPTO_PKI: Allocated OCSP data handle 0xca2d27b8
CRYPTO_PKI: Certificate validation: Successful, status: 0. Attempting
to retrieve revocation status if necessary
CRYPTO_PKI: status = 0: poll revocation status
CRYPTO_PKI: Attempting to find OCSP override for peer cert: serial
number: 0F192B, subject name:
cn=MCGINTY.JIMMY.1160139435,ou=USN,ou=PKI,ou=DoD,o=U.S.
Government,c=US, issuer_name: cn=DOD JITC EMAIL CA-
15,ou=PKI,ou=DoD,o=U.S. Government,c=US.
CRYPTO_PKI: Processing map rules for SSL.
CRYPTO_PKI: Processing map SSL sequence 20...
CRYPTO_PKI: Match of subject-name field to map PASSED. Peer cert field:
= cn=MCGINTY.JIMMY.1160139435,ou=USN,ou=PKI,ou=DoD,o=U.S.
Government,c=US, map rule: subject-name ne "".
CRYPTO_PKI: Peer cert has been authorized by map: SSL sequence: 20.
CRYPTO_PKI: Found OCSP override match. Override URL:
http://198.154.68.90, Override trustpoint: ASDM_TrustPoint12
CRYPTO_PKI: crypto_pki_get_cert_record_by_subject()
CRYPTO_PKI: Destroying OCSP data handle 0xca2d27b8
Crypto CA thread sleeps!
CRYPTO_PKI: Attempting to find tunnel group for cert with serial
number: 0F192B, subject name:
cn=MCGINTY.JIMMY.1160139435,ou=USN,ou=PKI,ou=DoD,o=U.S.
Government,c=US, issuer_name: cn=DOD JITC EMAIL CA-
15,ou=PKI,ou=DoD,o=U.S. Government,c=US.
CRYPTO_PKI: Processing map rules for DefaultCertificateMap.
CRYPTO_PKI: Processing map DefaultCertificateMap sequence 10...
CRYPTO_PKI: Match of subject-name field to map PASSED. Peer cert field:
= cn=MCGINTY.JIMMY.1160139435,ou=USN,ou=PKI,ou=DoD,o=U.S.
Government,c=US, map rule: subject-name ne "".
CRYPTO_PKI: Peer cert has been authorized by map: DefaultCertificateMap
sequence: 10.
CRYPTO_PKI: Ignoring match on map DefaultCertificateMap, index 10 for
WebVPN group map processing. No tunnel group is configured.
CRYPTO_PKI: Peer cert could not be authorized with map:
DefaultCertificateMap.
CRYPTO_PKI: Processing map rules for SSL.
CRYPTO_PKI: Processing map SSL sequence 20...
CRYPTO_PKI: Match of subject-name field to map PASSED. Peer cert field:
= cn=MCGINTY.JIMMY.1160139435,ou=USN,ou=PKI,ou=DoD,o=U.S.
Government,c=US, map rule: subject-name ne "".
CRYPTO_PKI: Peer cert has been authorized by map: SSL sequence: 20.
CRYPTO_PKI: Ignoring match on map SSL, index 20 for WebVPN group map

図 C5:失敗した証明書グループ照合ポリシーの出力

図 C5:無効になった証明書の出力
n %PI=X-3-7E17t02h7a Certinf icaHtue cnhta,in faioled uvalidation=.
CMertifiIcLa,ted ccha=inl ais eibtrhaer tin,valdid cor =noct
oamuthori,zed.
map rule: subject-name ne "".
CRYPTO_PKI: Peer cert has been authorized by map: DefaultCertificateMap
sequence: 10.
Tunnel Group Match on map DefaultCertificateMap sequence # 10.
Group name is CAC-USERS
CRYPTO_PKI: Checking to see if an identical cert is
already in the database...
CRYPTO_PKI: looking for cert in handle=2467668, digest=
CRYPTO_PKI: Cert record not found, returning E_NOT_FOUND
CRYPTO_PKI: Cert not found in database.
CRYPTO_PKI: Looking for suitable trustpoints...
CRYPTO_PKI: Found a suitable authenticated trustpoint trustpoint0.
CRYPTO_PKI: Certificate validation: Successful, status: 0. Attempting
to retrieve revocation status if necessary
CRYPTO_PKI: Attempting to find OCSP override for peer cert: serial
number: 2FB5FC74000000000035, subject name: cn=Ethan
Hunt,ou=MIL,dc=ggsgseclab,dc=org, issuer_name:
cn=ggsgseclab,dc=ggsgseclab,dc=org.
CRYPTO_PKI: Processing map rules for DefaultCertificateMap.
CRYPTO_PKI: Processing map DefaultCertificateMap sequence 10...
CRYPTO_PKI: Match of subject-name field to map PASSED. Peer cert field:
= cn=Ethan Hunt,ou=MIL,dc=ggsgseclab,dc=org, map rule: subject-name
ne "".
CRYPTO_PKI: Peer cert has been authorized by map: DefaultCertificateMap
sequence: 10.
CRYPTO_PKI: Found OCSP override match. Override URL:
http://ocsp.disa.mil, Override trustpoint: OCSP
CRYPTO_PKI: crypto_pki_get_cert_record_by_subject()
CRYPTO_PKI: Found a subject match
ERROR: Certificate validation failed, Certificate is revoked, serial
number: 2FB5FC74000000000035, subject name: cn=Ethan
Hunt,ou=MIL,dc=ggsgseclab,dc=org
CRYPTO_PKI: Certificate not validated

付録 D:MS 内の LDAP オブジェクトの確認

Microsoft Server 2003 の CD には、LDAP 構造と、LDAP オブジェクトおよび属性を表示するためにインストールできる追加のツールがあります。これらのツールをインストールするには、CD の Support ディレクトリに移動し、Tools ディレクトリを選択します。SUPTOOLS.MSI をインストールします。

LDAP Viewer

  • インストールした後、[Start] > [Run] を選択します。

  • ldp と入力し、[Ok] をクリックします。これで LDAP Viewer が始動します。

  • [Connection] > [Connect] を選択します。

  • サーバ名を入力して [Ok] をクリックします。

  • [Connection] > [Bind] を選択します。

  • ユーザ名とパスワードを入力します。

    注:管理者権限が必要です。

  • [OK] をクリックします。

  • LDAP オブジェクトを表示します。図 D1 を参照してください。

    図 D1:LDAP Viewer

    cac-anyconnect-vpn-windows-53.gif

Active Directory サービス インターフェイス エディタ

  • Active Directory サーバで、[Start] > [Run] を選択します。

  • adsiedit.msc と入力します。これでエディタが始動します。

  • オブジェクトを右クリックし、[Properties] をクリックします。

このツールは特定のオブジェクトのすべての属性を表示します。図 D2 を参照してください。

図 D2:ADSI の編集

cac-anyconnect-vpn-windows-54.gif

付録 E

AnyConnect プロファイルを作成してワークステーションに追加することができます。このプロファイルは、ASA ホストなどのさまざまな値や、識別名あるいは発行者などの証明書照合パラメータを参照できます。このプロファイルは .xml ファイルとして保存され、Notepad で編集できます。このファイルは各クライアントに手動で追加したり、グループ ポリシーを通じて ASA からプッシュしたりすることができます。ファイルは次の場所に保存されます。

C:\Documents and Settings\All Users\Application Data\Cisco\Cisco
AnyConnect VPN Client\Profile

次の手順を実行します。

  1. AnyConnectProfile.tmpl を選択し、ファイルを Notepad で開きます。

  2. ファイルに対して発行者やホスト IP などの変更を行います。図 F1 の例を参照してください。

  3. 完了したら、ファイルを .xml として保存します。

プロファイル管理については、Cisco AnyConnect のドキュメントを参照してください。つまり、次のようになります。

  • プロファイルには、ユーザ企業に固有の名前を付ける必要があります。次に例を表示します。CiscoProfile.xml

  • 会社内の個々のグループについて異なっていたとしても、プロファイル名は同じである必要があります。

このファイルは Secure Gateway 管理者によって保守され、クライアント ソフトウェアと一緒に配布されるためのものです。この XML に基づくプロファイルは、クライアントにいつでも配布できます。サポートされる配布メカニズムは、ソフトウェア配布のバンドル ファイルとしての配布か、自動ダウンロード メカニズムの一部としての配布です。自動ダウンロード メカニズムは、一部の Cisco Secure Gateway 製品でのみ使用できます。

注:管理者は作成した XML プロファイルを、オンライン検証ツールまたは ASDM のプロファイル インポート機能を使用して検証することを強く推奨します。検証は、このディレクトリにある AnyConnectProfile.xsd を使用して実行できます。AnyConnectProfile は AnyConnect Client Profile を表すルート要素です。

これは、Cisco AnyConnect VPN クライアント プロファイル XML ファイルの例です。

図 F1
xml version="1.0" encoding="UTF-8" 
- - <AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/encoding/
AnyConnectProfile.xsd">

!--- ClientInitialization セクションは、クライアントの
!---  グローバル設定を表します。場合によっては(BackupServerList など)ホスト固有の 
!--- オーバーライドも可能です。
!--

-->
- <ClientInitialization>

!--- Start Before Logon 機能は、ログイン シーケンスの一部として 
!--- VPN をアクティブ化するために使用できます。
!--- UserControllable:ユーザがこの属性をユーザ独自の使用に合わせて制御することを、 
!--- このプロファイルの管理者が許可します。この属性に関連付けられる 
!--- ユーザ設定は、別の場所に保管されます。


-->
<UseStartBeforeLogon UserControllable="false">false</UseStartBeforeLogon>

!--- この制御によって、管理者は、 
!--- ユーザが初めて接続を試行する前に 1 回限りのメッセージを表示できます。1 つの
!--- 例として、スマート カードをリーダーに挿入することをユーザに通知するために 
!--- このメッセージを使用できます。
!--- この制御で使用されるメッセージはローカライズが可能で、
!--- AnyConnect メッセージ カタログから検索できます。
!--- (デフォルト:「This is a pre-connect reminder message.」)




<ShowPreConnectMessage>false</ShowPreConnectMessage>

!-- このセクションでは、クライアント証明書の選択を絞り込むために 
!--- 使用できるさまざまな属性を定義できます。


-->
- <CertificateMatch>

!--- 証明書の識別名の照合では、 
!--- 受け入れ可能なクライアント証明書を選択する際の完全一致基準を
!--- 指定できます。


- <DistinguishedName>
- <DistinguishedNameDefinition Operator="Equal" Wildcard="Disabled">
<Name>ISSUER-CN</Name>
<Pattern>DoD-Issuer-ABC</Pattern>
</DistinguishedNameDefinition>
</DistinguishedName>
</CertificateMatch>
</ClientInitialization>
- 
!-- このセクションには、ユーザが選択できるホストのリストが 
!---  含まれています。

- <ServerList>



!--- これは、特定のホストへの接続を試行するために必要な 
!--- データです。

-->
- <HostEntry>
<HostName>host-02</HostName>
<HostAddress>host-02.dod.gov</HostAddress>
</HostEntry>
- <HostEntry>
<HostName>host-01</HostName>
<HostAddress>192.168.1.1</HostAddress>
</HostEntry>
</ServerList>
</AnyConnectProfile>

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

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


関連情報


Document ID: 107251