Веб-сервер → Как проверить SSL-сертификат в командной строке
Допустим, вы склонировали из репозитория проект, а в нём в настройках веб-сервера уже настроено https-подключение и прописаны сертификат и ключ. И интересно посмотреть, для какого домена и не просроченный-ли этот самый сертификат. Сделать это можно в командной строке при помощи OpenSSL
1 | openssl x509 -in cert.pem -text -noout
|
Ключ -text говорит о том, что будет выведена вся информация сертификата, а не отдельные детали, вроде -subject, -dates и т.п. -noout убирает собственно сам сертификат из вывода в консоль
Веб-сервер → Конвертация PFX в PEM
Потребовалось как-то обновить на сервере SSL-сертификат, который я и заполучил. Только вот не оказалось ключа шифрования, без которого установить сертификат не представляется возможным. Однако ни о каких ключах клиент и слыхом и не слыхивал, зато скинул какой-то PFX-файл, к ключу и сертификату имеющий непосредственное отношение. Оставалось только извлечь их оттуда.
1 2 | openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.pem
openssl pkcs12 -in domain.pfx -nocerts -nodes -out server.key
|
Вжух и готово, domain.pem - клиентский сертификат, server.key - ключ шифрования. На вид, конечно, решение простое и так оно и есть, только ему предшествовали часы гугления и борьба с ошибкой вроде "Unable to load Private Key... ANY PRIVATE KEY", я несколько раз даже было усомнился, что искомый ключ в PFX-файле имеется :)
Apache → Настройка HTTPS в Apache
Нового здесь ничего не будет, всё это миллионы раз описано в документации и подобных записях по блогам. Так что оставлю здесь эту заметку для себя, чтобы не искать каждый раз, когда это потребуется.
В двух словах - что такое HTTPS и с чем его едят.
HTTPS - это расширение протокола HTTP, поддерживающий шифрование. Данные, передаваемые подобным образом, шифруются с использованием SSL или TLS.
В данной заметке будет создаваться самоподписанный сертификат и хотя браузеры начнут ругаться, что такой сертификат не является доверенным, но свою задачу выполнять он всё таки будет, т.е. если и не исключит возможность прослушивания при помощи тех же снифферов, например, но, по меньшей мере, сильно затруднит жизнь некоторых хацкеров. И что немаловажно - такой сертификат не будет стоить ни копейки, в отличии от сертификатов, подписанных компаниями-сертификаторами :)