جدول المحتويات:

تقوية خدمات SSL على خادم الويب (Apache / Linux): 3 خطوات
تقوية خدمات SSL على خادم الويب (Apache / Linux): 3 خطوات

فيديو: تقوية خدمات SSL على خادم الويب (Apache / Linux): 3 خطوات

فيديو: تقوية خدمات SSL على خادم الويب (Apache / Linux): 3 خطوات
فيديو: كيف يعمل السيرفر ؟ كيف تقوم ببناء سيرفر خاص في منزلك ؟ كيف تستفيد من إنشاء سيرفر ؟ 2024, شهر نوفمبر
Anonim
تقوية خدمات SSL على خادم الويب الخاص بك (Apache / Linux)
تقوية خدمات SSL على خادم الويب الخاص بك (Apache / Linux)

هذا برنامج تعليمي قصير جدًا يهتم بأحد جوانب الأمن السيبراني - قوة خدمة ssl على خادم الويب الخاص بك. الخلفية هي أن خدمات SSL الموجودة على موقع الويب الخاص بك تُستخدم لضمان عدم تمكن أي شخص من اختراق البيانات التي يتم نقلها من وإلى موقع الويب الخاص بك. كانت هناك هجمات معلن عنها جيدًا على خدمات SSL الضعيفة مثل خطأ Heartbleed في OpenSSL وخطأ Poodle الذي استغل ثغرات SSL 3.0. (تعد هذه المنطقة هدفًا متحركًا ، لذا فأنت بحاجة إلى إنشاء اختبار SSL في دورة خطة عمل التحقق من ISO 27001 (PDCA) الخاصة بك.)

عندما يتم تثبيت ssl على موقع الويب الخاص بك باستخدام شهادة من مزود معترف به ، سترى أنه يمكن الوصول إلى موقع الويب الخاص بك من https://yourdomain.com. هذا يعني أنه يتم إرسال البيانات وإعادة توجيهها بتنسيق مشفر. في المقابل ، يعرض https://yourdomain.com أو التشفير الضعيف البيانات المرسلة بنص واضح مما يعني أنه حتى المتسلل الصغير يمكنه الوصول إلى بيانات كلمة المرور الخاصة بك وما إلى ذلك باستخدام أدوات متاحة بسهولة مثل Wireshark.

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

الخطوة 1: اختبار قوة خدمة SSL الخاصة بك

اختبار قوة خدمة SSL الخاصة بك
اختبار قوة خدمة SSL الخاصة بك

ما عليك سوى الانتقال إلى https://www.ssllabs.com/ssltest/ وإدخال اسم المجال الخاص بك بجوار مربع Hostname وتحديد خانة الاختيار "عدم إظهار النتائج على اللوحات" والنقر على زر الإرسال. (يرجى ملاحظة أنه لا يجب عليك اختبار أي مجالات بدون إذن مسبق ويجب ألا تظهر النتائج على السبورة مطلقًا.)

بعد إجراء الاختبارات ، سيتم منحك درجة من F إلى A +. ستحصل على نتائج اختبار مفصلة نأمل أن توضح لك سبب حصولك على الدرجة المخصصة لك.

الأسباب المعتادة للفشل هي أنك تستخدم مكونات قديمة مثل الأصفار أو البروتوكولات. سأركز على الأصفار قريبًا ولكن أولاً سأركز على بروتوكولات التشفير.

توفر بروتوكولات التشفير أمان الاتصالات عبر شبكة الكمبيوتر. … الاتصال خاص (أو آمن) لأن التشفير المتماثل يُستخدم لتشفير البيانات المرسلة. البروتوكولين الرئيسيين هما TLS و SSL. هذا الأخير محظور من الاستخدام ، وبدوره ، يتطور TLS ولذا فأنا أكتب هذا ، أحدث إصدار هو 1.3 ، وإن كان في شكل مسودة. من الناحية العملية ، اعتبارًا من يناير 2018 ، يجب أن يكون لديك TLS v 1.2. ممكن. من المحتمل أن يكون هناك انتقال إلى TLV v 1.3. خلال عام 2018. سوف يسرد اختبار Qualys بروتوكولات التشفير التي قمت بتطبيقها ، وفي الوقت الحالي ، إذا كنت تستخدم TLS v 1.2.

آخر شيء يمكن قوله حول بروتوكولات التشفير ، عندما تشتري حزمة ويب وشهادة SSL من مزود خدمة إنترنت رئيسي مثل GoDaddy ، ستكون TLS v 1.2. وهو أمر جيد ولكن بعد ذلك ، قد تجد صعوبة في الترقية لتقول TLS v 1.3. أنا شخصياً أقوم بتثبيت شهادات SSL الخاصة بي ، وبالتالي فأنا أسيطر على مصيري ، إذا جاز التعبير.

الخطوة 2: إعادة تكوين Apache لإجراء تغييرات SSL

إعادة تكوين Apache لإجراء تغييرات SSL
إعادة تكوين Apache لإجراء تغييرات SSL

أحد المجالات المهمة التي تم اختبارها في اختبار Qualys SSL وتركيز هذا القسم هو مجموعات التشفير التي تحدد قوة تشفير بياناتك المرسلة. فيما يلي مثال لإخراج اختبار Qualys SSL على أحد المجالات الخاصة بي.

الشفرات أجنحة # TLS 1.2 (الأجنحة في خادم المفضل الترتيب) TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) ECDH secp256r1 (مكافئ 3072 بت RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f) ECDH secp256r1 (مكافئ 3072 بت RSA) FS128TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028) ECDH secp256r1 (مكافئ 3072 بت RSA) FS256TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027) ECDH secp256r1 (مكافئ 3072 بت RSA) FS128

قد تقضي الكثير من الوقت في إعادة تكوين تكوين Apache لإزالة الخطوط الحمراء (الفاشلة) من تقرير اختبار Qualys ولكني أوصي بالطريقة التالية للحصول على أفضل إعدادات Cipher Suite.

1) قم بزيارة موقع ويب Apache واستخرج توصياتهم لاستخدام Cipher Suite. في وقت كتابة هذا التقرير ، اتبعت هذا الرابط -

2) أضف الإعداد الموصى به إلى ملف تكوين Apache وأعد تشغيل Apache. كان هذا هو الإعداد الموصى به الذي استخدمته.

SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA20-POLY1305: ECDHES-ECDHES128CM -AES128-GCM-SHA256: ECDHE-ECDSA-AES256-SHA384: ECDHE-RSA-AES256-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128-SHA256

ملاحظات - تتمثل إحدى التحديات في العثور على الملف الذي تحتاجه لتغيير توجيه SSLCipherSuite ، للقيام بذلك ، قم بتسجيل الدخول إلى Putty وقم بتسجيل الدخول إلى الدليل etc (sudo cd / etc) ابحث عن دليل apache مثل apache2 أو http. بعد ذلك ، قم بالبحث في دليل apache على النحو التالي: grep -r "SSLCipherSuite" / etc / apache2 - سيعطيك هذا إخراجًا مشابهًا لهذا:

/etc/apache2/mods-available/ssl.conf:#SSLCipherSuite HIGH: MEDIUM:! aNULL:! MD5:! RC4:! DES / etc / apache2 / mods-available / ssl.conf: #SSLCipherSuite HIGH:! aNULL: ! MD5:! RC4:! DES /etc/apache2/mods-available/ssl.conf:#SSLCipherSuite ECDH + AESGCM: DH + AESGCM: ECDH + AES256: DH + AES256: ECDH + AES128: DH + AES: ECDH + 3DES: DH + 3DES: RSA + AESGCM: RSA + AES: RSA + 3DES:! aNULL:! MD5:! DSS

الشيء المهم الذي يجب ملاحظته هو الملف /etc/apache2/mods-available/ssl.conf أو أيًا كان ملفك. افتح الملف باستخدام محرر مثل nano وانتقل إلى القسم # SSL Cipher Suite:. بعد ذلك ، استبدل الإدخال الموجود في التوجيه SSLCipherSuite بالإدخال أعلاه من موقع ويب Apache. تذكر التعليق على توجيهات SSLCipherSuite القديمة وأعد تشغيل Apache - في حالتي ، قمت بذلك عن طريق كتابة sudo /etc/init.d/apache2.

لاحظ أنه في بعض الأحيان قد تحتاج إلى إزالة أصفار معينة تمنحك درجة منخفضة في اختبار Qualys SSL (على سبيل المثال لأنه تم اكتشاف ثغرات أمنية جديدة) على الرغم من أنك استخدمت إعدادات Apache الموصى بها. مثال على ذلك إذا ظهر السطر التالي باللون الأحمر (فشل) في تقرير Qualys الخاص بك TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) الخطوة الأولى هي العثور على الكود الذي تحتاج إلى تغييره في توجيه Apache SSLCipherSuite. للعثور على الكود ، انتقل إلى https://www.openssl.org/docs/man1.0.2/apps/ciphers… - يعرض هذا الرمز كالتالي: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ECDHE-RSA-AES256-GCM-SHA384

خذ ECDHE-RSA-AES256-GCM-SHA384 وقم بإزالته من الإدخال الذي أضفته كتوجيه Apache SSLCipherSuite ثم قم بإضافته إلى النهاية بسبقه بـ:!

مرة أخرى ، أعد تشغيل Apache وأعد الاختبار

الخطوة الثالثة: الخاتمة

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

موصى به: