Полезные команды OpenSSL

Создание ключа для SSL-сертификата.

openssl req -batch -noout -new -newkey rsa:2048 -nodes -keyout cert.key

В случае утери пароля или файла ключа придется заказывать пересоздание сертификата.

Генерация CSR-запроса:

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

Имя домена на который создается запрос прописывается в Common Name – example.com, A challenge password и An optional company name вводить не нужно (просто нажимаем enter).

Создание ключа и запроса с данными одной командой:

openssl req -batch -new -newkey rsa:2048 -nodes -keyout cert.key -subj '/C=RU/ST=Moscow/L=Moscow/O=Jingel Inc/OU=Research team/emailAddress=root@example.com/CN=example.com' -out cert.csr

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

openssl req -newkey rsa:1024 -nodes -keyout server.key -out server.crt -x509 -days 3650 -subj \
"/C=XX/ST=XX/L=XX/O=XX/OU=XX/CN=example.com/emailAddress="root@example.com

Убрать пароль с ключа (необходимо когда сертификат ставится руками в конфигурацию Apache иначе он при запуске будет просить пароль):

openssl rsa -in cert.key -out cert.key

и вводим пароль с консоли (либо -passin pass:supersecretpassw0rd что менее секурно так как пароль сохраняется в .history)

Посмотреть данные CSR:

openssl req -noout -text -in cert.csr

Данные сертификата (проверить кем выдан например):

openssl x509 -noout -text -in cert.crt

Проверить, что ключ соответствует сертификату:

openssl x509 -noout -modulus -in cert.crt | openssl md5
openssl rsa -noout -modulus -in cert.key | openssl md5

Два значения должны совпадать.

Узнать длину запроса:

echo '(' `openssl req -noout -modulus -in cert.csr | cut -d'=' -f2 | wc -c` '-1)*4' | bc

Проверить выдачу HTTPS:

openssl s_client -connect localhost:443 -state -debug
GET / HTTP/1.0

Для почты:

openssl s_client -connect localhost:993 -showcerts

На операционной системе Windows (в IIS в частности) используется PFX-контейнер для сертификата, его можно создать из файлов ключа и сертификата командой:

openssl pkcs12 -export -in certificate.crt -inkey certificate.key -out certificate.pfx

Как изменить ssl-сертификат, выданный при регистрации сервера?

# openssl req -new -newkey rsa:1024 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 5000 -out /etc/pki/tls/certs/localhost.crt

Далее отвечаете на вопросы и перезапускаете сервер Apache.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Unlix © Все права защищены 2023

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!