المقدمة
يصف هذا المستند إجراء إستخدام مصادقة الشهادات المتعددة لعميل آمن في "الدفاع عن تهديد FirePOWER (FTD)" الذي تتم إدارته بواسطة FMC.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:
- الفهم الأساسي لشبكة VPN للوصول عن بعد (RAVPN)
- تجربة مركز إدارة FirePOWER (FMC)
- معرفة أساسية بشهادات X509
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:
- Cisco FTD - 7.6
- Cisco FMC - 7.6
- Windows 11 مع Cisco Secure Client 5.1.4.74
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
قبل إصدار البرنامج 7.0، يدعم FTD المصادقة الأحادية المستندة إلى الشهادة، مما يعني أنه يمكن مصادقة المستخدم أو الجهاز ولكن ليس كليهما، لمحاولة اتصال واحد.
تتيح المصادقة المتعددة المستندة إلى الشهادات إمكانية التحقق من صحة شهادة التهديد على الجهاز أو الجهاز، لضمان أن الجهاز هو جهاز صادر عن الشركة، بالإضافة إلى مصادقة شهادة هوية المستخدمين للسماح بوصول VPN باستخدام مرحلة Secure ClientDuring SSL أو IKEv2 EAP.
تحدد مصادقة الشهادات المتعددة حاليا عدد الشهادات إلى إثنتين. يجب أن يشير Secure Client إلى دعم مصادقة شهادات متعددة. إذا لم يكن هذا هو الحال، فعندئذ تستخدم البوابة إحدى طرق المصادقة القديمة أو تفشل في الاتصال. يدعم Secure ClientVersion 4.4.04030 أو إصدار أحدث المصادقة المستندة إلى عدة شهادات.
التكوينات
التكوين على FTD
- انتقل إلى > .
- حدد نهج VPN للوصول عن بعد وانقر فوق تحرير.
ملاحظة: إذا لم تقم بتكوين شبكة VPN للوصول عن بعد، فانقر فوق إضافة لإنشاء نهج شبكة VPN للوصول عن بعد جديد.
- حدد توصيف توصيل وحرر هذا لتكوين مصادقة شهادات متعددة.
- انقر على إعدادات AAA واختر أسلوب المصادقة كشهادة عميل فقط أو شهادة عميل & AAA.
ملاحظة: حدد خادم المصادقة إذا كنت قد حددت طريقة مصادقة شهادة العميل ومصادقة AAA.
- حدد خانة الاختيار تمكين مصادقة الشهادات المتعددة.
-
أختر إحدى الشهادات لتعيين اسم المستخدم من شهادة العميل:
يتم إستخدام اسم المستخدم الذي تم إرساله من العميل كاسم مستخدم جلسة عمل VPN عند تمكين مصادقة الشهادة فقط. عندما يتم تمكين المصادقة والتفويض والمحاسبة (AAA) ومصادقة الشهادة، يعتمد اسم مستخدم جلسة شبكة VPN على خيار التعبئة المسبقة.
- إذا قمت بتحديد خيار حقل تعيين محدد، والذي يتضمن اسم المستخدم من شهادة العميل، فإن الحقلين الأساسي والثانوي يعرضان القيم الافتراضية: الاسم الشائع (CN) والوحدة التنظيمية (OU) على التوالي.
إعدادات AAA لتوصيف التوصيل
8. إذا قمت بتحديد خيار إستخدام الاسم المميز بالكامل (DN) كاسم مستخدم، فإن النظام يسترجع هوية المستخدم تلقائيا. الاسم المميز هو تعريف فريد، مكون من حقول منفردة يمكن إستخدامها كمعرف عند مطابقة المستخدمين لملف تعريف اتصال. يتم إستخدام قواعد DN لمصادقة الشهادة المحسنة.
ملاحظة: إذا قمت بتحديد مصادقة شهادة العميل ومصادقة AAA، فحدد خيار اسم مستخدم البادئة من الشهادة الموجودة في نافذة تسجيل دخول المستخدم لملء اسم المستخدم الثانوي مسبقا من شهادة العميل عندما يتصل المستخدم عبر وحدة VPN الخاصة بالعميل الآمن من Cisco Secure Client.
إخفاء اسم المستخدم في نافذة تسجيل الدخول: اسم المستخدم الثانوي معبأ مسبقا من شهادة العميل، ولكنه مخفي للمستخدم بحيث لا يقوم المستخدم بتعديل اسم المستخدم المعبأ مسبقا.
9. للحصول على تكوين تفصيلي آخر، ارجع إلى تكوين شبكة VPN للوصول عن بعد للعميل الآمن (AnyConnect) على FTD.
10. قم بتحميل شهادات CA الخاصة بشهادة مخزن المستخدم وشهادة مخزن الجهاز إلى FTD للتحقق من الصحة بنجاح. بما أنه في هذا السيناريو، يتم توقيع شهادة مخزن المستخدم وشهادة مخزن الجهاز بواسطة المرجع المصدق نفسه، مما يثبت أن المرجع المصدق الواحد كاف. إذا كانت شهادة تخزين المستخدم وشهادة تخزين الجهاز موقعة من مرجع مصدق مختلف، فيجب تحميل كل من شهادتي المرجع المصدق إلى FTD.
شهادة CA المثبتة على FTD من FMC
ملاحظة: يجب أن يحتوي ملف تعريف عميل AnyConnect على CertificateStore معين على الكل وأن يتم تعيين CertificateStoreOverride على true إذا لم يكن لدى المستخدم حقوق المسؤول.
الشهادات الموجودة على جهاز المستخدم
يجب أن يحتوي جهاز المستخدم الذي يفترض توصيله بملف تعريف الاتصال هذا على شهادات صالحة مثبتة في مخزن المستخدم ومخزن الجهاز.
شهادة من مخزن المستخدم:
شهادة مخزن المستخدم
الشهادة من مخزن الأجهزة:
شهادة تخزين الجهاز
التحقق من الصحة
1. التحقق من تكوين ملف تعريف الاتصال من واجهة سطر الأوامر (CLI) الخاصة ب FTD:
firepower# show run tunnel-group
tunnel-group RA-VPN-Multi-Cert type remote-access
tunnel-group RA-VPN-Multi-Cert general-attributes
address-pool RAVPN-MultiCert-Pool
default-group-policy RAVPN-Multi-Cert-GP
tunnel-group RA-VPN-Multi-Cert webvpn-attributes
authentication multiple-certificate
group-alias RAVPN-MultiCert enable
2. قم بتنفيذ هذا الأمر للتحقق من الاتصال:
firepower# show vpn-sessiondb detail anyconnect
Session Type: AnyConnect Detailed
Username : client.cisco.com Index : 28
Assigned IP : 192.168.13.1 Public IP : 10.106.56.89
Protocol : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)AES-GCM-128 DTLS-Tunnel: (1)AES-GCM-256
Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA256 DTLS-Tunnel: (1)SHA384
Bytes Tx : 19324 Bytes Rx : 134555
Pkts Tx : 2 Pkts Rx : 1379
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Group Policy : RAVPN-Multi-Cert-GP Tunnel Group : RA-VPN-Multi-Cert
Login Time : 07:18:53 UTC Wed Mar 19 2025
Duration : 0h:21m:00s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : 0a6a43590001c00067da6fdd
Security Grp : none Tunnel Zone : 0
AnyConnect-Parent Tunnels: 1
SSL-Tunnel Tunnels: 1
DTLS-Tunnel Tunnels: 1
AnyConnect-Parent:
Tunnel ID : 28.1
Public IP : 10.106.56.89
Encryption : none Hashing : none
TCP Src Port : 53927 TCP Dst Port : 443
Auth Mode : Multiple-certificate
Idle Time Out: 30 Minutes Idle TO Left : 9 Minutes
Client OS : win
Client OS Ver: 10.0.22000
Client Type : AnyConnect
Client Ver : Cisco AnyConnect VPN Agent for Windows 5.1.4.74
Bytes Tx : 11581 Bytes Rx : 224
Pkts Tx : 1 Pkts Rx : 0
Pkts Tx Drop : 0 Pkts Rx Drop : 0
SSL-Tunnel:
Tunnel ID : 28.2
Assigned IP : 192.168.13.1 Public IP : 10.106.56.89
Encryption : AES-GCM-128 Hashing : SHA256
Ciphersuite : TLS_AES_128_GCM_SHA256
Encapsulation: TLSv1.3 TCP Src Port : 53937
TCP Dst Port : 443 Auth Mode : Multiple-certificate
Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes
Client OS : Windows
Client Type : SSL VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 5.1.4.74
Bytes Tx : 7743 Bytes Rx : 240
Pkts Tx : 1 Pkts Rx : 3
Pkts Tx Drop : 0 Pkts Rx Drop : 0
DTLS-Tunnel:
Tunnel ID : 28.3
Assigned IP : 192.168.13.1 Public IP : 10.106.56.89
Encryption : AES-GCM-256 Hashing : SHA384
Ciphersuite : ECDHE-ECDSA-AES256-GCM-SHA384
Encapsulation: DTLSv1.2 UDP Src Port : 62975
UDP Dst Port : 443 Auth Mode : Multiple-certificate
Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes
Client OS : Windows
Client Type : DTLS VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 5.1.4.74
Bytes Tx : 0 Bytes Rx : 134091
Pkts Tx : 0 Pkts Rx : 1376
Pkts Tx Drop : 0 Pkts Rx Drop : 0
يتم تحديد اسم المستخدم client.cisco.comis الذي تم إسترداده من شهادة مخزن المستخدم كاسم مستخدم للخريطة من الشهادة الثانية في قسم AAA. في حالة تحديد "الشهادة الأولى"، يتم إسترداد اسم المستخدم من شهادة "مخزن الجهاز" وهي machine.cisco.com.
استكشاف الأخطاء وإصلاحها
- تأكد من وجود شهادات صالحة في مخزن شهادات المستخدم ومخزن شهادات الجهاز.
- قم بتجميع تصحيح الأخطاء على FTD لفحص السجلات المتعلقة بالتحقق من صحة الشهادة باستخدام debug crypto ca 14.
- مراجعة DART من جهاز المستخدم.
سجلات DART من سيناريو العمل:
******************************************
Date : 03/19/2025
Time : 00:18:50
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::processResponseStringFromSG
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 12100
[MCA] Multiple client cert auth requested by peer (via AggAuth)
******************************************
Date : 03/19/2025
Time : 00:18:50
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::nextClientCert
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 6774
Subject Name: C=US, ST=California, L=San Jose, O=Cisco Systems Inc., CN=machine.cisco.com
Issuer Name : C=US, O=IdenTrust, OU=HydrantID Trusted Certificate Service, CN=HydrantID Server CA O1
Store : Microsoft Machine
******************************************
Date : 03/19/2025
Time : 00:18:50
Type : Information
Source : csc_vpnapi
Description : Function: CTransportCurlStatic::ClientCertRequestCB
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\CTransportCurlStatic.cpp
Line: 1358
Using client cert: /C=US/ST=California/L=San Jose/O=Cisco Systems Inc./CN=machine.cisco.com
******************************************
Date : 03/19/2025
Time : 00:18:51
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::processResponseStringFromSG
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 12105
[MCA] Client certificate accepted at protocol level
******************************************
Date : 03/19/2025
Time : 00:18:51
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::processResponseStringFromSG
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 12124
[MCA] Received and successfully parsed Multiple Certificate Authentication request from secure gateway.
******************************************
Date : 03/19/2025
Time : 00:18:51
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::nextClientCert
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 6774
Subject Name: C=US, ST=California, L=San Jose, O=Cisco Systems Inc., CN=client.cisco.com
Issuer Name : C=US, O=IdenTrust, OU=HydrantID Trusted Certificate Service, CN=HydrantID Server CA O1
Store : Microsoft User
******************************************
Date : 03/19/2025
Time : 00:18:51
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::processIfcData
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 4129
[MCA] Second certificate for Multiple Certificate Authentication found - now sending 2nd certificate to secure gateway.
******************************************
Date : 03/19/2025
Time : 00:18:51
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::userResponse
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 1690
Processing user response.
******************************************
Date : 03/19/2025
Time : 00:18:52
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::createMultiCertAuthReplyXML
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 17127
[MCA] Successfully signed Multiple Certificate Authentication data with 2nd certificate
******************************************
Date : 03/19/2025
Time : 00:18:52
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::sendResponse
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 6522
[MCA] Multiple Certificate Authentication response ready to send to secure gateway
******************************************
Date : 03/19/2025
Time : 00:18:52
Type : Information
Source : csc_vpnapi
Description : Message type prompt sent to the user:
Your client certificate will be used for authentication
******************************************
Date : 03/19/2025
Time : 00:18:53
Type : Information
Source : csc_vpnapi
Description : Function: CVpnApiShim::SaveUserPrompt
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\ApiShim\ApiShim.cpp
Line: 3538
User submitted response for host ftdha.cisco.com and tunnel group: RAVPN-MultiCert
******************************************
Date : 03/19/2025
Time : 00:18:53
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::userResponse
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 1690
Processing user response.
******************************************
Date : 03/19/2025
Time : 00:18:53
Type : Information
Source : csc_vpnapi
Description : Function: ConnectMgr::processIfcData
File: C:\temp\build\thehoff\Raccoon_MR40.765445939442\Raccoon_MR4\vpn\Api\ConnectMgr.cpp
Line: 3815
Authentication succeeded
******************************************