Что такое CSR и как ее создать?
CSR (Certificate Signing Request) – это блок закодированного текста, который организация или частное лицо отправляет в центр сертификации (ЦС) при подаче заявки на получение SSL-сертификата. CSR содержит информацию, которую ЦС использует для создания сертификата, например открытый ключ заявителя и реквизиты организации. Этот сертификат используется для защиты связи на веб-сайтах путем включения HTTPS.
В этой статье мы объясним, что такое CSR, почему он важен, и дадим пошаговые инструкции по его созданию.
Что такое CSR (запрос на подписание сертификата)?
CSR – это файл, содержащий открытый ключ владельца сайта и важную информацию о сайте и организации, запрашивающей SSL-сертификат. Затем этот запрос отправляется в центр сертификации (ЦС), например Let’s Encrypt, DigiCert или Comodo, который проверяет информацию перед выдачей сертификата.
Типичный CSR включает в себя:
- Открытый ключ: Используется в процессе шифрования.
- Общее имя (CN): Полное доменное имя (FQDN), которое вы хотите защитить (например, www.example.com).
- Organization Name (Имя организации): Имя компании или физического лица, подающего заявку на получение SSL-сертификата.
- Организационное подразделение: Отдел или подразделение в компании (необязательно).
- Местность: Город, в котором находится организация.
- Штат/провинция: штат или провинция, где находится организация.
- Страна: Двухбуквенный код страны (например, US для Соединенных Штатов).
CSR не содержит закрытого ключа веб-сайта, который генерируется и хранится в безопасности на сервере.
Почему CSR важен?
CSR является важной частью процесса выпуска SSL-сертификата. Вот почему он важен:
1. Запрос SSL-сертификата
Когда вы подаете заявку на получение SSL-сертификата, вам нужно отправить CSR в центр сертификации. ЦС использует информацию, содержащуюся в CSR, для выпуска сертификата, соответствующего домену, организации и серверу.
2. Безопасность
В CSR входит открытый ключ, который используется для шифрования данных между сервером и клиентом (браузером). Закрытый ключ, который генерируется вместе с открытым ключом, хранится в безопасности на сервере и никогда никому не передается. Вместе они обеспечивают безопасную связь с помощью SSL/TLS.
3. Удостоверение
ЦС использует информацию, содержащуюся в CSR, для проверки личности запрашивающего сертификат. В зависимости от типа сертификата SSL (например, Domain Validation, Organization Validation или Extended Validation), центр сертификации может выполнять различные уровни проверки перед выпуском сертификата.
Как создать CSR
Создание CSR включает в себя генерацию пары открытых и закрытых ключей, а затем создание CSR с использованием этих ключей. Процесс немного отличается в зависимости от используемого сервера, но основные шаги одинаковы.
Шаг 1: Генерирование закрытого ключа
Первым шагом в создании CSR является генерация закрытого ключа. Закрытый ключ будет использоваться для шифрования и дешифрования данных на вашем сайте, поэтому его следует хранить в безопасности.
Пример использования OpenSSL (Linux, macOS или Windows с установленным OpenSSL):
- Откройте терминал или командную строку.
- Выполните следующую команду, чтобы сгенерировать закрытый ключ:
openssl genrsa -out private.key 2048
В результате будет сгенерирован 2048-битный закрытый ключ RSA и сохранен в файле private.key.
Шаг 2: Генерируем CSR
После того как вы получили закрытый ключ, следующим шагом будет создание CSR. CSR содержит открытый ключ (полученный из закрытого ключа) и информацию о вашей организации.
Пример с использованием OpenSSL:
- В терминале выполните следующую команду:
openssl req -new -key private.key -out yourdomain.csr
Вам будет предложено ввести информацию для CSR. Вот что вам нужно будет предоставить:
- Название страны (2-буквенный код): Двухбуквенный код вашей страны (например, США, Великобритания).
- Название штата или провинции: Полное название штата или провинции (не сокращайте).
- Название населенного пункта: Город или населенный пункт, в котором находится ваша организация.
- Название организации: Полное юридическое название вашей компании или организации (или ваше имя, если вы частное лицо).
- Название организационной единицы: Отдел или подразделение (необязательно).
- Общее имя: Полное доменное имя (FQDN), которое вы хотите защитить (например, www.example.com или example.com).
- Адрес электронной почты: Ваш контактный адрес электронной почты (необязательно).
- После ввода необходимой информации CSR будет сохранен в файле под названием yourdomain.csr.
Шаг 3: Отправьте CSR в центр сертификации
После создания CSR вы можете отправить его в центр сертификации (Certificate Authority, CA) при подаче заявки на получение SSL-сертификата. Центр сертификации будет использовать информацию, содержащуюся в CSR, для выдачи сертификата.
Шаг 4: Безопасное сохранение закрытого ключа
Закрытый ключ, сгенерированный на шаге 1, очень важен для SSL-шифрования. Храните его в безопасности и никому не сообщайте. Если закрытый ключ будет утерян или скомпрометирован, вам придется сгенерировать новый ключ и запросить новый сертификат SSL.
Общие инструменты и методы создания CSR
Помимо использования OpenSSL, вы можете создавать CSR с помощью других инструментов и методов, в зависимости от используемой платформы:
1. Использование cPanel (панель управления хостингом)
Если ваш сайт размещен у провайдера, использующего cPanel, вы можете создать CSR прямо в панели управления:
- Войдите в свою учетную запись cPanel.
- Перейдите в раздел “Безопасность” и нажмите на SSL/TLS.
- В разделе Запросы на подписание сертификата (CSR) нажмите кнопку Генерировать, просматривать или удалять запросы на подписание SSL-сертификата.
- Заполните форму CSR необходимой информацией (аналогично тому, что вы вводите в OpenSSL).
- Нажмите кнопку Сгенерировать. На экране появится CSR, и вы сможете скопировать его для отправки в центр сертификации.
2. Использование IIS (Windows Server)
Если вы управляете веб-сайтом на сервере Windows Server с помощью IIS, вы можете создать CSR с помощью IIS Manager:
- Откройте IIS Manager на вашем сервере.
- Выберите свой сервер на панели подключений.
- Дважды щелкните на Сертификатах сервера в разделе IIS.
- На панели Действия нажмите Создать запрос сертификата.
- Заполните данные CSR и нажмите кнопку Далее.
- Выберите криптопровайдера и длину бита (обычно 2048).
- Сохраните CSR в файл и отправьте его в центр сертификации.
Заключение
Запрос на подписание сертификата (CSR) – это важная часть процесса получения SSL-сертификата, позволяющая вам запросить сертификат у центра сертификации. Он содержит важную информацию о вашей организации и домене, который вы хотите защитить. Создав CSR с помощью таких инструментов, как OpenSSL, cPanel или IIS, вы сможете получить SSL-сертификат, который защитит ваш сайт и обеспечит безопасную связь между сервером и его посетителями.
Не забудьте сохранить свой закрытый ключ в безопасности и следуйте инструкциям центра сертификации для завершения установки SSL-сертификата. Правильно настроенный SSL-сертификат обеспечит безопасность и надежность вашего сайта для пользователей.