
مكتبة مسح SSL/TLS سريعة وقوية.
SSLyze هي أداة مسح SSL/TLS سريعة وقوية ومكتبة بايثون.
يمكن لـ SSLyze تحليل تكوين SSL/TLS لخادم عن طريق الاتصال به، وذلك لضمان استخدام إعدادات تشفير قوية (الشهادة، مجموعات التشفير، المنحنيات الإهليليجية، إلخ)، وأنه غير معرض للهجمات المعروفة على TLS (Heartbleed, ROBOT, OpenSSL CCS injection، إلخ).
على أنظمة Windows و Linux (x86 أو x64) و macOS، يمكن تثبيت SSLyze مباشرة عبر pip:
$ pip install --upgrade pip setuptools wheel
$ pip install --upgrade sslyze
$ python -m sslyze www.yahoo.com www.google.com "[2607:f8b0:400a:807::2004]:443"
يمكن استخدامه أيضاً عبر Docker:
$ docker run --rm -it nablac0d3/sslyze:6.1.0 www.google.com
أخيراً، يمكن تنزيل ملف تنفيذي مُجمَّع مسبقاً لنظام Windows من صفحة الإصدارات.
نموذج برنامج نصي يصف كيفية استخدام واجهة برمجة تطبيقات بايثون لـ SSLyze متاح في ./api_sample.py.
التوثيق الكامل لواجهة برمجة تطبيقات بايثون لـ SSLyze متاح هنا.
افتراضياً، سيتحقق SSLyze من نتائج مسح الخادم مقابل تكوين TLS "المتوسط" الموصى به من Mozilla، وسيعيد رمز خروج غير صفري إذا كان الخادم غير متوافق.
$ python -m sslyze mozilla.com
Checking results against Mozilla's "intermediate" configuration. See https://ssl-config.mozilla.org/ for more details.
mozilla.com:443: OK - Compliant.
يمكن تكوين تكوين Mozilla المراد التحقق منه عبر --mozilla_config={old, intermediate, modern}:
$ python -m sslyze --mozilla_config=modern mozilla.com
Checking results against Mozilla's "modern" configuration. See https://ssl-config.mozilla.org/ for more details.
mozilla.com:443: FAILED - Not compliant.
* certificate_types: Deployed certificate types are {'rsa'}, should have at least one of {'ecdsa'}.
* certificate_signatures: Deployed certificate signatures are {'sha256WithRSAEncryption'}, should have at least one of {'ecdsa-with-SHA512', 'ecdsa-with-SHA256', 'ecdsa-with-SHA384'}.
* tls_versions: TLS versions {'TLSv1.2'} are supported, but should be rejected.
* ciphers: Cipher suites {'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384', 'TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256', 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256'} are supported, but should be rejected.
بدلاً من ذلك، يمكنك التحقق من تكوين TLS مخصص خاص بك عن طريق تقديم ملف JSON يتبع تنسيق تكوين TLS الخاص بـ Mozilla:
$ python -m sslyze --custom_tls_config custom_tls_config_example.json mozilla.com
Checking results against custom TLS configuration.
mozilla.com:443: OK - Compliant.
انظر custom_tls_config_example.json للحصول على مثال لتكوين TLS مخصص يمكن استخدامه بواسطة SSLyze.
يمكن استخدام هذه الوظيفة لتشغيل فحص SSLyze بسهولة كخطوة في CI/CD لضمان الامتثال لـ TLS.
لإعداد بيئة تطوير:
$ pip install --upgrade pip setuptools wheel
$ pip install -e .
$ pip install -r requirements-dev.txt
يمكن بعد ذلك تشغيل الاختبارات باستخدام:
$ invoke test
Copyright (c) 2026 Alban Diquet
SSLyze متاحة بموجب شروط رخصة GNU Affero General Public License (AGPL). انظر LICENSE.txt للتفاصيل والاستثناءات.