Перейти до вмісту
Панель клієнта

Що таке CSR і як створити запит на підпис SSL-сертифіката

Що таке CSR і як створити запит на підпис SSL-сертифіката

CSR (Certificate Signing Request) означає запит на підпис сертифіката. Він містить відкритий ключ і відомості, потрібні для випуску SSL/TLS-сертифіката. Створити запит можна в панелі хостингу, через OpenSSL на сервері або в браузері. Виберіть спосіб, за якого зможете зберегти відповідний закритий ключ і встановити сертифікат у потрібну службу.

CSR, закритий ключ і сертифікат: три окремі файли

Файл Що містить Куди передавати
CSR, зазвичай .csr Відкритий ключ, імена й запитані відомості про власника Центру сертифікації або у форму замовлення сертифіката.
Закритий ключ, зазвичай .key Таємну частину пари ключів Зберігати під власним контролем; встановити в потрібну службу захищеним каналом.
Сертифікат, зазвичай .crt чи .pem Відкритий ключ та імена, підписані центром сертифікації Встановити з відповідним ключем і проміжними сертифікатами.

Розширення файлу саме по собі не доводить його вмісту. CSR у форматі PEM починається рядком BEGIN CERTIFICATE REQUEST, закритий ключ містить PRIVATE KEY. Відкритий ключ із CSR пов’язаний із певним закритим ключем. Центр сертифікації перевіряє запит і контроль над іменами; створення CSR ще не підтверджує цих прав.

Як створити CSR у панелі хостингу або IIS

  1. Відкрийте розділ SSL/TLS-сертифікатів потрібного сайту та знайдіть створення запиту CSR. Якщо сертифікатом уже керує автоматизація, спочатку з’ясуйте, чи потрібен ручний запит.
  2. Укажіть домен та інші потрібні імена, якщо панель це дозволяє. Для сертифіката з перевіркою організації заповніть її дані за вимогами вибраного центру, а не довільним текстом.
  3. Створіть і збережіть CSR. Ключ зазвичай залишається в панелі чи сховищі сервера: перевірте це перед надсиланням запиту. Завершуйте встановлення там, де доступний саме цей ключ.

Наприклад, у Plesk почніть із розділу домену SSL/TLS Certificates. Порядок та обмеження наведено в інструкції Plesk. Не кожна панель підтримує запити з кількома іменами SAN, тому перевіряйте готовий CSR.

У Windows/IIS виберіть вузол сервера та Server Certificates → Create Certificate Request. Це шлях IIS, а не команда Linux; ключ зберігається у сховищі Windows. Покроковий приклад для IIS є в документації AWS. Не вибирайте Create Self-Signed Certificate замість запиту до публічного центру.

Як створити CSR через OpenSSL на сервері

Приклад розрахований на оболонку Linux та OpenSSL 3.x. Працюйте в новій порожній папці з обмеженим доступом і замініть example.com та www.example.com власними іменами. Переконайтеся, що таких файлів ще немає: команда записує новий ключ і запит.

umask 077 openssl req -new -newkey rsa:2048 -sha256 -noenc \ -keyout example.com.key -out example.com.csr \ -subj "/CN=example.com" \ -addext "subjectAltName=DNS:example.com,DNS:www.example.com"

CN задає основне ім’я, SAN перелічує потрібні DNS-імена. Параметр -noenc записує ключ без парольного шифрування, щоб служба запускалася без ручного введення пароля. umask 077 обмежує доступ до нових файлів їхнім власником. Не зберігайте ключ у публічній папці сайту. Для ключа з паролем приберіть -noenc і врахуйте спосіб запуску служби. Параметри описано в документації openssl req.

Для Wildcard укажіть *.example.com та явно внесіть потрібні імена до SAN. Якщо потрібен сам example.com, додайте його окремо. Зірочка покриває один рівень піддоменів, а не example.com чи a.shop.example.com. Можливість випуску на всі імена залежить від вибраного сертифіката та перевірки центру.

Як створити CSR онлайн і залишити ключ у себе

  1. Відкрийте генератор CSR через HTTPS на пристрої, якому довіряєте. Введіть домен, розгорніть додаткові адреси й перевірте, чи потрібна версія з www або основний домен разом із Wildcard.
  2. Виберіть тип ключа, який підтримують сервер і центр сертифікації. Генератор пропонує RSA 2048, RSA 4096 та ECDSA P-256. За потреби заповніть дані організації, потім створіть запит.
  3. Завантажте обидва результати. Надсилайте CSR, а закритий ключ збережіть окремо в захищеному місці. У Host4Biz ключ створюється в браузері та не надходить на наш сервер; копії для відновлення в нас немає.

Якщо правила вашої компанії вимагають створювати ключ на сервері чи у спеціальному пристрої, дотримуйтеся цього порядку. Генерація в браузері також потребує довіри до пристрою та завантаженої сторінки.

Як перевірити готовий CSR перед надсиланням

У тому самому інструменті виберіть перевірку готового CSR і вставте запит повністю. Звірте імена SAN, тип і довжину ключа, відомості про організацію та результат перевірки підпису. Для файлу на сервері виконайте:

openssl req -in example.com.csr -noout -text -verify

Команда показує вміст запиту й перевіряє його власний підпис. Вона не підтверджує контроль над доменом або майбутній випуск сертифіката. Щоб перевірити відповідність файлу закритого ключа, порівняйте SHA-256 двох відкритих ключів:

openssl pkey -in example.com.key -pubout -outform DER | openssl dgst -sha256 openssl req -in example.com.csr -pubkey -noout | openssl pkey -pubin -outform DER | openssl dgst -sha256

Хеші мають збігатися. Команди показують відбитки відкритого ключа, а не сам закритий ключ, і працюють з RSA та EC. Якщо залишився лише старий сертифікат, отримати з нього нову робочу пару не можна: для нового запиту потрібен відповідний закритий ключ або нова пара.

Що зберегти до встановлення сертифіката

Збережіть CSR, відповідний закритий ключ і список замовлених імен. Зробіть захищену резервну копію ключа, обмежте доступ і передавайте його лише туди, де працюватиме TLS. Не надсилайте ключ поштою, у форму замовлення чи запит підтримки. Якщо ключ втрачено, потрібні нова пара, новий CSR та перевипуск сертифіката.

Підготовлений CSR можна використати під час замовлення відповідного SSL-сертифіката. Після випуску встановіть його з ключем і ланцюжком, а потім перевірте кожне ім’я сайту чи поштової служби. Сам збережений CSR не вмикає HTTPS.

Чорна п’ятниця на Host4Biz

Дивитися пропозиції