المحتويات

المقدمة

المتطلبات الأساسية

المتطلبات

المكونات المستخدمة

معلومات أساسية

الرسم التخطيطي للشبكة

التكوين

المصادقة والتفويض للمستخدمين باستخدام قاعدة البيانات المحلية

تعطيل إمكانية تنزيل AnyConnect (إختياري).

تسليم ملف تعريف AnyConnect XML

تدفق الاتصالات

تبادل IKEv2 و EAP

التحقق من الصحة

استكشاف الأخطاء وإصلاحها

المقدمة

يوضح هذا المستند كيفية تكوين وحدة الاستقبال والبث للطراز Cisco IOS®/ XE للوصول إليها عبر مصادقة AnyConnect IKEv2 / EAP باستخدام قاعدة بيانات المستخدم المحلي.

المتطلبات الأساسية

المتطلبات

توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:

- بروتوكول IKEv2

المكونات المستخدمة

تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:

- موجه خدمات السحابة من Cisco الذي يشغل Cisco IOS® XE 16.9.2

- AnyConnect Client الإصدار 4.6.03049 الذي يعمل على Windows 10

تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.

معلومات أساسية

يتيح AnyConnect-EAP، المعروف أيضا باسم المصادقة التجميعية، لخادم Flex إمكانية مصادقة عميل AnyConnect عبر طريقة AnyConnect-EAP الخاصة من Cisco.

ليس كطرق بروتوكول المصادقة المتوسع (EAP) القياسية المستندة إلى مثل بطاقة الرمز المميز العام EAP (EAP-GTC) و EAP- Message Digest 5 (EAP-MD5) وما إلى ذلك، لا يعمل خادم Flex في وضع تمرير EAP.

ينتهي جميع إتصالات EAP مع العميل على Flex Server ومفتاح الجلسة المطلوب المستخدم لإنشاء حمولة المصادقة يتم حسابه محليا بواسطة Flex Server.

يجب أن يقوم الخادم المرن بمصادقة نفسه لدى العميل باستخدام الشهادات كما هو مطلوب بواسطة IKEv2 RFC.

مصادقة المستخدم المحلي مدعومة الآن على Flex Server والمصادقة عن بعد إختيارية.

وهذا مثالي لعمليات النشر على نطاق صغير التي يقل فيها عدد مستخدمي الوصول عن بعد وفي البيئات التي لا تتوفر فيها إمكانية الوصول إلى خادم المصادقة والتفويض والمحاسبة (AAA) الخارجي.

ومع ذلك، فبالنسبة لعمليات النشر واسعة النطاق وفي السيناريوهات التي تكون فيها سمات كل مستخدم مطلوبة، لا يزال يوصى باستخدام خادم AAA خارجي للمصادقة والتفويض.

يتيح تنفيذ AnyConnect-EAP إستخدام RADIUS للمصادقة عن بعد والتخويل والمحاسبة.

الرسم التخطيطي للشبكة

التكوين

المصادقة والتفويض للمستخدمين باستخدام قاعدة البيانات المحلية

ملاحظة: لمصادقة المستخدمين على قاعدة البيانات المحلية على الموجه، يلزم إستخدام EAP. ومع ذلك، لاستخدام EAP، يجب أن يكون أسلوب المصادقة المحلي RSA-sig، لذلك يحتاج الموجه إلى شهادة مناسبة مثبتة عليه، ولا يمكن أن يكون شهادة موقعة ذاتيا.

نموذج التكوين الذي يستخدم مصادقة المستخدم المحلي وتخويل المستخدم البعيد والمجموعة والمحاسبة عن بعد.

الخطوة 1. تمكين المصادقة والتفويض والمحاسبة (AAA) وتكوين قوائم المصادقة والتفويض والمحاسبة وإضافة اسم مستخدم إلى قاعدة البيانات المحلية:

aaa new-model

!

aaa authentication login a-eap-authen-local local

aaa authorization network a-eap-author-grp local

!

username test password cisco123

الخطوة 2. تكوين نقطة ثقة مخصصة للاحتفاظ بشهادة الموجه. يتم إستخدام إستيراد ملف PKCS12 في هذا المثال. للحصول على خيارات أخرى، يرجى مراجعة دليل تكوين PKI (البنية الأساسية للمفتاح العام):

https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/sec_conn_pki/configuration/xe-3s/sec-pki-xe-3s-book/sec-cert-enroll-pki.html

Router(config)# crypto pki import IKEv2-TP pkcs12 bootflash:IKEv2-TP.p12 password cisco123

الخطوة 3. حدد تجمع IP المحلي لتعيين العناوين إلى عملاء AnyConnect VPN:

ip local pool ACPOOL 192.168.10.5 192.168.10.10

الخطوة 4. إنشاء نهج تخويل محلي IKEv2:

crypto ikev2 authorization policy ikev2-auth-policy

pool ACPOOL

dns 10.0.1.1

الخطوة 5 (اختيارية). قم بإنشاء مقترح وسياسة IKEv2 المطلوبين. في حالة عدم تكوين هذا الخيار، يتم إستخدام الافتراضيات الذكية:

crypto ikev2 proposal IKEv2-prop1

encryption aes-cbc-256

integrity sha256

group 14

!

crypto ikev2 policy IKEv2-pol

proposal IKEv2-prop1

الخطوة 6. إنشاء توصيف AnyConnect

ملاحظة: يلزم تسليم ملف تعريف AnyConnect إلى جهاز العميل. يرجى الرجوع إلى القسم التالي للحصول على مزيد من المعلومات.

قم بتكوين ملف تعريف العميل باستخدام محرر ملف تعريف AnyConnect كما هو موضح في الصورة:

انقر فوق "إضافة" لإنشاء إدخال لبوابة الشبكة الخاصة الظاهرية (VPN). تأكد من تحديد "IPsec" ك "بروتوكول أساسي". قم بإلغاء تحديد الخيار "عبارة ASA".

حفظ ملف التخصيص: FIle -> حفظ باسم. مرادف XML لملف التعريف:

<?xml version="1.0" encoding="UTF-8"?>

<AnyConnectProfile xmlns="http://schemas.xmlsoap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap/encoding/ AnyConnectProfile.xsd">

<ClientInitialization>

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

<AutomaticCertSelection UserControllable="true">false</AutomaticCertSelection>

<ShowPreConnectMessage>false</ShowPreConnectMessage>

<CertificateStore>All</CertificateStore>

<CertificateStoreMac>All</CertificateStoreMac>

<CertificateStoreOverride>false</CertificateStoreOverride>

<ProxySettings>Native</ProxySettings>

<AllowLocalProxyConnections>true</AllowLocalProxyConnections>

<AuthenticationTimeout>12</AuthenticationTimeout>

<AutoConnectOnStart UserControllable="true">false</AutoConnectOnStart>

<MinimizeOnConnect UserControllable="true">true</MinimizeOnConnect>

<LocalLanAccess UserControllable="true">false</LocalLanAccess>

<DisableCaptivePortalDetection UserControllable="true">false</DisableCaptivePortalDetection>

<ClearSmartcardPin UserControllable="true">true</ClearSmartcardPin>

<IPProtocolSupport>IPv4,IPv6</IPProtocolSupport>

<AutoReconnect UserControllable="false">true

<AutoReconnectBehavior UserControllable="false">ReconnectAfterResume</AutoReconnectBehavior>

</AutoReconnect>

<AutoUpdate UserControllable="false">true</AutoUpdate>

<RSASecurIDIntegration UserControllable="false">Automatic</RSASecurIDIntegration>

<WindowsLogonEnforcement>SingleLocalLogon</WindowsLogonEnforcement>

<WindowsVPNEstablishment>LocalUsersOnly</WindowsVPNEstablishment>

<AutomaticVPNPolicy>false</AutomaticVPNPolicy>

<PPPExclusion UserControllable="false">Disable

<PPPExclusionServerIP UserControllable="false"></PPPExclusionServerIP>

</PPPExclusion>

<EnableScripting UserControllable="false">false</EnableScripting>

<EnableAutomaticServerSelection UserControllable="false">false

<AutoServerSelectionImprovement>20</AutoServerSelectionImprovement>

<AutoServerSelectionSuspendTime>4</AutoServerSelectionSuspendTime>

</EnableAutomaticServerSelection>

<RetainVpnOnLogoff>false

</RetainVpnOnLogoff>

<AllowManualHostInput>true</AllowManualHostInput>

</ClientInitialization>

<ServerList>

<HostEntry>

<HostName>VPN IOS-XE</HostName>

<HostAddress>vpn.example.com</HostAddress>

<PrimaryProtocol>IPsec

<StandardAuthenticationOnly>true

<AuthMethodDuringIKENegotiation>EAP-AnyConnect</AuthMethodDuringIKENegotiation>

</StandardAuthenticationOnly>

</PrimaryProtocol>

</HostEntry>

</ServerList>

</AnyConnectProfile>

ملاحظة: يستخدم AnyConnect '*$AnyConnectClient$*' كهوية IKE الافتراضية للنوع key-id. ومع ذلك، يمكن تغيير هذه الهوية يدويا في ملف تعريف AnyConnect لمطابقة إحتياجات النشر.

ملاحظة: لتحميل ملف تعريف XML إلى الموجه، يلزم توفر إصدار Cisco IOS® XE 16.9.1 أو إصدار أحدث. في حال إستخدام الإصدار الأقدم من برنامج Cisco IOS® XE، يلزم تعطيل قدرة تنزيل ملف التعريف على العميل. يرجى الرجوع إلى القسم "تعطيل إمكانية تنزيل AnyConnect" للحصول على مزيد من المعلومات.

قم بتحميل ملف تعريف XML الذي تم إنشاؤه إلى ذاكرة Flash (الذاكرة المؤقتة) للموجه وحدد ملف التعريف:

crypto vpn anyconnect profile acvpn bootflash:/acvpn.xml

ملاحظة: اسم الملف الذي يستخدم لملف تعريف AnyConnect XML هو acvpn.xml.

الخطوة 7. إنشاء توصيف IKEv2 لأسلوب AnyConnect-EAP لمصادقة العميل.

crypto ikev2 profile AnyConnect-EAP

match identity remote key-id *$AnyConnectClient$*

authentication local rsa-sig

authentication remote anyconnect-eap aggregate

pki trustpoint IKEv2-TP

aaa authentication anyconnect-eap a-eap-authen-local

aaa authorization group anyconnect-eap list a-eap-author-grp ikev2-auth-policy

aaa authorization user anyconnect-eap cached

virtual-template 100

anyconnect profile acvpn

ملاحظة: يقبل CLI تكوين طريقة المصادقة عن بعد قبل طريقة المصادقة المحلية. ولكنه لا يؤثر على الإصدارات التي لا تحتوي على الإصلاح الخاص بطلب التحسين معرف تصحيح الأخطاء من Cisco CSCvb29701، إذا كان أسلوب المصادقة عن بعد EAP. بالنسبة لهذه الإصدارات، عند تكوين EAP كطريقة مصادقة عن بعد، تأكد من تكوين طريقة المصادقة المحلية كطريقة rsa-sig أولا. لا تظهر هذه المشكلة مع أي شكل آخر من طرق المصادقة عن بعد.

ملاحظة: في إصدارات الرمز المتأثرة بمعرف تصحيح الأخطاء من Cisco CSCvb24236 ، بمجرد تكوين المصادقة عن بعد قبل المصادقة المحلية، لا يمكن تكوين طريقة المصادقة عن بعد بعد بعد بعد على ذلك الجهاز. الرجاء الترقية إلى إصدار يحتوي على الإصلاح لهذا الرمز.

الخطوة 8. تعطيل البحث عن الشهادة المستندة إلى HTTP-URL وخادم HTTP على الموجه:

no crypto ikev2 http-url cert

no ip http server

no ip http secure-server

ملاحظة: ارجع إلى هذا المستند لتأكيد ما إذا كانت أجهزة الموجه لديك تدعم خوارزميات تشفير NGE (المثال السابق يتضمن خوارزميات NGE)، وإلا فإن تثبيت IPSec SA على الجهاز يفشل في المرحلة الأخيرة من التفاوض.

الخطوة 9. تعريف التشفير وخوارزميات التجزئة المستخدمة لحماية البيانات

crypto ipsec transform-set TS esp-aes 256 esp-sha256-hmac

mode tunnel

الخطوة 10. إنشاء ملف تعريف IPSec:

crypto ipsec profile AnyConnect-EAP

set transform-set TS

set ikev2-profile AnyConnect-EAP

الخطوة 11. قم بتكوين واجهة إسترجاع باستخدام عنوان IP وهمي. تستعير واجهات الوصول الظاهري عنوان IP منها.

interface loopback100

ip address 10.0.0.1 255.255.255.255

الخطوة 12. تكوين قالب ظاهري (إقران القالب في ملف تعريف IKEv2)

interface Virtual-Template100 type tunnel

ip unnumbered Loopback100

ip mtu 1400

tunnel mode ipsec ipv4

tunnel protection ipsec profile AnyConnect-EAP

STEAP 13 (إختياري). بشكل افتراضي، يتم إرسال جميع حركات مرور البيانات من العميل عبر النفق. يمكنك تكوين نفق انقسام، والذي يسمح لحركة المرور المحددة فقط بالانتقال عبر النفق.

ip access-list standard split_tunnel

permit 10.0.0.0 0.255.255.255

!

crypto ikev2 authorization policy ikev2-auth-policy

route set access-list split_tunnel

الخطوة 14 (اختيارية). إن يتطلب كل حركة مرور أن يذهب من خلال النفق، شكلت NAT in order to سمحت إنترنت موصولية لزبون بعيد.

ip access-list extended NAT

permit ip 192.168.10.0 0.0.0.255 any

!

ip nat inside source list NAT interface GigabitEthernet1 overload

!

interface GigabitEthernet1

ip nat outside

!

interface Virtual-Template 100

ip nat inside

تعطيل إمكانية تنزيل AnyConnect (إختياري).

تكون هذه الخطوة ضرورية فقط في حالة إستخدام إصدار برنامج Cisco IOS® XE الأقدم من 16.9.1. قبل Cisco IOS® XE 16.9.1 لم تكن إمكانية تحميل ملف تعريف XML إلى الموجه متوفرة. يحاول عميل AnyConnect إجراء تنزيل ملف تعريف XML بعد تسجيل الدخول الناجح بشكل افتراضي. إذا لم يكن التوصيف متاحا يفشل التوصيل. كحل بديل، من الممكن تعطيل قدرة تنزيل ملف تعريف AnyConnect على العميل نفسه. للقيام بذلك، يمكن تعديل هذا الملف:

For Windows:

C:\ProgramData\Cisco\Cisco AnyConnect Secure Mobility Client\AnyConnectLocalPolicy.xml

For MAC OS:

/opt/cisco/anyconnect/AnyConnectLocalPolicy.xml

يتم تعيين الخيار "BypassDownloader" على "true"، على سبيل المثال:

<?xml version="1.0" encoding="UTF-8"?>

<AnyConnectLocalPolicy xmlns="http://schemas.xmlsoap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap/encoding/ AnyConnectLocalPolicy.xsd" acversion="4.6.03049">

<BypassDownloader>true</BypassDownloader>

<EnableCRLCheck>false</EnableCRLCheck>

<ExcludeFirefoxNSSCertStore>false</ExcludeFirefoxNSSCertStore>

<ExcludeMacNativeCertStore>false</ExcludeMacNativeCertStore>

<ExcludePemFileCertStore>false</ExcludePemFileCertStore>

<ExcludeWinNativeCertStore>false</ExcludeWinNativeCertStore>

<FipsMode>false</FipsMode>

<RestrictPreferenceCaching>false</RestrictPreferenceCaching>

<RestrictTunnelProtocols>false</RestrictTunnelProtocols>

<RestrictWebLaunch>false</RestrictWebLaunch>

<StrictCertificateTrust>false</StrictCertificateTrust>

<UpdatePolicy>

<AllowComplianceModuleUpdatesFromAnyServer>true</AllowComplianceModuleUpdatesFromAnyServer>

<AllowISEProfileUpdatesFromAnyServer>true</AllowISEProfileUpdatesFromAnyServer>

<AllowServiceProfileUpdatesFromAnyServer>true</AllowServiceProfileUpdatesFromAnyServer>

<AllowSoftwareUpdatesFromAnyServer>true</AllowSoftwareUpdatesFromAnyServer>

<AllowVPNProfileUpdatesFromAnyServer>true</AllowVPNProfileUpdatesFromAnyServer></UpdatePolicy>

</AnyConnectLocalPolicy>

بعد التعديل، يلزم إعادة تشغيل عميل AnyConnect.

تسليم ملف تعريف AnyConnect XML

مع التثبيت الجديد ل AnyConnect (بدون ملفات تعريف XML مضافة)، يمكن للمستخدم إدخال FQDN لعبارة VPN يدويا في شريط عناوين عميل AnyConnect. ينتج عن ذلك اتصال SSL بالبوابة. لا يحاول عميل AnyConnect إنشاء نفق VPN باستخدام بروتوكولات IKEv2/IPsec بشكل افتراضي. هذا هو السبب في تثبيت ملف تعريف XML على العميل إلزامي لإنشاء نفق IKEv2/IPsec باستخدام بوابة VPN Cisco IOS® XE.

يستخدم التوصيف عند تحديده من القائمة المنسدلة بشريط عناوين AnyConnect.

الاسم الذي يظهر هو نفس الاسم المحدد في "اسم العرض" في محرر ملف تعريف AnyConnect.

يمكن وضع ملف تعريف XML يدويا في هذا الدليل:

For Windows:

C:\ProgramData\Cisco\Cisco AnyConnect Secure Mobility Client\Profile

For MAC OS:

/opt/cisco/anyconnect/profile

يلزم إعادة تشغيل عميل AnyConnect حتى يصبح ملف التعريف مرئيا في واجهة المستخدم الرسومية (GUI). لا يكفي إغلاق نافذة AnyConnect. يمكن إعادة تشغيل العملية بالنقر بزر الماوس الأيمن على رمز AnyConnect في درج Windows وتحديد الخيار "إنهاء":

تدفق الاتصالات

تبادل IKEv2 و EAP

التحقق من الصحة

استخدم هذا القسم لتأكيد عمل التكوين بشكل صحيح.

! Check IKEv2 SA parameters

Router# show crypto ikev2 sa detailed

IPv4 Crypto IKEv2  SA

Tunnel-id Local                 Remote                fvrf/ivrf            Status

1         192.0.2.1/4500     192.0.2.100/50899    none/none            READY

Encr: AES-CBC, keysize: 256, PRF: SHA256, Hash: SHA256, DH Grp:14, Auth sign: RSA, Auth verify: AnyConnect-EAP

Life/Active Time: 86400/758 sec

CE id: 1004, Session-id: 4

Status Description: Negotiation done

Local spi: 413112E83D493428       Remote spi: 696FA78292A21EA5

Local id: 192.0.2.1

Remote id: *$AnyConnectClient$*

Remote EAP id: test        <------ username

Local req msg id:  0              Remote req msg id:  31

Local next msg id: 0              Remote next msg id: 31

Local req queued:  0              Remote req queued:  31

Local window:      5              Remote window:      1

DPD configured for 0 seconds, retry 0

Fragmentation not  configured.

Dynamic Route Update: disabled

Extended Authentication not configured.

NAT-T is detected  outside

Cisco Trust Security SGT is disabled

Assigned host addr: 192.168.10.8.  <---- Assigned IP

Initiator of SA : No

! Check the crypto session information

Router# show crypto session detail

Crypto session current status

Code: C - IKE Configuration mode, D - Dead Peer Detection

K - Keepalives, N - NAT-traversal, T - cTCP encapsulation

X - IKE Extended Authentication, F - IKE Fragmentation

R - IKE Auto Reconnect, U - IKE Dynamic Route Update

S - SIP VPN

Interface: Virtual-Access1. <----- Virtual interface associated with the client

Profile: AnyConnect-EAP

Uptime: 00:14:54

Session status: UP-ACTIVE

Peer: 192.0.2.100 port 50899 fvrf: (none) ivrf: (none). <----- Public IP of the remote client

Phase1_id: *$AnyConnectClient$*

Desc: (none)

Session ID: 8

IKEv2 SA: local 192.0.2.1/4500 remote 192.0.2.100/50899 Active

Capabilities:N connid:1 lifetime:23:45:06

IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 host 192.168.10.8

Active SAs: 2, origin: crypto map

Inbound:  #pkts dec'ed 89 drop 0 life (KB/Sec) 4607990/2705. <------ Packets received from the client

Outbound: #pkts enc'ed 2 drop 0 life (KB/Sec) 4607999/2705. <------ Packets sent to the client

! Check the actual configuration applied for the Virtual-Acces interface associated with client

Router# show derived-config interface virtual-access 1.

Building configuration...

Derived configuration : 258 bytes

!

interface Virtual-Access1

ip unnumbered Loopback100

ip mtu 1400

ip nat inside

tunnel source 192.0.2.1

tunnel mode ipsec ipv4

tunnel destination 192.0.2.100

tunnel protection ipsec profile AnyConnect-EAP

no tunnel protection ipsec initiate

end

استكشاف الأخطاء وإصلاحها

يوفر هذا القسم معلومات يمكنك إستخدامها لاستكشاف أخطاء التكوين وإصلاحها.

1. تصحيح أخطاء IKEv2 للتجميع من وحدة الاستقبال والبث:

debug crypto ikev2

debug crypto ikev2 packet

debug crypto ikev2 error

2. تصحيح أخطاء المصادقة والتفويض والمحاسبة (AAA) للاطلاع على تعيين السمات المحلية و/أو البعيدة:

debug aaa authorization

debug aaa authentication

3. DART من عميل AnyConnect.