Для начала необходимо создать приватный ключ.
Private key - специальный 2048 битный ключ для шифрования по алгортму RSA.
Он необходим для работы с SSL сертификатами.
Генерируем приватный ключ:
openssl genrsa -des3 -out /root/serts/private.key 2048 |
Далее проверим, создан ли ключ, прочитав файл:
cat /root/serts/private.key
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,F8B18E31151D9E52
ZO+ls4I25/FhNhbamJ9QPohUxoGvGK6rKV/43dLDxjwZVB2vAmWFOLs+afu8cg0o
7ft7rjg3bOnC+6FpjTMb9WCQYjmP+gP0OkPExwo1xSp4JUVcooeI/gg8AZOxwlx6
1Bn7jDcV3R6cS/d7dxtXJeVS8NH8qYV9/HnvuKJEJdD0KUd1aWyOfIJ0s8MiBEx9
XqqJi+h2Kexuyu1tOrYttRmPhYAnTvaYBuhutax5MSx6tgu6ju0Vc1ELaCkmCKR4
fXZ73M/dbb/zOUtfsM6PHZr5btAWYI/piDX0lOg2Ywin23rWttY21GzVv9hnNhiF
ECEfD8fMrZBy6hOZbyS/vZTnX7wclMo2HVTKfwljTrMbUDVe/p9jXBXS/Zq06NTp
ZCgzCfb/j+B1sY8kaNCl0GDuBEsDwkCJlVy1FJB3Z3kmSR3I0KfiE/a+zicl4naQ
QCaI3mUbCEt51/CfW6SClVNjMv3jFmeXgrEz1/jQQkREpvfiPbXZMi/IrsJuJ3LC
fHEKinLBwShBUrEw8J8bwEW/6RvdlRZpRKgF+g4os7CKBMuEDphjRiHXkUhW6gNX
9RoZ3GS3I+wdNQi6DLhZLU9ygWWM6Wcn9d1ojaoy5II54QavX1dch4pZ1HWERB89
LArFPKgJ8RWnY4G0p9Bx4H2I6Hj38fys33K/SB0794MH4g/WZaVI2VnBkdBx3rk5
zE1ZNjnw0iRptGxx3mf9rUmo8HhlsvQpbrel2SjTVOqAIq8vI9dVjnkZl+2jeaR9
jxLca3kCOBreCJQwb4c/LZpR7e4jTVBrGlWRb9WG2Ah2v2VKeq4VpA==
-----END RSA PRIVATE KEY-----
Полученный файл private.key
- это и есть необходимый приватный ключ.
Обязательно сделайте резервную копию этого ключа!
В случае его утраты, сертификат перестанет работать.
Генерация CSR-запроса
CSR-запрос необходим для получения сертификата в соответствующем сертификационном центре. Для его генерации выполните в консоли сервера команду:
openssl req -new -key /root/serts/private.key -out /root/serts/request.csr |
/root/serts/private.key
- путь к файлу приватного ключа, созданного на предыдущем шаге./root/serts/request.csr
- путь по которому будет создан файл запроса сертификата
Команда запустит диалог в котором Вам потребуется ответить на несколько вопросов.
Обратим внимание, что на первый запрос «Enter pass phrase for /root/serts/private.key» необходимо ввести пароль, выбранный в Шаге 1, а на последние два запроса «A challenge password» и «An optional company name» отвечать не нужно.
Пример сессии представлен ниже:
Enter pass phrase for /root/serts/private.key: |
Проверяем:
cat /root/serts/request.csr
-----BEGIN CERTIFICATE REQUEST----- |
Полученный файл является CSR запросом. Его Вы должны ввести в форме заявки для последующего получения сертификата.
Установка полученного сертификата
В данном примере будет рассматриваться установка сертификата на сервер с nginx.
После получения RapidSSL сертификата выполняем следующие действия.
Создаем файл
ssl.crt
и копируем в него полученный сертификат, который нам прислали в теле письма. (X.509)Удостоверьтесь, что есть 5 дефисов, в обе стороны от BEGIN CERTIFICATE и END CERTIFICATE и отсутствуют пропуски, лишние символы и табуляции.
Необходимо скачать RapidSSL Intermediate CA Bundle (ссылка будет указана в письме либо тут)
Копируем и вставляем его в новый файл, который называем
Intermediate.crt
Далее нам потребуется cоединить SSL иIntermediate CA Bundle
(НЕ ЗАБУДЬТЕ СРАВНИТЬ МЕТОД ШИФРОВАНИЯ И СКАЧАТЬ НЕОБХОДИМЫЙ CA Bundle)
Выполняем слияние следующей командой:
cat intermediate.crt >> ssl.crt |
И переименовываем файл в example.crt
(как удобнее)
Помещаем приватный ключ в папку с созданным сертификатом и указываем пути в конфиге nginx
Вносим изменения в конфиг nginx
server { |