SSL-сертификаты с парольной фразой и перезапуском службы
Сегодня я буду просить что-то гораздо менее техническое, чем обычно. Действительно, это более или менее риторический вопрос, но я хотел бы прочитать ваши советы по этой теме.
В своей повседневной работе мне приходится иметь дело с большим количеством веб-серверов и, таким образом, сертификатов SSL. На этой работе мне также приходится иметь дело с безопасностью, которая не совсем проста, если вы хотите найти хороший баланс между безопасностью и пустой тратой времени.
Ооо, вопрос такой:
Есть ли у вас способ перезапустить ваш веб-сервер NGinx/Apache/etc, не имея оператора перед консолью для ввода парольной фразы сертификатов?
Я имею в виду, что у меня есть решение просто удалить фразу-пароль, чтобы иметь возможность автоматизировать процесс, но это звучит немного жутко, особенно если мой сервер скомпрометирован (во время работы все данные зашифрованы в противном случае), люди сможет получить и использовать сертификаты без какой-либо защиты парольной фразы.
Дополнительная информация: Я не могу использовать скрипты, отличные от оригинального, предоставленного дистрибутивом, для запуска сервисов. В основном мы используем веб-серверы NGINX для обработки запросов веб-интерфейса и SSL. Мы не хотим использовать Varnish или любой другой оптимизатор SSL.
2 ответа
Помимо удаления ключевой фразы из закрытого ключа с помощью:
openssl rsa -in server.key.org -out server.key
Вы могли бы использовать SSLPassPhraseDialog
директива:
SSLPassPhraseDialog exec:/usr/local/apache/sbin/pp-filter
Намерение состоит в том, что эта внешняя программа сначала запускает проверки безопасности, чтобы убедиться, что злоумышленник не скомпрометировал систему, и только после успешного прохождения этих проверок она предоставляет фразу-пароль
Но вы должны предоставить эти проверки безопасности, чтобы определить, была ли система взломана. Который ИМХО не более безопасен, чем удаление ключевой фразы из ключа.
Если ваша система взломана и злоумышленник получил привилегии root, скрипт парольной фразы также может быть изменен.
Так что это либо лучшая безопасность с парольной фразой, либо удобные перезапуски.
Я мог бы порекомендовать вам IBM HTTP Server, они используют kdb и спрятали пароли для этой задачи. =) Недостатком является то, что этот IHS не включен SNI. Поэтому вам понадобится много публичных IP-адресов или сертификатов SAN.