bash: как узнать дату истечения TLS сертификата, который находится на удаленной машине?
Чтобы узнать дату истечения TLS-сертификата на удаленной машине, можно использовать команду openssl
по SSH для извлечения информации о сертификате.
Вот как это сделать:
1. Использование openssl
для получения даты истечения сертификата
Команда ниже подключается по SSH к удаленной машине, считывает TLS-сертификат по указанному порту и извлекает дату истечения.
1 2 |
ssh user@remote_host "echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -enddate" |
Пояснение:
user@remote_host
: замените на имя пользователя и адрес удаленной машины.yourdomain.com:443
: заменитеyourdomain.com
на домен или IP-адрес удаленной машины и порт443
(или другой порт, где находится сертификат).openssl s_client -servername yourdomain.com -connect yourdomain.com:443
: запрашивает сертификат с удаленного сервера.openssl x509 -noout -enddate
: извлекает только дату истечения из сертификата.
2. Пример скрипта для проверки даты истечения сертификата
Можно использовать скрипт Bash, который проверяет дату истечения и выводит оставшиеся дни до истечения: