はじめに
このドキュメントでは、Firepower Management Center(FMC)によって管理されるFirepower Threat Defense(FTD)で、証明書認証を使用してリモートアクセスVPN(RVPN)を設定するプロセスについて説明します。
著者:Cisco TACエンジニア、Dolly JainおよびRishabh Aggarwal
前提条件
要件
次の項目に関する知識があることが推奨されます。
・証明書の手動登録とSSLの基本
•FMC
・リモートアクセスVPNの基本認証に関する知識
・ Entrust、Geotrust、GoDaddy、Thawte、VeriSignなどのサードパーティ認証局(CA)。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。
・ Secure Firepower Threat Defenseバージョン7.4.1
•Firepower Management Center(FMC)バージョン 7.4.1
・ Secure Clientバージョン5.0.05040
・ CAサーバとしてのHydrant/IdentTrust
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
設定
ネットワーク図
ネットワーク図
コンフィギュレーション
FMCで証明書認証を使用するリモートアクセスVPNを設定するには、次の手順を実行する必要があります。
・サーバ認証に使用する証明書を作成します。
・ FMCを介してFTDに信頼できるCA証明書または内部CA証明書を追加し、ユーザ証明書を認証します。
・ VPNユーザ用のアドレスプールを作成します。
・異なるプラットフォームのセキュアクライアントイメージをアップロードします。
・ XMLプロファイルを作成してアップロードします。
1.サーバ認証に使用する証明書のインポート
注:FMCでは、CSRを生成する前にCA証明書が必要です。CSRが外部ソース(opensslまたはサードパーティ)から生成される場合、手動の方法は失敗し、PKCS12証明書フォーマットを使用する必要があります。
ステップ 1:に移動しDevices > Certificatesて、をクリックAdd Cert Enrollmentします。Deviceを選択し、Cert Enrollmentの下のプラス記号(+)をクリックします。
証明書の登録の追加
ステップ 2: の下でCA Information、Enrollment Type asを選択しManual、CSRの署名に使用する認証局(CA)証明書を貼り付けます。
CA情報の追加
ステップ 3:[検証方法]で、IPsec Client, SSL Clientとを選択Skip Check for CA flag in basic constraints of the CA Certificateします。
ステップ 4:[Certificate Parameters]で、サブジェクト名の詳細を入力します。
証明書パラメータの追加
ステップ 5:[キーの種類]で、キーの名前とサイズを持つRSAをKey選択します。 をクリックしSaveます。
注:RSAキータイプの場合、最小キーサイズは2048ビットです。
RSAキーの追加
手順 6:次にCert Enrollment、作成したばかりのドロップダウンからトラストポイントを選択し、をクリックしAddます。
新しい証明書の追加
手順 7:IDをクリックしてから、YesさらにプロンプトをクリックしてCSRを生成します。
CSR の生成
ステップ 8:CSRをコピーし、認証局によって署名されるようにします。CAからID証明書が発行されたら、をクリックしてインポートBrowse Identity CertificateしてImportください。
ID証明書のインポート
2.信頼できる/内部CA証明書の追加
注:ステップ(a)で使用した信頼できる/内部の認証局(CA)がユーザに証明書を発行する場合、ステップ(b)はスキップします。同じCA証明書を再度追加する必要はなく、同様に回避する必要があります。同じCA証明書を再度追加すると、トラストポイントは「validation-usage none」で設定され、RAVPNの証明書認証に影響を与える可能性があります。
ステップ 1:に移動しDevices > Certificates、をクリックしAdd Cert Enrollmentます。
Deviceを選択し、Cert Enrollmentの下のプラス記号(+)をクリックします。
ここでは、HydrantIDサーバCA 01を使用してID/ユーザ証明書を発行します。
HydrantIDサーバCA 01
ステップ 2:トラストポイント名を入力しManual、の登録タイプとしてを選択CA informationします。
ステップ 3:信頼できるCA Onlyまたは内部のCA証明書をpem形式でチェックアンドペーストします。
ステップ 4:チェックSkip Check for CA flag in basic constraints of the CA CertificateしてクリックSaveします。
トラストポイントの追加
ステップ 5: 次にCert Enrollment、作成したばかりのドロップダウンからトラストポイントを選択し、をクリックしAddます。
内部CAの追加
手順 6:前の手順で追加した証明書は、次のように表示されます。
追加された証明書
3. VPNユーザのアドレスプールの設定
ステップ 1:に移動しますObjects > Object Management > Address Pools > IPv4 Pools。
ステップ 2:名前とIPv4アドレス範囲をマスクで入力します。
IPv4プールの追加
4.セキュアなクライアントイメージのアップロード
ステップ 1:シスコソフトウェアサイトから、OSに従ってwebdeployセキュアクライアントイメージをダウンロードします。
ステップ 2:に移動しますObjects > Object Management > VPN > Secure Client File > Add Secure Client File。
ステップ 3:名前を入力し、ディスクからSecure Clientファイルを選択します。
ステップ 4:ファイルタイプとしてを選択しSecure Client Image、をクリックSaveします。
セキュアクライアントイメージの追加
5. XMLプロファイルの作成およびアップロード
ステップ 1:Secure ClientをCiscoソフトウェアサイトProfile Editorからダウンロードしてインストールします。
ステップ 2:新しいプロファイルを作成し、「Client Certificate Selection」ドロップダウンからAll選択します。主に、Secure Clientが証明書の保存と読み取りに使用できる証明書ストアを制御します。
その他に次の2つのオプションがあります。
- マシン:Secure Clientは、Windowsのローカルマシンの証明書ストアでの証明書ルックアップに制限されています。
- User:Secure Clientは、ローカルWindowsユーザ証明書ストアでの証明書ルックアップに制限されています。
Certificate Store OverrideをTrueに設定します。
これにより、管理者はSecure Clientに対して、クライアント証明書認証のためにWindowsマシン(ローカルシステム)証明書ストア内の証明書を使用するように指示できます。証明書ストアの上書きはSSLにのみ適用され、UIプロセスによってデフォルトで接続が開始されます。IPSec/IKEv2を使用する場合、セキュアクライアントプロファイルのこの機能は適用されません。
プリファレンスの追加(パート1)
ステップ 3: ユーザが認証証明書を選択するように求めるプロンプトを表示しないようにするため、をオフにしますDisable Automatic Certificate Selection。
プリファレンスの追加(パート2)
ステップ 4: Server Listの下にgroup-aliasとgroup-urlを指定して、Secure Client VPNでプロファイルを設定するためのServer List Entryを作成し、XMLプロファイルを保存します。
サーバリストの追加
ステップ 5:最後に、XMLプロファイルを使用する準備ができました。
XMLプロファイル
さまざまなオペレーティングシステムのXMLプロファイルの場所:
- Windows:C:\ProgramData\Cisco\Cisco Secure Client\VPN\Profile
- MacOS:/opt/cisco/anyconnect/profile
- Linux:/opt/cisco/anyconnect/profile
手順 6: に移動しますObjects > Object Management > VPN > Secure Client File > Add Secure Client Profile。
ファイルの名前を入力し、をクリックしてBrowseXMLプロファイルを選択します。をクリックします。Save
セキュアクライアントVPNプロファイルの追加
リモートアクセスVPNの設定
ステップ 1: 要件に従ってACLを作成し、内部リソースへのアクセスを許可します。
に移動しObjects > Object Management > Access List > Standard、をクリックしAdd Standard Access Listます。
標準ACLの追加
注:このACLは、内部リソースに安全なルートを追加するために安全なクライアントによって使用されます。
ステップ 2:に移動しDevices > VPN > Remote Access、をクリックしAddます。
ステップ 3:プロファイルの名前を入力し、FTDデバイスを選択してNextをクリックします。
プロファイル名の追加
ステップ 4:を入力Connection Profile Nameし、Authentication, Authorization and Accounting (AAA)の下のAuthentication MethodとしてClient Certificate Only選択します。
認証方法の選択
ステップ 5:Client Address AssignmentUse IP Address Pools の下のをクリックし、以前に作成したIPv4アドレスプールを選択します。
クライアントアドレスの割り当ての選択
手順 6:グループポリシーを編集します。
グループポリシーの編集
手順 7:に移動しGeneral > Split Tunneling、を選択しTunnel networks specified below、Split Tunnel Network List Typeの下でStandard Access Listを選択します。
先ほど作成したACLを選択します。
スプリットトンネリングの追加
ステップ 8:に移動しSecure Client > Profile、を選択Client Profile し、をクリックしSaveます。
セキュアクライアントプロファイルの追加
ステップ 9:をクリックしNext、を選択してSecure Client ImageをクリックしNextます。
セキュアクライアントイメージの追加
ステップ 10:Network Interface for VPN Accessを選択し、Device Certificatesを選択してsysopt permit-vpnにチェックマークを付け、をクリックNextします。
VPNトラフィックのアクセスコントロールの追加
ステップ 11最後に、すべての設定を確認して、をクリックFinishします。
リモートアクセスVPNポリシーの設定
ステップ 12リモートアクセスVPNの初期設定が完了したら、作成した接続プロファイルを編集し、に進みAliasesます。
ステップ 13プラスアイコン(+)をクリックして設定group-alias。
グループエイリアスの編集
ステップ 14:プラスアイコン(+)をクリックして設定group-url。クライアントプロファイルで以前に設定したのと同じグループURLを使用します。
グループURLの編集
ステップ 15:Access Interfacesに移動します。SSLの設定でInterface Truspoint、およびSSL Global Identity Certificateを選択します。
アクセスインターフェイスの編集
ステップ 16:をクリックしてSave、これらの変更を展開します。
確認
1.セキュアクライアントPCには、ユーザPCに有効な日付、サブジェクト、およびEKUが設定された証明書がインストールされている必要があります。この証明書は、前述のように、FTDにインストールされている証明書を持つCAによって発行される必要があります。ここでは、IDまたはユーザ証明書が「HydrantID Server CA 01」によって発行されます。
証明書の概要
注:クライアント証明書には、「Client Authentication」拡張キー使用法(EKU)が含まれている必要があります。
2.セキュアクライアントは接続を確立する必要があります。
セキュアクライアント接続の成功
3.show vpn-sessiondb anyconnectを実行して、使用されているトンネルグループのアクティブユーザの接続の詳細を確認します。
firepower# show vpn-sessiondb anyconnect Session Type: AnyConnect Username : dolljain.cisco.com Index : 8 Assigned IP : 10.20.20.1 Public IP : 72.163.X.X Protocol : AnyConnect-Parent SSL-Tunnel License : AnyConnect Premium Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)AES-GCM-128 Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA256 Bytes Tx : 14402 Bytes Rx : 9652 Group Policy : DfltGrpPolicy Tunnel Group : RAVPN-CertAuth Login Time : 08:32:22 UTC Mon Mar 18 2024 Duration : 0h:03m:59s Inactivity : 0h:00m:00s VLAN Mapping : N/A VLAN : none Audt Sess ID : 0ac5de050000800065f7fc16 Security Grp : none Tunnel Zone : 0
トラブルシュート
1.デバッグは、FTDの診断CLIから実行できます。
debug crypto ca 14
debug webvpn anyconnect 255
debug crypto ike-common 255
2.一般的な問題については、このガイドを参照してください。