Защита SSL-сертификата и закрытого ключа на сервере apache?

#ssl #https #apache2 #hashicorp-vault

#ssl #https #apache2 #hashicorp-хранилище

Вопрос:

Обычно веб-серверу apache требуются SSL-сертификаты для загрузки из файла. Это позволяет хранить сертификаты на диске веб-сервера apache. Считается ли это угрозой безопасности? Существует ли набор правил для защиты этих сертификатов? У меня есть клиент, который считает, что это риск, и я хочу доказать ему обратное или предложить решение. До сих пор я не сталкивался с хорошим решением. Даже если мы используем такое решение, как HashiCorp vault, сертификаты все равно должны быть переданы на серверный диск apache. Любые предложения или рекомендации по защите этого ssl-сертификата или любые рекомендации по безопасному хранению ssl-сертификата очень полезны.

Комментарии:

1. Нет никаких рисков для размещения сертификата на сервере. Это не пароль…

Ответ №1:

Подход: 1 (более старый) Сохраняйте сертификаты на диске и защищайте каталог, в котором хранятся сертификаты. Следующие шаги — это вариант защиты сертификатов на диске.

  1. Измените разрешение каталога сертификатов на ‘700’, чтобы другие пользователи сервера не могли получить доступ (для чтения / записи / удаления) к файлам
  2. Измените разрешение каталогов apache bin и conf, в которых содержится путь к сертификатам и сценариям запуска. Это также должно быть ограничено для других пользователей
  3. Отключите sftp и scp для пользователя apache, чтобы избежать отправки каких-либо файлов за пределы сервера

Подход: 2 Интеграция с оборудованием HSM для создания и хранения SSL-сертификатов и повышения производительности за счет разгрузки шифрования и дешифрования через HSM. На рынке доступно несколько поставщиков для интеграции веб-сервера Apache с HSM, таких как Luna HSM от Thales (https://cpl.thalesgroup.com/resources/encryption/apache-http-server-luna-integration-guide ), nCipher HSM, AWS CloudHSM и т.д.

Ответ №2:

Закрытый ключ — это то, что вам нужно защитить; не сертификаты. Лучший способ защитить закрытый ключ — использовать аппаратное устройство, такое как смарт-карта, USB-токен или аппаратный модуль безопасности (HSM).

Цифровой сертификат содержит открытый ключ, который в основном распространяется публично. Даже если кто-то его получит, вряд ли он что-нибудь сможет с этим сделать.