المقدمة
يصف هذا المستند كيفية تكوين مصادقة SAML لملفات تعريف توصيل متعددة ل Remote Access VPN باستخدام Azure AS IDp على CSF عبر FDM.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة أساسية بالمواضيع التالية:
- شهادات طبقة مأخذ التوصيل الآمنة (SSL)
- OpenSSL
- شبكة الوصول عن بعد الخاصة الظاهرية (RAVPN)
- مدير جهاز جدار الحماية الآمن (FDM) من Cisco
- لغة ترميز تأكيد الأمان (SAML)
- Microsoft Azure
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج التالية:
- OpenSSL
- Cisco Secure Firewall (CSF)، الإصدار 7.4.1
- Cisco Secure Firewall Device Manager، الإصدار 7.4.1
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
SAML أو لغة تمييز تأكيد الأمان هي معيار مفتوح لتبادل معلومات المصادقة والتفويض بين الأطراف، وعلى وجه التحديد موفر الهوية (IDp) ومزود الخدمة (SP). أصبح إستخدام مصادقة SAML لاتصالات Remote Access VPN (RAVPN) والتطبيقات الأخرى المختلفة شائعة بشكل متزايد بسبب مزاياها المتعددة. في مركز إدارة Firepower (FMC)، يمكن تكوين توصيفات توصيل متعددة لاستخدام تطبيقات محمية بمعرف P مختلفة بسبب خيار شهادة تجاوز مزود الهوية المتوفر في قائمة تكوين ملف تعريف الاتصال. تسمح هذه الميزة للمسؤولين بتجاوز شهادة IdP الأساسية في كائن خادم تسجيل الدخول الأحادي (SSO) بشهادة IdP معينة لكل ملف تعريف اتصال. ومع ذلك، فإن هذه الوظيفة محدودة على "مدير أجهزة FirePOWER (FDM)" لأنها لا توفر خيارا مماثلا. في حالة تكوين كائن SAML ثان تؤدي محاولة التوصيل بملف تعريف التوصيل الأول إلى فشل المصادقة، مع عرض رسالة الخطأ: "فشلت المصادقة بسبب مشكلة في إسترداد ملف تعريف إرتباط تسجيل الدخول الأحادي." للعمل على هذا القيد، يمكن إنشاء شهادة مخصصة ذاتية التوقيع واستيرادها في Azure للاستخدام عبر كل التطبيقات. ومن خلال القيام بذلك، يلزم تثبيت شهادة واحدة فقط في إدارة قاعدة بيانات المحول (FDM)، مما يتيح إمكانية مصادقة SAML بسلاسة تامة للتطبيقات المتعددة.
التكوين
الخطوة 1: إنشاء ملف شهادة موقعة ذاتيا و PKCS#12 باستخدام OpenSSL
يوضح هذا القسم كيفية إنشاء الشهادة الموقعة ذاتيا باستخدام OpenSSL
- سجل الدخول إلى نقطة نهاية تم تثبيت مكتبة OpenSSL عليها.
ملاحظة: في هذا المستند، يتم إستخدام جهاز Linux، لذلك فإن بعض الأوامر خاصة ببيئة Linux. ومع ذلك، فإن أوامر OpenSSL هي نفسها.
ب. قم بإنشاء ملف تكوين باستخدامtouch .conf
الأمر.
root@host# touch config.conf
ج. تحرير الملف باستخدام محرر نصي. في هذا المثال، يتم إستخدام VIM ويتم تشغيل الأمرvim .conf
. يمكنك إستخدام أي محرر نصوص آخر.
root@host# vim config.conf
د. أدخل المعلومات التي سيتم تضمينها في التوقيع الذاتي.
تأكد من إستبدال القيم بين < > بمعلومات المؤسسة الخاصة بك.
[req]
distinguished_name = req_distinguished_name
prompt = no
[req_distinguished_name]
C =
ST =
L =
O =
OU =
CN =
هـ. باستخدام هذا الأمر، يتم إنشاء مفتاح RSA خاص جديد فئة 2048 بت وشهادة موقعة ذاتيا باستخدام خوارزمية SHA-256، صالحة لمدة 3650 يوما، استنادا إلى التكوين المحدد في .conf
الملف. يتم حفظ المفتاح الخاص عليه .pem
ويتم حفظ الشهادة الموقعة ذاتيا عليه .crt
.
root@host# openssl req -newkey rsa:2048 -nodes -keyout .pem -x509 -sha256 -days 3650 -config .conf -out .crt

و. بعد إنشاء المفتاح الخاص والشهادة الموقعة ذاتيا، يقوم بتصديرهم إلى ملف PKCS#12، وهو تنسيق يمكن أن يتضمن كل من المفتاح الخاص والشهادة.
root@host# openssl pkcs12 -export -inkey .pem -in .crt -name -out .pfx

انتبه إلى كلمة المرور.
الخطوة 2: تحميل ملف PKCS#12 على Azure و FDM
تأكد من إنشاء تطبيق على Azure لكل توصيف توصيل يستخدم مصادقة SAML على FDM.

ما إن يتلقى أنت ال PKCS#12 مبرد من خطوة 1: قم بإنشاء ملف شهادة موقعة ذاتيا و PKCS#12 باستخدام OpenSSL، ويجب تحميله إلى Azure لعدة تطبيقات وتكوينه في تكوين SSO ل FDM.
الخطوة 2.1. تحميل الشهادة إلى Azure
أ. قم بتسجيل الدخول إلى مدخل Azure الخاص بك، وتصفح إلى تطبيق Enterprise الذي تريد حمايته بمصادقة SAML، وحدد تسجيل الدخول الأحادي.
ب. قم بالتمرير لأسفل إلى قسم شهادات SAML وحدد المزيد من الخيارات > تحرير.

ج. الآن، حدد خيار إستيراد شهادة.

د. ابحث عن ملف PKCS#12 الذي تم إنشاؤه مسبقا واستخدم كلمة المرور التي أدخلتها عندما قمت بإنشاء ملف PKCS#12.

هـ. أخيرا، حدد خيار جعل الشهادة نشطة.

ملاحظة: ضمان تنفيذ الخطوة 2.1: قم بتحميل الشهادة إلى Azure لكل تطبيق.
الخطوة 2.2. تحميل الشهادة إلى FDM
أ. انتقل إلى Objects > Certificates > Click Add Trusted CA certificate
.

ب. أدخل اسم TrustPoint الذي تفضله وقم بتحميل شهادة الهوية من IdP فقط (ليس ملف PKCS#12)، وتحقق من Skip CA Certificate Check
.

ج. تعيين الشهادة الجديدة في كائن SAML.

د. ضبط كائن SAML على توصيفات التوصيل المختلفة التي تستخدم SAML كطريقة مصادقة والتي تم إنشاء التطبيق لها في Azure. قم بنشر التغييرات.


التحقق من الصحة
قم بتشغيل show running-config
WebVPN وshow running-config tunnel-group
الأمر لمراجعة التكوين والتحقق من تكوين نفس URL الخاص بالنازحين على ملفات تعريف الاتصال المختلفة.
firepower#show running-confuting webvpn
webvpn
enable outside
http-headers
hsts-server
enable
max-age 31536000
include-sub-domains
no preload
hsts-client
enable
x-content-type-options
x-xss-protection
content-security-policy
anyconnect image disk0:/anyconnpkgs/anyconnect-win-4.10.08029-webdeploy-k9.pkg 2
anyconnect profiles defaultClientProfile disk0:/anyconncprofs/defaultClientProfile.xml
anyconnect enable
saml idp https://saml.lab.local/af42bac0/
url sign-in https://login.saml.lab.local/af42bac0/saml2
url sign-out https://login.saml.lab.local/af42bac0/saml2
base-url https://Server.cisco.com
trustpoint idp Azure_SSO
trustpoint sp FWCertificate
no signature
force re-authentication
tunnel-group-list enable
cache
disable
error-recovery disable
firepower#
firepower# show running-config tunnel-group
tunnel-group SAML_TG_Admin type remote-access
tunnel-group SAML_TG_Admin general-attributes
address-pool Admin_Pool
default-group-policy SAML_GP_Admin
tunnel-group SAML_TG_Admin webvpn-attributes
authentication saml
group-alias SAML_TG_Admin enable
saml identity-provider https://saml.lab.local/af42bac0/
tunnel-group SAML_TG_IT type remote-access
tunnel-group SAML_TG_IT general-attributes
address-pool IT_Pool
default-group-policy SAML_GP_IT
tunnel-group SAML_TG_IT webvpn-attributes
authentication saml
group-alias SAML_TG_IT enable
saml identity-provider https://saml.lab.local/af42bac0/
firepower#