Самоподписанный сертификат SSL как сгенерировать

SSL cертификаты используются для шифрования информации, передаваемой через сети общего доступа. Сертификаты применяют при построении почтовой системы, а также (значительно чаще) устанавливают на домены для получения доступа к сайту через интернет браузер по порту 443. Только посредством https соединения осуществляются любые денежные операции на сайтах систем онлайн торговли.



SSL cертификаты и ключи можно генерировать на любых Linux серверах, подписывать из должны сертфикационные центры, также сертфикаты можно подписывать самостоятельно. Браузер при обращении к сайту, работающему с самоподписанным SSL сертификатом будет выдавать предупреждение о невозможности убедиться в защищенности соединения, однако часто такой вариант также находит применение. Рассмотрим как сгенерировать самоподписанный сертификат SSL.

Как сгенерировать самоподписанный сертификат SSL

Как сгенерировать самоподписанный сертификат SSL на Linux сервере

Для того чтобы сгенерировать самоподписанный сертификат потребуется установить на сервер пакет openssl (часто он установлен по умолчанию)

apt-get install openssl

 

Файлы приватного ключа и цепочки сертификатов генерируются одной командой

openssl req -new -x509 -days 365 -sha256 -newkey rsa:2048 -nodes -out example.pem -keyout example.key

 

После ее выполнения возникает ряд диалогов, в которых нужно указать данные организации и домен для которого выпускается сертификат

 

Country Name (2 letter code) [AU]:RU
State or Province Name (full name) [Some-State]:some state
Locality Name (eg, city) []:mycity
Organization Name (eg, company) [Internet Widgits Pty Ltd]:company
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:example.com
Email Address []:mail@example.com

 

Результатом будут создавшиеся файлы example.pem и example.key

Обычно этого достаточно и файлы уже можно использовать

Путь к ним теперь необходимо будет указывать при настройке различного ПО, использующего сертификаты: веб- (Apache, Nginx) и почтовых серверов (Postfix, Exim, Dovecot).

 

Генерация самоподписанного сертификата в несколько шагов

Далее описан тот же процесс, что и ранее, но не в одной команде, а по шагам.

Создаем ключ

openssl genrsa -des3 -out example.key 1024

 

Создаем запрос на сертификат на основе ключа

openssl req -new -key example.key -out cert.csr

Появится файл example.src

 

 

Парольная фраза при использовании приватного ключа

Каждый раз когда мы производим какие-либо операции с приватным ключом система запрашивает парольную фразу. Чтобы не вводить ее каждый раз производим следующие действия. Генерируем ключ .nopass и заменяем использовавшийся ранее ключ.

openssl rsa -in example.key -out example.key.nopass

mv example.key.nopass example.key

После этого парольная фраза уже не понадобится

 

Генерируем сертификат

openssl x509 -req -days 365 -in example.csr -signkey example.key -out example.crt


Читайте также про то, как установить SSL сертификат на Apache и на Nginx