Назад к обновлениям
New releaseJul 14, 2026

testssl.sh v3.2.4

Тестирование шифрования TLS/SSL на любом порту в любом месте

Поделиться

Введение

GitHub forks GitHub Repo stars GitHub Created At GitHub last commit GitHub commit activity Docker License Static Badge Static Badge Static Badge Vim Visual Studio Code

Mastodon Follow Bluesky

testssl.sh — это бесплатная утилита командной строки, которая проверяет службу сервера на любом порту на поддержку TLS/SSL-шифров, протоколов, а также на наличие некоторых криптографических уязвимостей.

Ключевые возможности

  • Чёткий вывод: вы легко можете определить, что хорошо, а что плохо.
  • Машиночитаемый вывод (CSV, два формата JSON), а также HTML-вывод.
  • Не требуется установка или настройка. Никаких gems, CPAN, pip и тому подобного.
  • Работает «из коробки»: Linux, MacOS, FreeBSD, NetBSD, WSL2, MSYS2/Cygwin, OpenBSD (требуется bash).
  • Предоставляется Dockerfile, а также официальный контейнер на DockerHub и GHCR.
  • Гибкость: вы можете тестировать любую службу с поддержкой SSL/TLS и STARTTLS, а не только веб-серверы на порту 443.
  • Инструментарий: несколько опций командной строки помогут вам запустить свой тест и настроить свой вывод.
  • Надёжность: функции тщательно протестированы.
  • Конфиденциальность: только вы видите результат, а не третья сторона.
  • Свобода: это 100% открытый исходный код. Вы можете посмотреть код и узнать, что происходит.
  • Разработка ведётся свободно и открыто на GitHub. Участие и вклады приветствуются.
  • Модульные тесты обеспечивают зрелость: проверка согласованности, корректности JSON, работа под Linux и MacOS и многое другое!

Лицензия

Это программное обеспечение является бесплатным. Вы можете использовать его на условиях GPLv2, см. LICENSE.

Атрибуция важна для будущего этого проекта — также и в интернете. Поэтому, если вы предлагаете сканер на основе testssl.sh в качестве общедоступного и/или платного сервиса в интернете, настоятельно рекомендуется сообщать вашей аудитории, что вы используете эту программу, и указывать, откуда её можно получить. Это помогает нам получать исправления ошибок, другие отзывы и больше вкладов.

Совместимость

Testssl.sh работает на любых дистрибутивах Linux/BSD и MacOS «из коробки». Начиная с версии 2.9 (очень старой) большинство ограничений из-за отключённых функций клиента openssl устранены благодаря проверкам на основе bash-сокетов. Поставляется старая версия с проблемным OpenSSL, но в наши дни вы также можете использовать любую версию LibreSSL или OpenSSL. testssl.sh также работает на других Unix-подобных системах «из коробки» при условии, что у них установлен /bin/bash версии >= 3.2 и стандартные утилиты, такие как sed и awk. Windows (с использованием MSYS2, Cygwin или WSL/WSL2) также поддерживается. При запуске testssl.sh выполняется неявная (тихая) проверка наличия двоичных файлов. Для System V Unix, вероятно, потребуется установить GNU grep.

Уведомления об обновлениях можно найти на GitHub или самые важные — в Mastodon или Bluesky. Twitter больше не используется.

Установка

Вы можете скачать ветку 3.3dev testssl.sh, просто клонировав этот git-репозиторий:

git clone --depth 1 https://github.com/testssl/testssl.sh.git --branch 3.3dev

3.3dev — это последняя ветка разработки, которая развилась из стабильной версии 3.2. Мы стараемся не проводить крупные эксперименты в ветке dev, однако суть разработки в том, что будут изменения, и изменениям может потребоваться время для созревания.

Docker

Testssl.sh имеет минимальные требования. Как уже говорилось, вам не нужно ничего устанавливать или собирать. Вы можете просто запустить его из каталога, в который он склонирован. Но если вы не хотите тянуть репозиторий GitHub в выбранный вами каталог, вы можете вытянуть контейнер из DockerHub и запустить его:

docker run --rm -it ghcr.io/testssl/testssl.sh <your_cmd_line>

Или, если вы клонировали этот репозиторий, вы также можете просто cd в INSTALLDIR и запустить

docker build . -t imagefoo && docker run --rm -t imagefoo testssl.net

Для получения дополнительной информации обратитесь к Dockerfile.md.

Без гарантии

Использование программы осуществляется без каких-либо гарантий. Используйте её на свой страх и риск.

Testssl.sh предназначен для использования как автономный инструмент командной строки. Хотя мы старались применить лучшие практики безопасности и санировать внешние данные, мы не можем гарантировать, что программа не содержит уязвимостей. Работа в качестве веб-сервиса может нести риски безопасности, и вам рекомендуется применять дополнительные меры безопасности. Проверяйте ввод от пользователя и от всех служб, к которым выполняется запрос.

Статус

Учитывая текущий состав разработчиков, мы поддерживаем только версии n-1. Вы смотрите на ветку 3.3.dev, где ведётся дальнейшая разработка, прежде чем 3.4 станет стабильной версией, а 3.2 — старой стабильной. Если вы сомневаетесь в изменениях, вам нужно использовать 3.2. Версия 3.0.10 была последней, новых обновлений не будет.

Документация

  • .. она существует для чтения. Пожалуйста, делайте это :-) — по крайней мере, перед тем как задавать вопросы. См. man-страницу в форматах groff, html и markdown в ~/doc/.
  • https://testssl.sh/ поможет вам начать.
  • Также есть документация, сгенерированная ИИ, см. также ниже.
  • Will Hunt предоставил более подробное описание. Хотя оно было написано для старой версии (2.8), оно всё ещё содержит справочную информацию.

Участие в разработке

Категории