ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يقدم Application Gateway v2 SKU استخدام الشهادات الجذر الموثوق بها للسماح باتصالات TLS مع الخوادم الخلفية. يزيل هذا الحكم استخدام شهادات المصادقة (شهادات طرفية فردية) المطلوبة في وحدة حفظ المخزون v1. الشهادة الجذر هي Base-64 مرمز X.509(. CER) تنسيق شهادة الجذر من خادم شهادة الخلفية. يعرف المرجع المصدق الجذر (CA) الذي أصدر شهادة الخادم ثم يتم استخدام شهادة الخادم لاتصال TLS/SSL.
تثق بوابة التطبيق بشهادة موقع الويب الخاص بك بشكل افتراضي إذا تم توقيعها من قبل مرجع مصدق معروف (على سبيل المثال، GoDaddy أو DigiCert). لا تحتاج إلى تحميل الشهادة الجذر بشكل صريح في هذه الحالة. لمزيد من المعلومات، راجع نظرة عامة على إنهاء TLS وTLS من طرف إلى طرف باستخدام بوابة التطبيق. ومع ذلك، إذا كانت لديك بيئة تطوير/اختبار ولا تريد شراء شهادة موقعة من المرجع المصدق تم التحقق منها، يمكنك إنشاء المرجع المصدق الجذر المخصص الخاص بك وشهادة طرفية موقعة من قبل المرجع المصدق الجذر هذا.
إشعار
الشهادات التي تم إنشاؤها ذاتيا غير موثوق بها بشكل افتراضي وقد يكون من الصعب الحفاظ عليها. أيضا، قد يستخدمون مجموعات التجزئة والشفرات القديمة التي قد لا تكون قوية. للحصول على أمان أفضل، قم بشراء شهادة موقعة من قبل مرجع مصدق معروف.
يمكنك استخدام الخيارات التالية لإنشاء شهادتك الخاصة لاتصالات TLS الخلفية.
استخدم أداة منشئ الشهادة الخاصة بنقرة واحدة. باستخدام اسم المجال (الاسم الشائع) الذي توفره، تنفذ هذه الأداة نفس الخطوات الموثقة في هذه المقالة لإنشاء شهادات الجذر والخادم. مع ملفات الشهادة التي تم إنشاؤها، يمكنك تحميل الشهادة الجذر (على الفور. CER) إلى إعداد الواجهة الخلفية للبوابة وسلسلة الشهادات المقابلة (. PFX) إلى الخادم الخلفي. يتم أيضا توفير كلمة المرور لملف PFX في ملف ZIP الذي تم تنزيله.
استخدم أوامر OpenSSL لتخصيص وإنشاء الشهادات وفقا لاحتياجاتك. تابع اتباع الإرشادات الواردة في هذه المقالة إذا كنت ترغب في القيام بذلك بنفسك.
في هذا المقال، ستتعلم كيفية إجراء ما يلي:
- إنشاء مرجع مصدق مخصص خاص بك
- إنشاء شهادة موقعة ذاتيا موقعة من قبل المرجع المصدق المخصص
- تحميل شهادة جذر موقعة ذاتيا إلى Application Gateway لمصادقة الخادم الخلفي
المتطلبات الأساسية
OpenSSL على كمبيوتر يعمل بنظام التشغيل Windows أو Linux
بينما يمكن أن تكون هناك أدوات أخرى متاحة لإدارة الشهادات، يستخدم هذا البرنامج التعليمي OpenSSL. يمكنك العثور على OpenSSL مجمعة مع العديد من توزيعات Linux، مثل Ubuntu.
خادم ويب
على سبيل المثال، Apache أو IIS أو NGINX لاختبار الشهادات.
An Application Gateway v2 SKU
إذا لم يكن لديك بوابة تطبيق موجودة، فشاهد التشغيل السريع: حركة مرور الويب المباشرة باستخدام بوابة تطبيق Azure - مدخل Azure.
إنشاء شهادة CA جذرية
إنشاء شهادة المرجع المصدق الجذر باستخدام OpenSSL.
إنشاء المفتاح الجذر
سجل الدخول إلى الكمبيوتر حيث تم تثبيت OpenSSL وقم بتشغيل الأمر التالي. يؤدي هذا إلى إنشاء مفتاح مشفر.
openssl ecparam -out contoso.key -name prime256v1 -genkey
إنشاء شهادة الجذر وتوقيعها ذاتيا
استخدم الأمر التالي لإنشاء طلب توقيع الشهادة (CSR).
openssl req -new -sha256 -key contoso.key -out contoso.csr
عند المطالبة، اكتب كلمة المرور للمفتاح الجذر والمعلومات التنظيمية للمرجع المصدق المخصص مثل البلد/المنطقة والولاية والمؤسسة والوحدة التنظيمية واسم المجال المؤهل بالكامل (هذا هو مجال المصدر).
استخدم الأمر التالي لإنشاء شهادة الجذر.
openssl x509 -req -sha256 -days 365 -in contoso.csr -signkey contoso.key -out contoso.crt
تنشئ الأوامر السابقة شهادة الجذر. ستستخدم هذا لتوقيع شهادة الخادم.
إنشاء شهادة خادم
بعد ذلك، ستقوم بإنشاء شهادة خادم باستخدام OpenSSL.
إنشاء مفتاح الشهادة
استخدم الأمر التالي لإنشاء المفتاح لشهادة الخادم.
openssl ecparam -out fabrikam.key -name prime256v1 -genkey
إنشاء CSR (طلب توقيع الشهادة)
CSR هو مفتاح عام يتم منحه لمرجع مصدق عند طلب شهادة. يصدر المرجع المصدق الشهادة لهذا الطلب المحدد.
إشعار
يجب أن يكون CN (الاسم الشائع) لشهادة الخادم مختلفا عن مجال المصدر. على سبيل المثال، في هذه الحالة، CN للمصدر هو www.contoso.com
و CN لشهادة الخادم هي www.fabrikam.com
.
استخدم الأمر التالي لإنشاء CSR:
openssl req -new -sha256 -key fabrikam.key -out fabrikam.csr
عند المطالبة، اكتب كلمة المرور للمفتاح الجذر والمعلومات التنظيمية للمرجع المصدق المخصص: البلد/المنطقة والولاية والمؤسسة والوحدة التنظيمية واسم المجال المؤهل بالكامل. هذا هو مجال الموقع الإلكتروني ويجب أن يكون مختلفا عن المصدر.
إنشاء الشهادة باستخدام CSR والمفتاح وتوقيعها باستخدام مفتاح جذر المرجع المصدق
استخدم الأمر التالي لإنشاء الشهادة:
openssl x509 -req -in fabrikam.csr -CA contoso.crt -CAkey contoso.key -CAcreateserial -out fabrikam.crt -days 365 -sha256
التحقق من الشهادة التي تم إنشاؤها حديثا
استخدم الأمر التالي لطباعة إخراج ملف CRT والتحقق من محتواه:
openssl x509 -in fabrikam.crt -text -noout
تحقق من الملفات الموجودة في الدليل الخاص بك، وتأكد من أن لديك الملفات التالية:
- contoso.crt
- contoso.key
- fabrikam.crt
- fabrikam.key
تكوين الشهادة في إعدادات TLS لخادم الويب الخاص بك
في خادم الويب الخاص بك، قم بتكوين TLS باستخدام ملفات fabrikam.crt وملفات fabrikam.key. إذا تعذر على خادم الويب الخاص بك أخذ ملفين، يمكنك دمجهما في ملف .pem أو .pfx واحد باستخدام أوامر OpenSSL.
IIS
للحصول على إرشادات حول كيفية استيراد الشهادة وتحميلها كشهادة خادم على IIS، راجع كيفية: تثبيت الشهادات المستوردة على خادم ويب في Windows Server 2003.
للحصول على إرشادات ربط TLS، راجع كيفية إعداد SSL على IIS 7.
اباتشي
التكوين التالي هو مثال مضيف ظاهري تم تكوينه ل SSL في Apache:
<VirtualHost www.fabrikam:443>
DocumentRoot /var/www/fabrikam
ServerName www.fabrikam.com
SSLEngine on
SSLCertificateFile /home/user/fabrikam.crt
SSLCertificateKeyFile /home/user/fabrikam.key
</VirtualHost>
إن جي إنكس
التكوين التالي هو مثال كتلة خادم NGINX مع تكوين TLS:
الوصول إلى الخادم للتحقق من التكوين
أضف شهادة الجذر إلى مخزن الجذر الموثوق به لجهازك. عند الوصول إلى موقع الويب، تأكد من رؤية سلسلة الشهادات بأكملها في المتصفح.
إشعار
من المفترض أنه تم تكوين DNS لتوجيه اسم خادم الويب (في هذا المثال،
www.fabrikam.com
) إلى عنوان IP لخادم الويب الخاص بك. إذا لم يكن الأمر كما هو، يمكنك تحرير ملف المضيفين لحل الاسم.استعرض للوصول إلى موقع الويب الخاص بك، وانقر فوق أيقونة القفل في مربع عنوان المستعرض للتحقق من معلومات الموقع والشهادة.
تحقق من التكوين باستخدام OpenSSL
أو يمكنك استخدام OpenSSL للتحقق من الشهادة.
openssl s_client -connect localhost:443 -servername www.fabrikam.com -showcerts
تحميل الشهادة الجذر إلى إعدادات HTTP لبوابة التطبيق
لتحميل الشهادة في Application Gateway، يجب تصدير شهادة .crt إلى تنسيق .cer بترميز Base-64. نظرا لأن .crt يحتوي بالفعل على المفتاح العام بتنسيق base-64 المشفرة، ما عليك سوى إعادة تسمية ملحق الملف من .crt إلى .cer.
مدخل Azure
لتحميل شهادة الجذر الموثوق بها من المدخل، حدد إعدادات الواجهة الخلفية وحدد HTTPS في بروتوكول الواجهة الخلفية.
Azure PowerShell
أو يمكنك استخدام Azure CLI أو Azure PowerShell لتحميل الشهادة الجذر. التعليمات البرمجية التالية هي نموذج Azure PowerShell.
إشعار
يضيف النموذج التالي شهادة جذر موثوق بها إلى بوابة التطبيق، وينشئ إعداد HTTP جديدا ويضيف قاعدة جديدة، على افتراض أن تجمع الخلفية والمستمع موجودان بالفعل.
## Add the trusted root certificate to the Application Gateway
$gw=Get-AzApplicationGateway -Name appgwv2 -ResourceGroupName rgOne
Add-AzApplicationGatewayTrustedRootCertificate `
-ApplicationGateway $gw `
-Name CustomCARoot `
-CertificateFile "C:\Users\surmb\Downloads\contoso.cer"
$trustedroot = Get-AzApplicationGatewayTrustedRootCertificate `
-Name CustomCARoot `
-ApplicationGateway $gw
## Get the listener, backend pool and probe
$listener = Get-AzApplicationGatewayHttpListener `
-Name basichttps `
-ApplicationGateway $gw
$bepool = Get-AzApplicationGatewayBackendAddressPool `
-Name testbackendpool `
-ApplicationGateway $gw
Add-AzApplicationGatewayProbeConfig `
-ApplicationGateway $gw `
-Name testprobe `
-Protocol Https `
-HostName "www.fabrikam.com" `
-Path "/" `
-Interval 15 `
-Timeout 20 `
-UnhealthyThreshold 3
$probe = Get-AzApplicationGatewayProbeConfig `
-Name testprobe `
-ApplicationGateway $gw
## Add the configuration to the HTTP Setting and don't forget to set the "hostname" field
## to the domain name of the server certificate as this will be set as the SNI header and
## will be used to verify the backend server's certificate. Note that TLS handshake will
## fail otherwise and might lead to backend servers being deemed as Unhealthy by the probes
Add-AzApplicationGatewayBackendHttpSettings `
-ApplicationGateway $gw `
-Name testbackend `
-Port 443 `
-Protocol Https `
-Probe $probe `
-TrustedRootCertificate $trustedroot `
-CookieBasedAffinity Disabled `
-RequestTimeout 20 `
-HostName www.fabrikam.com
## Get the configuration and update the Application Gateway
$backendhttp = Get-AzApplicationGatewayBackendHttpSettings `
-Name testbackend `
-ApplicationGateway $gw
Add-AzApplicationGatewayRequestRoutingRule `
-ApplicationGateway $gw `
-Name testrule `
-RuleType Basic `
-BackendHttpSettings $backendhttp `
-HttpListener $listener `
-BackendAddressPool $bepool
Set-AzApplicationGateway -ApplicationGateway $gw
تحقق من صحة الواجهة الخلفية لبوابة التطبيق
- انقر فوق طريقة عرض Backend Health لبوابة التطبيق للتحقق مما إذا كان الفحص سليما.
- يجب أن ترى أن الحالة صحية لفحص HTTPS.
الخطوات التالية
لمعرفة المزيد حول SSL\TLS في بوابة التطبيق، راجع نظرة عامة على إنهاء TLS وTLS من طرف إلى طرف باستخدام بوابة التطبيق.