Где взять приватный ключ сертификата
Перейти к содержимому

Где взять приватный ключ сертификата

  • автор:

Где мой Приватный ключ?
Где притаился и прячется pKey ? Как найти мой секретный ключ

Где мне найти мой Private Key? — общий ответ — Приватный ключ находится рядышком с сертификатом в секретной, специальной, защищенной директории вашего сервера (компьютера) которая обычно называется хранилищем сертификатов.

Что такое private key (pKey) зачем он нужен и с чем его едят?

Для всех SSL-сертификатов для работы требуется закрытый ключ. Закрытый ключ — это отдельный файл, который используется при шифровании / расшифровке данных, отправляемых между вашим сервером и подключающимися клиентами. Закрытый ключ создается вами — владельцем сертификата — когда вы запрашиваете свой сертификат с помощью запроса подписи сертификата (CSR). Центр сертификации, предоставляющий ваш сертификат, не создает и не имеет ваш закрытый ключ. Вы храните ваш Приватный ключ как зеницу ока.

Если вы еще не установили свой сертификат, наиболее вероятное местоположение вашего закрытого ключа находится на компьютере или сервере, на котором вы создали CSR. Когда вы сгенерировали эту CSR, вы бы попросили сервер сохранить два файла — для OpenSSL вы можете запустить команду

Где же находится мой Private Key

Если ваш сертификат уже установлен, выполните следующие действия, чтобы найти файл секретного ключа для этих популярных операционных систем.

Apache

Местоположение вашего личного ключевого файла будет указано в главном файле конфигурации Apache, который называется httpd.conf или apache2.conf. Директива SSLCertificateKeyFile укажет путь на вашем сервере, где хранится ваш ключ.

Nginx

Вы сможете найти местоположение секретного ключа в файле виртуальных хостов вашего сайта. Перейдите к серверному блоку для этого сайта (по умолчанию в каталоге /var/www/). Откройте основной файл конфигурации для сайта и найдите директиву ssl_certificate_key которая предоставит вам путь к файлу для частного ключа (некоторые пользователи имеют отдельный файл конфигурации для своего SSL, например ssl.conf).

Windows (IIS)

На серверах Windows ОС управляет вашими файлами сертификатов для вас в скрытой папке, но вы можете получить закрытый ключ, экспортировав файл «.pfx», содержащий сертификаты и закрытый ключ. Подробнее процедура трансфера описана в разделе Экпорт-Ипорт сертификатов

Где еще может быть мой приватный ключ?

Если вы работаете с сервером, который обеспечивает рабочие соединения HTTPS, то ключ находится где-то на этом сервере или доступен для этого сервера на другом сервере, в противном случае протокол HTTPS работать не будет. Возможно, ваша организация использует специальную настраиваемую конфигурацию. Вы можете попробовать выполнить поиск на вашем сервере файла «.key» или выполнить шаги, по установке нового сертификат, которые должны указать где сохранить частного ключ. На некоторых платформах OpenSSL сохранит файл .key в том же каталоге, откуда была запущена команда -req

Если вы еще не установили сертификат и не можете найти ключ, возможно, он утерян. Если вы создали CSR, но не можете найти файл ключа, проще всего переиздать свой сертификат. Начните с создания нового PrivateKey или CSR , чтобы сохранить закрытый ключ в известном местоположении и соедините сертификат с этим новым ключом.

Частный, секретный, приватный ключ является «ключевым ключом», который расшифровывает зашифрованные данные, отправленные на сервер во время сеанса SSL. Если секретный ключ был скомпрометирован, зашифрованные данные могут быть легко дешифрованы тем, кто получил этот закрытый ключ. Таким образом, жизненно важно, чтобы закрытый ключ оставался защищенным на сервере в любое время. Открытый ключа встроена в файл CSR и отправляется в компанию CA. При одобрении и выдаче сертификата SSL компания Центр сертификации в цифровом виде подписывает открытый ключ и отправляет его вам для установки на сервер в соответствии с вашим закрытым ключом.

Чтобы в общем ответить на вопрос «Где мой закрытый ключ?» — Приватный ключ храниться на сервере или в любом случае доступен серверу. Как управлять частным ключом и где он может быть найден, все зависит от используемого серверного программного обеспечения. Все серверные программные платформы будут управлять ими по-разному, поэтому, пожалуйста, обратитесь к поставщику вашего сервера или в службу поддержки, если вы не можете найти их на своем сервере.

Как найти или восстановить секретный ключ SSL сертификата в среде IIS MicroSoft?

SSL-сертификат установлен, но отсутствует закрытый ключ. Каковы шаги по восстановлению секретного ключа сертификата SSL в среде Microsoft Internet Information Services (IIS)? Сертификаты SSL не включают закрытый ключ. Закрытый ключ находится на сервере, который сгенерировал запрос подписи сертификата (CSR). При правильной установке сертификат сервера будет соответствовать закрытому ключу, как показано ниже.

  • Сертификат устанавливается не на том же сервере, на котором сгенерирован запрос CSR.
  • Отложенный запрос — CSR был удален из IIS.
  • Сертификат был установлен с помощью мастера импорта сертификатов, а не через IIS.

Решение: Чтобы восстановить закрытый ключ, выполните следующие действия.

  1. Нажмите кнопку Пуск и выберите команду Выполнить .
  2. Введите mmc и нажмите OK .
  3. В меню «Файл» выберите « Добавить / удалить оснастку» .
  4. В появившемся новом окне нажмите « Добавить» .
  5. Выберите « Сертификаты» и нажмите « Добавить» .

Шаг 2 — Импорт сертификата сервера

    Разверните дерево сертификатов (локальный компьютер) в левой панели предварительного просмотра.

    Найдите файл сертификата сервера (например, server.cer) и дважды щелкните его. Откроется диалоговое окно «Сертификат».

Если Windows смог восстановить закрытый ключ, вы увидите следующее сообщение:

NO russia - мы не осблуживаем резидентов из россииCopyright © 1997-2023 adgrafics

Настройка HTTPS для чайников

HTTPS (Hypertext Transfer Protocol Secure) — расширение протокола HTTP поддерживающее шифрование. Данные, передаваемые по протоколу HTTPS «упаковываются» в криптографический протокол SSL или TLS, тем самым обеспечивается защита этих данных. В отличие от HTTP для HTTPS по умолчанию используется TCP-порт 443.

В данной статье я расскажу о том, как бесплатно (90 дней) получить сертифицированные SSL ключи для своего сервера и настроить HTTPS соединения. На данный момент в русскоязычных источниках эта информация представлена разрозненно, поэтому данную статью можно использовать как руководство по получению подписанных ключей и быстрой настройке HTTPS.

Введение

Чтобы подготовить сервер для обработки https-соединений, администратор должен получить и установить в систему сертификат для этого веб-сервера. Сертификат можно создать самостоятельно с помощью Unix утилиты ssl-ca из пакета OpenSSL, но подписанный данным методом сертификат не является безопасным и большинство браузеров выдают предупреждения об этом. Часть агентов также блокирует сайты с такими сертификатами, например IPhone приложения.

Сертификаты подписанные компаниями-сертификаторами избавлены от данной проблемы, но требуют оплаты для использования. Основные компании-сертификаторы: VerySign, SSLCOM, DigiCert и другие. Так сложилось, что я предпочитаю использовать SSLCOM в основном из-за их 90-дневного бесплатного периода использования для новых ключей, получение которого и будет описано в данной статье. За три месяца можно основательно протестировать проект, понять приоритеты, сделать полноценный запуск и в дальнейшем уже решить будете ли вы продлевать действие сертификата за деньги.

Запрос на получение сертификата (CSR)

CSR — запрос на получение сертификата, требуется для подписи ключей компанией-сертификатором. Я создаю его в консоли Unix-систем, например в терминале на стороне сервера. Если у вас нет такой возможности, вы можете создать CSR онлайн: https://www.reg.ru/sslcertificate/generate_key_and_csr

Все поля CSR должны заполняться на английском. Код страны — двух буквенный Alpha2 (RU для России).

your_domain_name — имя домена для которого создается сертификат

Common name — адрес домена (без www). Wildcart записи вида *.domen.com не поддерживаются на бесплатном тарифе.

example

Скопируйте полученный ключ <your_domain_name>.key и файл запроса <your_domain_name>.csr в надежное место.

Получение подписанных SSL ключей на 90-дневной период

Подписывать ключи будем у http://ssl.com. Для начала работы войдите на сервис или зарегистрируйтесь.

После входа попадаем на страницу задач и выбираем buy certificate для продолжения.

page

На открывшейся странице выбираем Free SSL.

page

Нажимаем кнопку GET и попадаем на первый шаг процесса подписания нашего сертификата. В открывшейся странице выберите чекбокс I want to submit my CSR now для добавления полученного нами на предыдущем шаге CSR.

В данной статье мы будем настраивать Nginx поэтому из выпадающего списка я выбрал соответствующую опцию.

page

Если CSR запрос был сформирован правильно, то на следующем шаге вас попросят принять условия использования. После принятия вы попадаете в форму ввода дополнительной информации, где от вас потребуется ввод адреса и почтового индекса. Далее информация для контактных лиц.

Пятый шаг — подтверждение домена. Возможно два варианта, размещение файла на сервере или подтверждение по электронной почте. Адреса требуемые для подтверждения через email не всегда доступны, поэтому я обычно выкладываю на сервер полученный файл.

page

Пример конфигурации для Nginx (файл D3AD7299FFC0954B0FD047063ABB7EFD.txt лежит в папке /home/user ):

После получения подписанного сертификата можно будет удалить файл и изменения в настройках.

Если проверку вы прошли успешно, остается только ждать подтверждения от компании-сертификатора, что может занять от нескольких часов до суток.

page

После добавления ключей компанией сертификатором вам будет выслано уведомительное письмо. Откройте страницу заказа сертификата и загрузите его к себе на компьютер. Для Nginx вы получите файл ca_bundle.txt

Полученный файл переименуйте в формат <your_domain_name>.bundle.crt и вместе с ключом который мы создали на первом шаге ( <your_domain_name>.key ) положите на сервер.

Настройка Nginx для работы с SSL

Для включения SSL в Nginx добавьте в конфигурацию сервера следующие настройки:

Для автоматического направления всех HTTP запросов на HTTPS, обычно достаточно следующей конфигурации:

Приватный ключ SSL: как его создать и найти?

Организации, выдающие SSL сертификаты безопасности, не имеют доступа к вашему закрытому (или приватному) ключу шифрования – и не должны иметь – поскольку закрытые ключи создаются на уровне пользователя, то есть на вашем сервере или компьютере. Даже если Вы генерируете CSR запрос и приватный ключ на нашем сайте, Вы должны сохранить его у себя, так как на нашем сервере информация о ключе не сохраняется. Два главных фактора, от которых зависит криптографическая безопасность закрытого ключа, – это количество и случайная последовательность простых чисел, используемых при его создании.

По сути, закрытый ключ — это файл с набором чисел, сгенерированных случайным образом. Конфиденциальность этой информации является гарантией безопасности вашего ключа на протяжении всего периода использования SSL-сертификата. Чтобы обеспечить сохранность вашего закрытого ключа, доступ к нему следует разрешать только тем членам вашей организации, кому он действительно необходим, например, системному администратору, который занимается установкой SSL сертификата. Кроме того, рекомендуется изменять закрытый ключ (и перевыпускать соответствующий SSL сертификат) всякий раз, когда сотрудник, располагавший доступом к нему, покидает вашу организацию.

Как найти приватный ключ SSL?

Ваш приватный ключ создается, как правило, в тот момент, когда Вы генерируете CSR запрос, или же непосредственно перед этим. Если для управления вашими приватными ключами вы используете OpenSSL (например, вы пользуетесь дистрибутивами Linux на основе Debian или Red Hat), то при выполнении команды OpenSSL req приватный ключ обычно сохраняется в том же каталоге, где была инициирована команда. Если вы используете веб-сервер Microsoft IIS, то ваш закрытый ключ SSL хранится в скрытой папке на сервере-отправителе запроса на выпуск SSL сертификата (который еще называется Certificate Signing Request или сокращенно CSR-запрос). При правильной установке, сертификат сервера будет совпадать с приватным ключом. Если приватный ключ отсутствует, это может означать:

  • Сертификат не был установлен на сервере, использовавшемся для генерации CSR-запроса (актуально для серверов Microsoft IIS и некоторых других).
  • Ожидающий обработку CSR запрос был сброшен веб-сервером IIS.
  • Сертификат был установлен с помощью мастера импорта сертификатов, а не средствами IIS.

Как создать закрытый ключ?

Если вы не смогли найти ваш закрытый ключ SSL или еще не создали его, вам нужно будет это сделать, если вы хотите получить SSL сертификат. Как правило закрытый ключ нужно создавать на сервере, на котором вы планируете установить сертификат. При этом его нужно создать перед тем, как генерировать CSR-запрос или же вместе с ним, если ваше устройство это позволяет. Некоторые программы автоматизируют эти задачи, что значительно ускоряет весь процесс. Чтобы выпустить SSL сертификат, сертификационный центр «подписывает» ваш CSR-запрос, именно поэтому при оформлении сертификата, с Вами будут говорить именно о генерации CSR запроса на получение SSL сертификата, а не о создании приватного ключа.

Здесь вам важно понимать, что создание CSR запроса подразумевает и создание приватного ключа. Определенному CSR запросу соответствует только один приватный ключ. Поэтому, если вы утеряли закрытый ключ (не сохранили его или случайно удалили), необходимо инициировать перевыпуск SSL сертификата с новым приватным ключом. Для этого, соответственно, необходимо создать новый CSR запрос. Поставщики SSL-сертификатов, должны предоставлять информацию о генерации приватного ключа и CSR-запроса. Инструкции, по созданию CSR-запроса и приватного ключа вы можете найти на нашем сайте. Вы также можете использовать сервис для создания приватного ключа и CSR-запроса на нашем сайте. Для этого необходимо заполнить соответствующие поля в формуляре на латинице по примеру, как показано на изображении:

Заполнение данных для получения приватного ключа

В поле страна важно указать сокращенное название страны прописными буквами. Далее следует заполнить город и область, в которых вы проживаете или в которых зарегистрирована ваша организация, если сертификат заказываете как юридическое лицо. Если вы заказываете OV SSL сертификат с проверкой компании или еще более надежный EV SSL сертификат с расширенной проверкой, важно, чтобы заполненные данные совпадали с информацией в регистрационных документах вашей фирмы. Если заказываете простой сертификат, это не настолько важно, главное — не оставлять пустых полей. Также при заполнении формы лучше не использовать специальных символов, так как не все центры сертификации принимают содержащие их CSR запросы.

В поле «Доменное имя» введите домен, для которого вы оформляете SSL сертификат. Если вы заказали Wildcard SSL сертификат с поддержкой поддоменов, в этом поле следует указать домен со звездочкой вначале, например, *.emaro-ssl.ru. После заполнения всех полей создается CSR запрос и ваш приватный ключ, которые выглядят следующим образом:

Создать закрытый ключ

Очень важно на данном этапе сохранить ваш закрытый ключ, так как в целях обеспечения конфиденциальности он не сохраняется на нашем сервере и восстановить его не будет возможности. Если вы не сохраните закрытый ключ SSL, нужно будет создавать новый CSR запрос и перевыпускать SSL сертификат, что мы делаем для наших клиентов бесплатно.

Где взять приватный ключ сертификата

Установка сертификата не является часто выполняемой задачей. Вполне вероятно, вы не касались вопроса SSL конфигурации сервера с тех пор как установили сертификат год назад или даже несколько. Или, может, вы недавно приобрели еще несколько серверов. В таком случае, вполне понятно, что вы можете не знать или забыть где находится ваш приватный ключ (private key).
Данная статья поможет вам найти месторасположение вашего приватного ключа Мы рассмотрим наиболее распостраненные операционные системы ниже, а для начала рассмотрим основные аспекты, касающиеся private key.

Что такое закрытый ключ?
Закрытый ключ создается вами — владельцем сертификата — когда вы запрашиваете Ваш сертификат с запросом подписи сертификата (CSR). Центр сертификации, предоставляющий ваш сертификат (например, DigiCert), не создает или не имеет ваш закрытый ключ.

Если вы еще не установили свой сертификат, наиболее вероятное расположение вашего приватного ключа — на компьютере или на сервере где вы генерировали запрос CSR.
Когда вы создавали CSR, вы должны были получить запрос от сервера сохранить два файла. Вы можете запустить в OpenSSL специальную команду чтобы найти папку, в которую сохранились файлы с ключами. По умолчанию это /usr/local/ssl by default. https://www.digicert.com/ssl-support/openssl-quick-reference-guide.htm
Для Windows (IIS) операционная система имеет специальный менеджер который поможет вам создать запрос и затем сделать экспорт ключа ).

Как найти месторасположение приватного ключа. Если ваш сертификат уже установлен, выполните следующие действия, чтобы найти файл секретного ключа для этих популярных операционных систем.

Apache
Ваш файл private key будет указан в главное конфигурационном файле Apache, то есть httpd.conf или apache2.conf Директива SSLCertificateKeyFile будет определять путь на вашем сервере, где хранится ваш ключ.

OpenSSL, самая популярная библиотека SSL на Apache, по умолчанию сохранит секретные ключи в / usr/local/ssl. Чтобы найти OPENSSLDIR и убедиться, что ключи сохранились в этой папке запустите специальную команду openssl version -a.

Nginx
Вы можете найти месторасположение приватного ключа в файле на сайте в вашем виртуальном хостинге. Перейдите к серверному блоку для этого сайта (по умолчанию в каталоге /var/www /). Откройте главный файл конфигурации для сайта и выполните поиск директива ssl_certificate_key, которая будет предоставлять закрытый ключ (некоторые пользователи имеют отдельный файл конфигурации для своего SSL, например ssl.conf).

Windows (IIS)
На серверах Windows ОС управляет вашими файлами сертификатов для вас в скрытой папке, но вы можете получить закрытый ключ, экспортировав файл «.pfx», содержащий сертификаты и закрытый ключ.

Откройте консоль Microsoft Management Console (MMC). В корневой консоли Console Root (локальный компьютер) сертификат вашего сервера будет находиться в подпапке Personal или Web Server.
Найдите и щелкните правой кнопкой мыши сертификат, который имеет название домена (Common Name), выберите Export и следуйте инструкциям.
В результате вы получите файл .pfx. Подробные, пошаговые инструкции здесь.
Дальнейшие ваши действия зависят от того что вы планируете получить в итоге.
Если вы хотите выделить закрытый ключ в отдельный файл, вам надо конвертировать файл.pfx . Если вы просто хотите архивировать ключ и установить на другом сервере Windows, то вам не нужно преобразовывать формат и использовать его в таком виде как он есть.
Если вы будете использовать другую платформу, например Apache, следует преобразовать формат .pfx, чтобы отделить файл .crt / .cer и .key с помощью OpenSSL.

Где еще может быть Private Key?
Если вы выполнили все инструкции, но вам так и не удалось найти свой ключ, возможно, вы просто искали не там.
Если вы работаете с сервером и соединение HTTPS успешно включено, это значит что приватный ключ находится где-то на этом сервере (или в месте доступном для этого сервера), иначе HTTPS просто не будет работать. Здесь мы можем рассматривать только сценарии по умолчанию — возможно, ваша организация использует специальную пользовательскую конфигурацию. Вы можете попробовать выполнить на сервере поиск файла «.key» или выполнить инструкцию по установке нового сертификата, которая на определенном шаге должна включать указание местонахождения приватного ключа. На некоторых платформах OpenSSL сохранит файл .key в том же каталоге, откуда была запущена команда -req.
Если вы еще не установили SSL сертификат и не можете найти приватный ключ, может быть такое что его нет на сервере (находится в другом месте или удален).
Если вы создали запрос CSR, но не можете найти файл private key, проще всего перевыпустить сертификат заново чтобы сохранить закрытый ключ на этот раз в известном вам месте.
Начните с создания нового CSR запроса, зафиксируйте для себя где сохранен приватный ключ и убедитесь, что он соответствует новому запросу.
Оформите перевыпуск сертификата (это является бесплатной услугой) и установите полученный SSL сертификат на сервер.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *