Мы являемся софтверной компанией и предлагаем нашим клиентам хостинг. У нас есть VPS в большом голландском центре обработки данных. Для некоторых приложений нам понадобится сертификат SSL, который мы хотели бы зашифровать с помощью файла ключей, защищенного паролем.
Наш VPS время от времени перезагружается из-за каких-либо обновлений, но это означает, что наш apache запускается не сразу, потому что нужны пароли. Это приводит к простою и, конечно же, является большой проблемой.
Мы можем предоставить пароли для нашего центра обработки данных VPS или создать сертификаты на основе ключевых файлов без паролей. Оба решения кажутся не самыми лучшими, поскольку они ставят под угрозу безопасность наших сертификатов. Какое лучшее решение этой проблемы?
Что бы ни случилось, вам нужно будет расшифровать ключевой файл, чтобы использовать его. Есть несколько вариантов.
Мое первое предложение - спросить себя, зачем вам нужно шифровать SSL-сертификат и какие потери это приведет к вашей работе, если служба не работает, скажем, на 2 часа, пока она не будет обнаружена. Каковы потенциальные потери для вас в случае нарушения сертификата и сколько времени потребуется на исправление? Если он стоит дороже, чем сам сертификат SSL, и время восстановления в случае нарушения слишком велико, то, возможно, будет правильным сохранить его в зашифрованном виде.
Откровенно говоря, вы не можете съесть свой торт и съесть его. Если вы хотите зашифровать ключ SSL, вы делаете это за счет нелегальных перезапусков и задержек в работе. Если вы зашифруете его, но предоставите способ автоматизировать расшифровку, это, вероятно, будет столь же бесполезным или потенциально более опасным, чем расшифровка ключа в первую очередь. Если вы возьмете на себя ответственность поставщика VPS, то вы просто перекладываете проблему на них, и это, вероятно, будет стоить вам очень дорого, чтобы дать вам гарантии, которые вы хотите, или вам придется признать, что будут времена, когда поставщик VPS не соответствует вашим ожиданиям, когда они перезагружают VPS.
Мое предложение - производить перезагрузку своевременно и с предупреждением, я не думаю, что было бы неразумно просить об этом вашего VPS-провайдера. Таким образом не должно быть инцидента, который вы хотя бы не можете взять под контроль.
* Проблема использования SSLPassPhraseDialog Это похожая, более распространенная и проблемная ошибка, которую люди совершают при работе с cron. То есть разверните задание cron для запуска от имени пользователя root, а затем сделайте владельцем файлов то, что запускается, пользователю без полномочий root (например, FTP), который потенциально может изменить приложение для повышения привилегий. Если вы пишете программу, которая выводит парольную фразу, сделайте шаги, чтобы убедиться, что файл не читается и не может быть изменен кем-либо, кроме root (это включает в себя обеспечение того, чтобы его родительский каталог, в котором он хранится, не принадлежал кому-либо).