На одном инфраструктурном сервере стоял бесплатный сертификат от StartSSL. Благополучно пропустили срок действия сертификата и он протух. Когда осознали, заодно выяснили, что бесплатные StartSSL сертификаты в браузерах уже не отображаются как надежные.
Прикинули что делать. От идеи брать сертификат в Let`s Encrypt отказались, т.к. там в общем случае надо ставить CertBot, а удаленный доступ к серверу можно было получить только к вечеру. Плюс к этому не до конца было известно какая версия linux и веб-сервера работает, могли быть нюансы с установкой CertBot.
Было принято решение ставить триальный сертификат от COMODO, а к Let`s Encrypt вернуться в спокойной обстановке.
COMODO бесплатно раздает триальные версии SSL сертификатов.
Обзор сертификата - https://ssl.comodo.com/free-ssl-certificate.php
Стартовая станица формирования запроса на сертификат - https://secure.instantssl.com/products/SSLIdASignup1a
Сертификат выдается на 90 дней и для одного домена можно сделать только один сертификат.
Т.е. если получили сертификат на имя test1.mx.companyname.au и хочется еще один сертификат на имя test2.mx.companyname.au, то при передачи CRS выскочит ошибка - “A Trial Certificate has already been issued for this domain name - please contact Support!”.
В саппорт не писали, возможно по запросу они дадут сделать еще один, но на это тоже уйдет какое-то время.
Последовательность действий:
CRS (Certificate Signing Request) - это запрос который посылается в сторону СА с описанием параметров сертификата - имя компании, страна, город, контакты и главное url домена.
CRS формируется с помощью openssl, для этого надо дать след. команду:
$ openssl req -nodes -newkey rsa:2048 -keyout test1.mx.companyname.au.key -out test1.mx.companyname.au.crs
Вывод команды:
kostya@blackpc:~/new-ssl$ openssl req -nodes -newkey rsa:2048 -keyout test1.mx.companyname.au.key -out test1.mx.companyname.au.crs Generating a 2048 bit RSA private key .................................................................+++ .......................+++ writing new private key to 'test1.mx.companyname.au.key' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []:Some-City Organization Name (eg, company) [Internet Widgits Pty Ltd]:Some-Company Organizational Unit Name (eg, section) []:IT Common Name (e.g. server FQDN or YOUR name) []:test1.mx.companyname.au Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
В результате сформируется два файла.
kostya@blackpc:~/new-ssl$ ll total 16 drwxrwxr-x 2 kostya kostya 4096 сен 6 15:37 ./ drwxr-xr-x 35 kostya kostya 4096 сен 6 15:36 ../ -rw-rw-r-- 1 kostya kostya 1033 сен 6 15:37 test1.mx.companyname.au.crs -rw-rw-r-- 1 kostya kostya 1704 сен 6 15:37 test1.mx.companyname.au.key
Cодержимое файла test1.mx.companyname.au.crs надо будет передать в COMODO.
kostya@blackpc:~/new-ssl$ cat test1.mx.companyname.au.crs -----BEGIN CERTIFICATE REQUEST----- MIICwTCCAakCAQAwfDELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx EjAQBgNVBAcMCVNvbWUtQ2l0eTEVMBMGA1UECgwMU29tZS1Db21wYW55MQswCQYD ... zATPDURg0j0D+l+MVrJWbC1WPj3hkWzf9DkpVfaBLbAEt2eTb7+rrtLN1t/yUqIT 3Ol0G3SoZ8rzamUo2P30WG59YKguD/ltWl5Byz61Oga+i+RpvA== -----END CERTIFICATE REQUEST-----
Переходим по адресу https://secure.instantssl.com/products/SSLIdASignup1a и:
Если уже есть аккаунт на COMODO, то сначала логинемся.
Остальное оставляем как есть и жмем кнопку Next >.
На следующей странице предложат один из способов подтверждения владения доменом.
Я просил отправить письмо с кодом на один из предложенных адресов.
Переходим к форме регистрации.
Заполняем требуемые поля, особое внимание уделяем email адресу, туда потом пришлют сертификат.
Если регистрация прошла успешно, то на следующей странице будет поле куда надо будет ввести код который был отправлен на адрес admin@test1.mx.companyname.au.
Я регистрацию в процессе подготовки статьи не проходил.
После подтверждения владение доменом на адрес, указанный при регистрации, придет zip архив в котором будет два файла с расширением ca-bundle и crt.
kostya@blackpc:~/Downloads$ unzip test1_mx_companyname_au.zip Archive: test1_mx_companyname_au.zip extracting: test1_mx_companyname_au.ca-bundle extracting: test1_mx_companyname_au.crt
Далее привязываем сертификат к виртуальному хосту.
Файл ключа подставляем тот, который был сгенерен на этапе формирования CRS.
SSLCertificateFile "/etc/httpd/ssl/test1_mx_companyname/test1_mx_companyname_au.crt" SSLCertificateKeyFile "/etc/httpd/ssl/test1_mx_companyname/test1.mx.companyname.au.key" SSLCertificateChainFile "/etc/httpd/ssl/test1_mx_companyname/test1_mx_companyname_au.ca-bundle"
Все.