Как проверить дату истечения срока действия SSL-сертификата с помощью OpenSSL

How to Check the SSL Certificate Expiration Date with OpenSSL

Срок действия SSL-сертификатов составляет всего один год. Если Вы не обновите сертификат до истечения срока, Ваш сайт станет недоступным для посетителей, поскольку браузеры будут отмечать его как потенциально уязвимый для угроз безопасности.

Знание того, когда истекает срок действия Вашего сертификата, поможет Вам избежать ненужных хлопот и перебоев в работе сайта. Быстрый способ проверить срок службы Вашего сертификата – это воспользоваться популярной криптографической библиотекой. В этом руководстве Вы узнаете, как проверить срок действия сертификата с помощью OpenSSL. Следуйте этим командам, и не позволяйте сроку действия Вашего SSL-сертификата влиять на функциональность Вашего сайта.


Команда OpenSSL для проверки даты истечения срока действия сертификата

OpenSSL предлагает несколько различных команд для получения даты истечения срока действия сертификата. Конкретная команда зависит от формата Вашего файла сертификата и места его хранения. Здесь мы рассмотрим наиболее распространенные сценарии в Linux и Windows:

  • Сертификат, хранящийся на сервере
  • Файл сертификата в кодировке PEM

Дата истечения срока действия сертификата Опции команд OpenSSL

Проверка срока действия SSL-сертификата на локальном сервере с помощью OpenSSL аналогична проверке на удаленном сервере. Разница в том, что вместо указания удаленного домена и порта, Вы будете использовать localhost и соответствующий порт, на котором запущен Ваш локальный сервер.

В Linux

Проверьте срок действия SSL-сертификата в командной строке Linux:

echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -enddate

Замените yourdomain.com на Ваше настоящее доменное имя.

В Windows

  1. Откройте Командную строку или PowerShell Нажмите Win + R, введите cmd или powershell и нажмите Enter.
  2. Выполните команду OpenSSL, чтобы проверить срок действия сертификата:

echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>nul | openssl x509 -noout -enddate

Замените yourdomain.com на Ваше настоящее доменное имя. 2> нулевая часть используется вместо
2> /dev/null, чтобы отбрасывать сообщения об ошибках в Windows.

На MacOS

Проверка срока действия SSL-сертификата в системе macOS такая же, как и в Linux, поскольку и macOS, и Linux являются Unix-подобными операционными системами. Команды и их использование идентичны.


Анализ команды и вывода

Теперь давайте рассмотрим каждый элемент внутри команды для более технического понимания того, как OpenSSL проверяет срок действия. Рассмотрим следующую команду:

echo | openssl s_client -servername example.com -connect example.com:443 2>nul | openssl x509 -noout -enddate

И выход:

notAfter=May 23 12:00:00 2025 GMT

Вот что означает каждая часть:

  1. echo |: Посылает пустой входной сигнал команде OpenSSL s_client. Это гарантирует, что команда завершится, не требуя вмешательства пользователя.
  2. openssl s_client -servername example.com -connect example.com:443:
  3. 2>/dev/null (Linux) или 2>nul (Windows):
    • Перенаправляет стандартную ошибку (stderr) в /dev/null (Linux) или nul (Windows), эффективно отбрасывая все сообщения об ошибках. Он очищает вывод, показывая только необходимую информацию.
  4. | openssl x509 -noout -enddate:
    • Труба (|) передает вывод предыдущей команды в качестве входного сигнала для openssl x509.
    • openssl x509: Эта команда используется для управления сертификатами X.509.
    • -noout: Запрещает команде распечатывать сертификат в формате PEM.
    • -enddate: Отображает только дату истечения срока действия сертификата.
  5. notAfter=May 23 12:00:00 2025 GMT:
    • Как объяснялось ранее, он указывает, что срок действия сертификата истекает 23 мая 2025 года в 12:00:00 GMT.

Как проверить дату истечения срока действия SSL-сертификата из файла в кодировке PEM

Файл в кодировке PEM представляет собой формат в кодировке base64 с такими разделителями, как —–BEGIN CERTIFICATE—– и —–END CERTIFICATE—–. Чтобы проверить срок действия файла сертификата в кодировке PEM с помощью OpenSSL, выполните следующие действия:

В Linux и MacOS

  1. Откройте Ваше терминальное приложение.
    Перейдите в каталог, содержащий Ваш PEM-файл. Используйте команду cd, чтобы перейти в каталог, в котором находится файл Вашего сертификата:

    cd /path/to/your/certificate/directory
  2. Используйте следующую команду, чтобы проверить срок годности. Замените файл your_certificate.pem на его фактическое имя.

    openssl x509 -in your_certificate.pem -noout -enddate

В Windows

  1. Откройте Командную строку или PowerShell. Нажмите Win + R, введите cmd или powershell и нажмите Enter.
  2. Перейдите в каталог, содержащий Ваш PEM-файл. Используйте команду cd, чтобы перейти в каталог, где находится файл Вашего сертификата:

    cd C:\path\to\your\certificate\directory
  3. Используйте следующую команду, чтобы проверить срок годности:

    openssl x509 -in your_certificate.pem -noout -enddate

Убедитесь, что у Вас установлен OpenSSL и добавлен в PATH. Если нет, Вам может потребоваться указать полный путь к двоичному файлу openssl.exe.


Нижняя линия

Вы можете проверить срок действия сертификата с помощью OpenSSL на различных платформах. Несмотря на небольшие различия в синтаксисе команд, обусловленные особенностями операционной системы, результаты выполнения этих команд предоставляют важную информацию о сроке действия Ваших SSL-сертификатов.

В поле notAfter указывается точная дата и время, когда Ваш сертификат перестанет быть действительным. Мониторинг этой информации позволит Вам вовремя обновлять сертификаты, чтобы поддерживать безопасные коммуникации и избежать сбоев в работе сервисов.

Сэкономьте 10% на SSL-сертификатах при заказе сегодня!

Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10

Написано

Опытный автор контента, специализирующийся на SSL-сертификатах. Превращает сложные темы кибербезопасности в понятный, увлекательный контент. Вносите свой вклад в повышение уровня цифровой безопасности с помощью впечатляющих рассказов.