تخطي إلى المحتوى

تفعيل مصادقة SSL المتبادلة

ما هو المصادقة المتبادلة؟

يتوقع العديد من الناس أمانًا إضافيًا، والمصادقة المتبادلة مدعومة بالفعل في Terminal Service Plus. عادةً ما يتم تنفيذها من قبل البنوك أو الهيئات الحكومية. لفهم ما هو ذلك، يمكننا مقارنته بعملية SSL القياسية حيث ستضيف تحققًا إضافيًا للتحقق مما إذا كان متصفح الويب الخاص بالمستخدم يسمح باتصال SSL. أنت تعرف ما هو شهادة SSL الخاصة بخادمك. تخيل أن الشهادة تم استيرادها إلى متصفح الويب لضمان أن هذا المتصفح المحدد موثوق لإنشاء اتصال. في الخطوة الأولى من التواصل، يعمل متصفح الويب كعميل، وفي الخطوة الثانية، يكون العكس. في النهاية، قبل كلا الجانبين، متصفح الويب العميل وخادم الويب، السلطة ويمكن أن يبدأ الاتصال.

تعريف أكثر اكتمالاً: يشير مصادقة SSL المتبادلة أو المصادقة المتبادلة المعتمدة على الشهادات إلى طرفين يقومان بمصادقة بعضهما البعض من خلال التحقق من الشهادة الرقمية المقدمة بحيث يضمن كلا الطرفين هوية الآخر. في مصطلحات التكنولوجيا، يشير ذلك إلى عميل (متصفح ويب أو تطبيق عميل) يقوم بمصادقة نفسه على خادم (موقع ويب أو تطبيق خادم) وأن ذلك الخادم يقوم أيضًا بمصادقة نفسه على العميل من خلال التحقق من شهادة المفتاح العام/الشهادة الرقمية الصادرة عن هيئات الشهادات الموثوقة (CAs). نظرًا لأن المصادقة تعتمد على الشهادات الرقمية، فإن هيئات الشهادات مثل Verisign أو Microsoft Certificate Server هي جزء مهم من عملية المصادقة المتبادلة.

Screenshot 1 ## تفعيله على TSplus

يتيح خادم الويب المدمج في TSplus إعداد المصادقة المتبادلة.

لتمكين المصادقة المتبادلة اتبع هذه العملية:

سيتعين عليك تثبيت أحدث مجموعة تطوير جافا (JDK) المتاحة من http://java.com > التنزيلات > JDK.

  1. إنشاء وتحرير الملف التالي باستخدام Notepad: C:\Program Files (x86)\TSplus\Clients\webserver\settings.bin

أضف هذه السطور الثلاثة:

تعطيل_http_only=true تعطيل_print_polling=true فرض_mutual_auth_on_https=true

  1. إزالة cert.jks

في "C:\Program Files (x86)\TSplus\Clients\webserver" سترى الملف cert.jks انسخه في "C:\Program Files (x86)\TSplus\Clients" قم بإزالة "C:\Program Files (x86)\TSplus\Clients\webserver\cert.jks"

  1. إنشاء ملف الدفعة

في ‘C:\Program Files (x86)\TSplus\Clients’ أنشئ ملف دفعة، على سبيل المثال “createcertuser.bat” مع هذه الإعدادات:

@rem قم بإلغاء تعليق السطر التالي إذا كنت ترغب في إنشاء شهادة موقعة ذاتيًا جديدة cert.jks @rem keytool -genkey -v -alias jwts -keyalg RSA -validity 3650 -keystore cert.jks -storepass secret -keypass secret -dname “CN=localhost, OU=my_ou, O=my_org, L=my_city, ST=my_state, C=MY” @keytool -genkey -v -alias AliasUser1 -keyalg RSA -storetype PKCS12 -keystore forBrowserUser1.p12 -dname “CN=some_name, OU=some_ou, O=some_org, L=Paris, ST=FR, C=FR” -storepass mypassword -keypass mypassword @keytool -export -alias AliasUser1 -keystore forBrowserUser1.p12 -storetype PKCS12 -storepass mypassword -rfc -file forCertUser1.cer @keytool -alias AliasCertUser2 -import -v -file forCertUser1.cer -keystore cert.jks -storepass secret @del forCertUser1.cer

سيتم استيراد زوج مفاتيح الشهادة تلقائيًا من متصفح الويب إلى "cert.jks" بعد إنشاء زوج مفاتيح المتصفح الخاص به.

  1. استعادة "cert.jks" المعدل الجديد الذي تم إنشاؤه

انسخ "C:\Program Files (x86)\TSplus\Clients\cert.jks" إلى "C:\Program Files (x86)\TSplus\Clients\webserver" وأعد تشغيل خوادم الويب.

  1. استيراد الشهادة والاختبار

يجب أن يكون المثال المقدم للدفعة قد أنشأ ملف اختبار "BrowserUser1.p12". عندما تفتح عنوان HTTPS، ستحصل على رسالة أمان ولن تتمكن من الوصول إلى صفحات خادم الويب. مع Chrome أو IE، يمكنك النقر على هذا الملف "BrowserUser1.p12" لاستيراد الشهادة إلى مخزن المفاتيح الافتراضي في Windows. مع FireFox، يجب عليك الذهاب إلى الإعدادات واستيراد هذا الملف "BrowserUser1.p12" تحت مجلد الشهادات الخاص بك.

بمجرد أن تقوم باستيراده بشكل صحيح، ستتمكن من الوصول إلى عنوان HTTPS.

يمكن للمسؤول إنشاء ملف زوج مفاتيح منفصل لكل مستخدم.

على سبيل المثال:

forBrowserUser1.p12 forBrowserUser2.p12 forBrowserUser3.p12

ويمكنه تصدير هذه الشهادات إلى cert.jks. إذا أراد تعطيل الوصول لمستخدم واحد، سيتعين عليه فقط حذف هذا المستخدم من "cert.jks". من خلال القيام بذلك، سيفقد المستخدم تفويضه ولن يكون قادرًا على الوصول إلى خادم الويب بعد الآن.

هذا المصادقة المتبادلة تؤثر فقط على اتصالات HTTPS وسيتم حظر اتصال HTTP باستخدام سطر الأوامر: settings.bin>disable_http_only=true