المحتويات

المقدمة

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

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

المتطلبات

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

الاصطلاحات

الخلفية

التكوين الأولي IOS

IOS - CA

IOS - شهادة الهوية

تكوين IOS - AAA و RADIUS

التهيئة الأولية ل ACS

تكوين IOS FlexVPN

تكوين Windows

إستيراد CA إلى Windows Trust

تكوين توصيف AnyConnect XML

الاختبارات

التحقق

موجه IOS

ويندوز

المحاذير والمشكلات المعروفة

تشفير الجيل التالي

معلومات ذات صلة

المقدمة

يقدم هذا المستند نموذجا لتكوين كيفية إعداد الوصول عن بعد على IOS باستخدام مجموعة أدوات FlexVPN.

تتيح الشبكة الخاصة الظاهرية (VPN) للوصول عن بعد للعملاء النهائيين الذين يستخدمون أنظمة تشغيل مختلفة إمكانية الاتصال على نحو آمن بشبكاتهم المؤسسية أو المنزلية من خلال وسط غير آمن مثل الإنترنت. في السيناريو المقدم، يتم إنهاء نفق VPN على موجه Cisco IOS باستخدام بروتوكول IKEv2.

يوضح هذا المستند كيفية مصادقة المستخدمين وتخويلهم باستخدام خادم التحكم في الوصول (ACS) من خلال طريقة EAP-MD5.

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

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

يحتوي موجه IOS من Cisco على واجهتين - واحدة نحو ACS 5.3:

المتطلبات

لا توجد متطلبات خاصة لهذا المستند.

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

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

- ACS 5.3 مع حزمة 6

- موجه IOS مع برنامج 15.2(4)M

- جهاز الكمبيوتر الذي يعمل بنظام التشغيل Windows 7 مع AnyConnect 3.1.01065

الاصطلاحات

راجع اصطلاحات تلميحات Cisco التقنية للحصول على مزيد من المعلومات حول اصطلاحات المستندات.

الخلفية

في IKEv1 Xauth الذي يتم إستخدامه في المرحلة 1.5، يمكنك مصادقة المستخدمين محليا على موجه IOS واستخدام RADIUS/TACACS+ عن بعد. لا يدعم IKEv2 Xauth ولا يدعم المرحلة 1.5 بعد ذلك. وهو يحتوي على دعم EAP مضمن، والذي يتم في المرحلة IKE_AUTH. وتتمثل الميزة الكبرى لهذا الطراز في تصميم الإصدار الثاني من بروتوكول IKEv2، ويعد الطراز EAP معيارا معروفا.

يدعم EAP وضعين:

- الاتصال النفقي—EAP-TLS و EAP/PSK و EAP-PEAP، إلخ.

- غير الاتصال النفقي—EAP-MSCHAPv2، EAP-GTC، EAP-MD5، وما إلى ذلك.

في هذا المثال، يتم إستخدام EAP-MD5 في وضع عدم الاتصال النفقي لأنه أسلوب المصادقة الخارجية EAP المدعوم حاليا في ACS 5.3.

لا يمكن إستخدام EAP إلا لمصادقة بادئ (العميل) المستجيب (IOS في هذه الحالة).

التكوين الأولي IOS

IOS - CA

أولا، أنت تحتاج إلى إنشاء مرجع مصدق (CA) وإنشاء شهادة هوية لموجه IOS. سيقوم العميل بالتحقق من هوية الموجه استنادا إلى هذه الشهادة.

يبدو تكوين CA على IOS كما يلي:

crypto pki server CA

grant auto

hash sha1

eku server-auth client-auth

تحتاج إلى تذكر إستخدام المفتاح الموسع (مصادقة الخادم مطلوبة ل EAP، و RSA-SIG تحتاج أيضا إلى مصادقة العميل).

قم بتمكين CA باستخدام الأمر no shutdown في خادم PKI للتشفير.

IOS - شهادة الهوية

بعد ذلك، قم بتمكين بروتوكول تسجيل الشهادة البسيط (SCEP) للشهادة وتكوين TrustPoint.

ip http server

crypto pki trustpoint CA-self

enrollment url http://10.1.1.2:80

fqdn 10.1.1.2

ip-address 10.1.1.2

subject-name cn=10.1.1.2,ou=TAC

revocation-check none

eku request server-auth client-auth

ثم قم بمصادقة الشهادة وتسجيلها:

(config)#crypto pki authenticate CA-self

Certificate has the following attributes:

Fingerprint MD5: 741C671C 3202B3AE 6E05161C 694CA53E

Fingerprint SHA1: 8C99513C 2198470F 7CB58FA2 32D8AA8D FC31D1ED

% Do you accept this certificate? [yes/no]: yes

Trustpoint CA certificate accepted.

R1(config)#crypto pki enroll CA-self

%

% Start certificate enrollment ..

% Create a challenge password. You will need to verbally provide this

password to the CA Administrator in order to revoke your certificate.

For security reasons your password will not be saved in the configuration.

Please make a note of it.

Password:

Re-enter password:

% The subject name in the certificate will include: cn=10.1.1.2,ou=TAC

% The subject name in the certificate will include: 10.1.1.2

% Include the router serial number in the subject name? [yes/no]: no

% The IP address in the certificate is 10.1.1.2

Request certificate from CA? [yes/no]: yes

% Certificate request sent to Certificate Authority

% The 'show crypto pki certificate verbose CA-self' command

will show the fingerprint.

R1(config)#

*Dec  2 10:57:44.141: CRYPTO_PKI:  Certificate Request Fingerprint MD5:

BF8EF4B6 87FA8162 9079F917 698A5F36

*Dec  2 10:57:44.141: CRYPTO_PKI:  Certificate Request Fingerprint SHA1:

AC13FEA3 295F7AE6 7014EF60 784E33AF FD94C41D

R1(config)#

*Dec  2 10:57:44.198: %PKI-6-CERTRET: Certificate received from

Certificate Authority

إذا لم تكن ترغب في الحصول على رسائل مطالبة في AnyConnect، فتذكر أنه يجب أن يكون CN مساويا لعناوين IP/hostname التي تم تكوينها في ملف تعريف AnyConnect.

في هذا المثال، cn=10.1.1.2. لذلك، يتم إدخال AnyConnect 10.1.1.2 كعنوان IP للخادم في ملف تعريف AnyConnect xml.

تكوين IOS - AAA و RADIUS

تحتاج إلى تكوين مصادقة مصادقة مصادقة RADIUS و AAA والتفويض:

aaa new-model

radius-server host 192.168.56.202 key cisco

aaa group server radius SERV

server 192.168.56.202

aaa authentication login eap-list group SERV

aaa authorization network eap-list group SERV

التهيئة الأولية ل ACS

أولا، أضف جهاز الشبكة الجديد في ACS (موارد الشبكة > أجهزة الشبكة وعملاء AAA > إنشاء):

إضافة مستخدم (المستخدمون ومخازن الهوية > مخازن الهوية الداخلية > المستخدمون > إنشاء):

إضافة مستخدم للتخويل. في هذا المثال، إنها ايكست. يجب أن تكون كلمة المرور "cisco" لأنها الافتراضية التي يتم إرسالها بواسطة IOS.

بعد ذلك، قم بإنشاء ملف تخصيص تخويل للمستخدمين (عناصر النهج > التخويل والأذونات > الوصول إلى الشبكة > ملفات تخصيص التخويل > إنشاء).

في هذا المثال، تسمى البركة. في هذا المثال، يتم إدخال زوج AV للنفق المنقسم (كبادئة) وإطار عنوان IP كعنوان IP سيتم تعيينه للعميل المتصل. يمكن العثور على قائمة بجميع أزواج الصوت والفيديو المدعومة هنا: http://www.cisco.com/en/US/docs/ios-xml/ios/sec_conn_ike2vpn/configuration/15-2mt/sec-apx-flex-rad.html

بعد ذلك، يلزمك تشغيل دعم EAP-MD5 (للمصادقة) و PAP/ASCII (للتخويل) في سياسة الوصول. يتم إستخدام الافتراضي في هذا المثال (سياسات الوصول > الوصول الافتراضي للشبكة):

قم بإنشاء شرط لنهج الوصول وتعيين ملف تعريف التخويل الذي تم إنشاؤه. في هذه الحالة يتم إنشاء شرط ل NDG:Location في كل المواقع، لذلك لكل طلب تراخيص RADIUS سيزود ملف تعريف تخويل التجمع (سياسات الوصول > خدمات الوصول > الوصول الافتراضي إلى الشبكة):

يجب أن تكون قادرا على الاختبار على موجه IOS إذا كان المستخدم قادرا على المصادقة بشكل صحيح:

R1#test aaa group SERV user3 Cisco123 new-code

User successfully authenticated

USER ATTRIBUTES

username             0   "user3"

addr                 0   192.168.100.200

route-set            0   "prefix 10.1.1.0/24"

تكوين IOS FlexVPN

أنت تحتاج أن يخلق IKEv2 اقتراح ونهج (قد لا تحتاج أن، راجع CSCtn59317 ). يتم إنشاء السياسة فقط لعنوان IP واحد (10.1.1.2) في هذا المثال.

crypto ikev2 proposal PROP

encryption 3des

integrity sha1

group 2

crypto ikev2 policy 5

match address local 10.1.1.2

proposal PROP

ثم قم بإنشاء ملف تعريف IKEv2 وملف تعريف IPsec الذي سيتم ربطه بالقالب الظاهري.

تأكد من إيقاف تشغيل شهادة http-url، كما هو موصى به في دليل التكوين.

crypto ikev2 profile PROF

match identity remote address 0.0.0.0

match identity remote key-id IKETEST

authentication remote eap query-identity

authentication local rsa-sig

pki trustpoint CA-self

aaa authentication eap eap-list

aaa authorization user eap list eap-list IKETEST

virtual-template 1

no crypto ikev2 http-url cert

crypto ipsec transform-set transform1 esp-3des esp-sha-hmac

crypto ipsec profile PROF

set transform-set transform1

set ikev2-profile PROF

interface Virtual-Template1 type tunnel

ip unnumbered Ethernet0/0

tunnel mode ipsec ipv4

tunnel protection ipsec profile PROF

في هذا المثال، يتم إعداد التفويض استنادا إلى IKETEST للمستخدم، والذي تم إنشاؤه في تكوين ACS.

تكوين Windows

إستيراد CA إلى Windows Trust

تصدير شهادة المرجع المصدق على IOS (تأكد من تصدير شهادة الهوية وأخذ الجزء الأول فقط):

R1(config)#crypto pki export CA-self pem terminal

% CA certificate:

-----BEGIN CERTIFICATE-----

MIIB8zCCAVygAwIBAgIBATANBgkqhkiG9w0BAQUFADANMQswCQYDVQQDEwJDQTAe

Fw0xMjExMjYxNzMzMzlaFw0xNTExMjYxNzMzMzlaMA0xCzAJBgNVBAMTAkNBMIGf

MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCvDR4lHOcrj42QfHpRuNu4EyFrLR8H

TbPanXYV+GdCBmu53pDILE00ASEHByD6DYBx01EZuDsiolJ7t2MPTguB+YZe6V4O

JbtayyxtZGmF7+eDqRegQHHC394adQQWl2ojgQiuTHeRDTqDJR8i5gN2Ee+KOsr3

+OjnHjUmXb/I6QIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE

AwIBhjAfBgNVHSMEGDAWgBTH5Sdh69q4HAJulLQYLbYH0Nk9zzAdBgNVHQ4EFgQU

x+UnYevauBwCbpS0GC22B9DZPc8wDQYJKoZIhvcNAQEFBQADgYEADtBLiNXnl+LC

PIgJ0nl/jH5p2IwVlzwbPbZcOsZ9mn54QaqrhmhbHnmqKQJl/20+JPE6p+4noICq

VBrxoiX2KYQ1OwmEScPpQ2XJ9vhGqtQ4Xcx3g20HhxxFDfp2XuW7hwU0W8dTCmZw

4vodj47qEXKI6pGuzauw9MN1xhkNarc=

-----END CERTIFICATE-----

انسخ الجزء الموجود بين "شهادة البدء" و"شهادة النهاية" ولصقه في Notepad في Windows والحفظ كملف ca.crt.

تحتاج إلى تثبيته كما هو الحال في المراجع الجذر الموثوق بها (انقر نقرا مزدوجا على الملف > تثبيت الشهادة > وضع جميع الشهادات في المتجر التالي > مراجع التصديق الجذر الموثوق بها):

تكوين توصيف AnyConnect XML

في C:\ProgramData\Cisco\Cisco يقوم AnyConnect Secure Mobility Client\Profile بإنشاء ملف "any.xml" ولصق هذا:

<?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>

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

<AutomaticCertSelection UserControllable="true">

false</AutomaticCertSelection>

<ShowPreConnectMessage>false</ShowPreConnectMessage>

<CertificateStore>All</CertificateStore>

<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>

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

<IPProtocolSupport>IPv4,IPv6</IPProtocolSupport>

<AutoReconnect UserControllable="false">true

<AutoReconnectBehavior UserControllable="false">DisconnectOnSuspend

</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>

</ClientInitialization>

<ServerList>

<HostEntry>

<HostName>IOSEAP-MD5</HostName>

<HostAddress>10.1.1.2</HostAddress>

<PrimaryProtocol>IPsec

<StandardAuthenticationOnly>true

<AuthMethodDuringIKENegotiation>EAP-MD5</AuthMethodDuringIKENegotiation>

<IKEIdentity>IKETEST</IKEIdentity>

</StandardAuthenticationOnly>

</PrimaryProtocol>

</HostEntry>

</ServerList>

</AnyConnectProfile>

تأكد من أن إدخال 10.1.1.2 هو نفس إدخال CN=10.1.1.2 الذي تم إدخاله لشهادة الهوية.

الاختبارات

في هذا السيناريو، لم يتم إستخدام SSL VPN، لذلك تأكد من تعطيل خادم HTTP على IOS (لا يوجد خادم ip http). وإلا، فستتلقى رسالة خطأ في AnyConnect تنص على، "إستخدام متصفح للحصول على الوصول".

عند الاتصال في AnyConnect، يجب مطالبتك بكلمة مرور. في هذا المثال، تم إنشاء User3

بعد ذلك، يتم توصيل المستخدم.

التحقق

موجه IOS

R1#show ip inter brief | i Virtual

Virtual-Access1    10.1.1.2  YES unset  up  up

Virtual-Template1  10.1.1.2  YES unset  up down

R1# show ip route 192.168.100.200

Routing entry for 192.168.100.200/32

Known via "static", distance 1, metric 0 (connected)

Routing Descriptor Blocks:

* directly connected, via Virtual-Access1

Route metric is 0, traffic share count is 1

R1#show crypto ikev2 sa

IPv4 Crypto IKEv2  SA

Tunnel-id Local  Remote  fvrf/ivrf  Status

1  10.1.1.2/4500  110.1.1.100/61021  none/none  READY

Encr: 3DES, Hash: SHA96, DH Grp:2, Auth sign: RSA, Auth verify: EAP

Life/Active Time: 86400/94 sec

IPv6 Crypto IKEv2  SA

R1#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

Interface: Virtual-Access1

Uptime: 00:04:06

Session status: UP-ACTIVE

Peer: 192.168.56.1 port 61021 fvrf: (none) ivrf: (none)

Phase1_id: IKETEST

Desc: (none)

IKEv2 SA: local 10.1.1.2/4500 remote 10.1.1.100/61021 Active

Capabilities:(none) connid:1 lifetime:23:55:54

IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 host 192.168.100.200

Active SAs: 2, origin: crypto map

Inbound:  #pkts dec'ed 1 drop 0 life (KB/Sec) 4160122/3353

Outbound: #pkts enc'ed 0 drop 0 life (KB/Sec) 4160123/3353

يمكنك تنفيذ تصحيح الأخطاء (debug crypto ikev2).

ويندوز

في الخيارات المتقدمة من AnyConnect في شبكة VPN، يمكنك التحقق من تفاصيل المسار للاطلاع على شبكات الاتصال النفقي المنفصلة:

المحاذير والمشكلات المعروفة

- تذكر عند وجود SHA1 في تجزئة التوقيع وفي نهج التكامل في IKEv2 (راجع معرف تصحيح الأخطاء من Cisco CSCtn59317 (العملاء المسجلون فقط)).

- يجب أن يكون CN في شهادة هوية IOS اسم مضيف متساو في ملف تعريف ACS XML.

- إذا أردت إستخدام أزواج RADIUS AV التي تم تمريرها أثناء المصادقة وعدم إستخدام تفويض المجموعة على الإطلاق، يمكنك إستخدام هذا في توصيف IKEv2:

aaa authorization user eap cached

- يستخدم التخويل دائما كلمة المرور "cisco" لتفويض المجموعة/المستخدمين. قد يكون هذا مربك أثناء الاستخدام

aaa authorization user eap list SERV (without any paramaters)

لأنها ستحاول التفويض باستخدام المستخدم الذي تم تمريره في AnyConnect كمستخدم وكلمة مرور "cisco"، والتي قد لا تكون كلمة مرور المستخدم.

- في حالة أي مشاكل، هذه هي المخرجات التي يمكنك تحليلها وتقديمها إلى Cisco TAC:

- debug crypto ikev2

- debug crypto ikev2 داخلي

- مخرجات DART

- إذا لم تكن تستخدم SSL VPN فتذكر تعطيل خادم ip http (لا يوجد خادم ip http). وإلا، فسيحاول AnyConnect الاتصال بخادم HTTP واستلام النتيجة، "إستخدام مستعرض للوصول".

تشفير الجيل التالي

تم توفير التكوين المذكور أعلاه للمرجع لإظهار تكوين عمل محدود.

توصي Cisco باستخدام تشفير الجيل التالي (NGC) حيثما كان ذلك ممكنا.

يمكن الاطلاع على التوصيات الحالية المتعلقة بالهجرة هنا: http://www.cisco.com/web/about/security/intelligence/nextgen_crypto.html

عند إختيار تكوين NGC، تأكد من أن كل من برنامج العميل وجهاز وحدة الاستقبال والبث يدعمان هذا التكوين. يوصى بأن تكون موجهات ISR من الجيل 2 و ASR 1000 بمثابة محولات طرفية نظرا لدعم أجهزتها ل NGC.

وعلى جانب AnyConnect، واعتبارا من إصدار AnyConnect 3.1، يتم دعم مجموعة الاتصال B من NSA.

معلومات ذات صلة

- Cisco ASA IKEv2 PKI Site-VPN

- تصحيح أخطاء الموقع IKEv2 على IOS

- FlexVPN / IKEv2: Windows 7 Building-Client: وحدة الاستقبال والبث IOS: الجزء I - مصادقة الشهادة

- دليل تكوين FlexVPN و Internet Key Exchange الإصدار 2، Cisco IOS، الإصدار 15.2M&T

- الدعم التقني والمستندات - Cisco Systems