testssl/testssl.sh

Testing TLS/SSL encryption anywhere on any port

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 55 minutes ago
Added to GitGenius on September 7th, 2026
Created on July 1st, 2014
Open Issues & Pull Requests: 245 (+0)
GitHub issues: Enabled
Number of forks: 1,146
Total Stargazers: 9,198 (+0)
Total Subscribers: 173 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

testssl.sh is a command-line tool that tests TLS/SSL encryption on any server and port, checking for supported ciphers, protocols, and cryptographic weaknesses.

The tool addresses the need to audit TLS/SSL configurations across diverse infrastructure without requiring specialized setup or dependencies. It works by connecting to services on any port and analyzing their cryptographic capabilities, producing clear pass-or-fail assessments of security posture. The approach requires only a bash shell and OpenSSL, making it portable across Linux, macOS, FreeBSD, NetBSD, WSL2, MSYS2/Cygwin, and OpenBSD, with Docker containers also available.

Developers should choose this tool when they need to audit TLS/SSL configurations on any service, not just HTTPS servers. It suits environments where installing additional dependencies is impractical, and where results must remain private and verifiable. The tool's flexibility to test STARTTLS services and non-standard ports distinguishes it from web-focused SSL checkers. Machine-readable output in CSV and JSON formats enables integration into automated security workflows and reporting pipelines.

The project maintains unit tests that verify consistency, JSON validity, and cross-platform compatibility on Linux and macOS. Development activity occurs openly on GitHub with active participation in pull requests and issue tracking, as evidenced by ongoing experimental work on the codebase.