
빠르고 강력한 SSL/TLS 스캐닝 라이브러리.
SSLyze는 빠르고 강력한 SSL/TLS 스캐닝 도구이자 Python 라이브러리입니다.
SSLyze는 서버에 연결하여 SSL/TLS 구성을 분석함으로써 강력한 암호화 설정(인증서, 암호 제품군, 타원 곡선 등)을 사용하고 알려진 TLS 공격(Heartbleed, ROBOT, OpenSSL CCS 인젝션 등)에 취약하지 않은지 확인할 수 있습니다.
Windows, Linux(x86 또는 x64) 및 macOS에서는 pip를 통해 SSLyze를 직접 설치할 수 있습니다.
$ 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 실행 파일은 Release 페이지에서 다운로드할 수 있습니다.
SSLyze의 Python API 사용 방법을 설명하는 샘플 스크립트는 ./api_sample.py에서 확인할 수 있습니다.
SSLyze Python API에 대한 전체 문서는 여기에서 확인할 수 있습니다.
기본적으로 SSLyze는 서버의 스캔 결과를 Mozilla의 권장 "중간" TLS 구성과 비교하여 서버가 준수되지 않은 경우 0이 아닌 종료 코드를 반환합니다.
$ 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.
또는 Mozilla의 TLS 구성 형식을 따르는 JSON 파일을 제공하여 사용자 지정 TLS 구성과 비교할 수 있습니다.
$ python -m sslyze --custom_tls_config custom_tls_config_example.json mozilla.com
Checking results against custom TLS configuration.
mozilla.com:443: OK - Compliant.
사용자 지정 TLS 구성의 예는 custom_tls_config_example.json을 참조하세요.
이 기능을 사용하면 TLS 준수를 보장하기 위해 CI/CD 단계로 SSLyze 스캔을 쉽게 실행할 수 있습니다.
개발 환경을 설정하려면:
$ pip install --upgrade pip setuptools wheel
$ pip install -e .
$ pip install -r requirements-dev.txt
그런 다음 다음 명령으로 테스트를 실행할 수 있습니다.
$ invoke test
저작권 (c) 2026 Alban Diquet
SSLyze는 GNU Affero General Public License (AGPL) 조건에 따라 제공됩니다. 자세한 내용과 예외는 LICENSE.txt를 참조하세요.