Администрирование
Все про SSL
Платные доверенные сертификаты на Linux
12мин
как создать приватный ключ созданный приватный ключ может быть получен в интерфейсе поставщика ssl сертификатов после отправки csr или с помощью специализированного по, например, openssl ниже приведён фрагмент генерации приватного ключа в веб интерфейсе поставщика ssl сертификатов если создание приватного ключа было выполнено в веб интерфейсе, то экспорт осуществляется по кнопке там же после нажатия на кнопку браузер инициирует загрузку архива с файлом ключа в нужном формате чтобы создать приватный ключ rsa с помощью openssl, достаточно одной команды openssl genrsa out rsaprivkey pem 2048 это команда генерирует закрытый ключ pem и сохраняет его в файле rsaprivkey pem в нашем примере создается ключ размером 2048 бит, который подойдёт почти для всех ситуаций для создания ключа dsa необходимо выполнить два шага openssl dsaparam out dsaparam pem 2048 openssl gendsa out dsaprivkey pem dsaparam pem на первом шаге создаётся файл параметров dsa (dsaparam pem), который в данном случае содержит инструкции для openssl по созданию на шаге 2 ключа размером 2048 бит файл dsaparam pem не является ключом, поэтому его можно удалить после создания открытого и закрытого ключей на втором шаге генерируется закрытый ключ (файл dsaprivkey pem), который необходимо хранить в секрете для создания файла в формате pkcs#12, используемом в ос windows, воспользуйтесь следующей командой openssl pkcs12 export out certificate pfx inkey privatekey key in certificate crt certfile cacert crt где pkcs12 – формат приватного ключа; export – операция экспорта приватного ключа в требуемый формат; out – каталог в файловой системе, куда должен быть размещён результирующий файл; inkey – файл приватного ключа в формате pem; in – файл сертификата, полученный от удостоверяющего центра; certfile – копия корневого сертификата и промежуточных сертификатов в цепочке на примере выше они отсутствуют как сгенерировать csr запрос чтобы сгенерировать csr, в веб форме поставщика услуги ssl сертификата заполните предлагаемые поля на рисунке выше указан пример заполнения набор минимально необходимых полей одинаковый и приведён в разделе про описание csr, но некоторые поставщики могут добавлять свои либо изменять способ ввода для генерации csr средствами openssl воспользуйтесь следующей командой openssl req new key private key out domain name csr sha256 где new – создание нового csr запроса посредством прямого ввода в консоли без данной опции будут использоваться данные конфигурационного файла openssl; key – наименование приватного ключа, требуемого для генерации если опция не указана, будет создан новый приватный ключ в соответствии с алгоритмом по умолчанию; out – путь к создаваемому csr файлу; sha256 – алгоритм шифрования в результате выполнения команды в консоли появится запрос на заполнение обязательных полей затем отправьте полученный csr удостоверяющему центру в ответ он должен вернуть персональный сертификат как настроить ssl для apache для настройки ssl в apache выполните следующие действия 1 добавьте в каталог /etc/ssl/ персональный сертификат, выданный удостоверяющим центром, приватный ключ и корневой сертификат вместе с остальными сертификатами цепочки 2 откройте файл конфигурации apache любым текстовым редактором, например, vim в зависимости от ос сервера файл может находиться по одному из следующих расположений для centos /etc/httpd/conf/httpd conf; для debian/ubuntu /etc/apache2/apache2 conf; 3 если вы устанавливаете ssl сертификат на openserver, используйте путь к его корневой папке в конце файла создайте копию блока «virtualhost» укажите для блока порт 443 и добавьте внутри следующие строки sslengine on sslcertificatefile /etc/ssl/domain name crt sslcertificatekeyfile /etc/ssl/private key sslcertificatechainfile /etc/ssl/chain crt 4 проверьте конфигурацию apache до перезапуска командой apachectl configtest, после чего перезапустите apache как настроить ssl для nginx для настройки ssl в nginx выполните следующие действия 1 откройте текстовый редактор и добавьте туда содержание персонального сертификата, выданного удостоверяющим центром и корневого сертификата вместе с остальными сертификатами цепочки полученный файл должен иметь вид \ begin certificate \#ваш сертификат# \ end certificate \ begin certificate \#промежуточный сертификат# \ end certificate \ begin certificate \#корневой сертификат# \ end certificate 2 сохраните полученный файл с расширением crt в каталог /etc/ssl/ обратите внимание один сертификат идёт следом за другим, без пустых строк 3 сохраните файл your domain key с приватным ключом сертификата в каталог /etc/ssl 4 откройте конфигурационный файл nginx и отредактируйте виртуальный хост вашего сайта, который вы хотите защитить сертификатом выполните минимальную для работы настройку, добавив в файл следующие строки server { listen 443 ssl; server name your domain com; ssl certificate /etc/ssl/your domain crt; ssl certificate key /etc/ssl/your domain key; } где your domain com — доменное имя сайта; /etc/ssl/your domain crt — путь до созданного файла с тремя сертификатами; /etc/ssl/your domain key — путь до файла с приватным ключом название файлов и каталогов могут быть произвольными дополнительно можно настроить работу сайта по http, тип кэша сервера, таймаут обновления кэша, а также время работы одного keepalive соединения также можно настроить поддерживаемые протоколы и их приоритет (серверный набор или клиентский) и ocsp ответы для валидации сертификата детали приведены в руководстве пользователя nginx 5 чтобы изменения вступили в силу, перезапустите сервер nginx sudo /etc/init d/nginx restart