OpenSSL - настройка и создание сертификатов
Материал из OSZone.net wiki.
Содержание
|
[править]
Рецепт от Barracuda:
[править]
Предварительные настройки
[править]
Корректируем конфиг OpenSSL:
dir = .
certs = $dir/ssl.crt
crl_dir = $dir/ssl.crl
database = $dir/index.dat
new_certs_dir = $dir/ssl.crt
certificate = $dir/ssl.crt/<файл корневого сертификата>
serial = $dir/serial
crl = $dir/ssl.clr/<файл отозванных сертификатов>
private_key = $dir/ssl.key/<файл приватного ключа - ключа корневого сертификата>
RANDFILE = $dir/ssl.key/.rand
NOTE: Для удобства при заполнении полей при создании сертификатов можно поменять
значения по умолчанию для таких полей сертификатов, как страна, штат, отдел,
адресс электронной почты и общее название. ВНИМАНИЕ! При создании сертификата
сервера, знаяение поля Common Name должно соответствовать доменному имени
(FQDN) сервера, на котором будет работать сертификат.
[править]
Создаём файл серийного номера:
# echo '01' > serial
[править]
Создаём файл базы данных сертификатов:
# touch index.dat
[править]
Создаём корневой сертификат:
[править]
Создаём ключ корневого сертификата:
# openssl genrsa -des3 -out <файл ключа корневого сертификата> 1024
[править]
Создаём сертификат самоподписанный корневой сертифика
# openssl req -new -x509 -days 3653 -key <файл ключа корневого сертификата>\
-out <файл сертификата>
[править]
Создаём запорс на подписание сертификата сервера:
[править]
Создаём ключ сертификата сервера:
# openssl genrsa -des3 -out <файл ключа сертификата сервера> 1024
[править]
Создаём запрос на пордписание сертификата сервера:
# openssl req -new -days 1096 -key <файл ключа сертификата сервера> \
-out <файл запрос на подписание сертификата сервера>
[править]
Подписываем запрос на подписание сертификата сервера (создание сертификата сервера):
# openssl ca -config /etc/ssl/openssl.cnf -policy policy_anything \
-days 1096 -out <файл сертификата сервера> \
-infiles <файл запроса на подписание сертификата сервера>
[править]
Просмотр содержимого файлов сертификатов/ключей:
[править]
Просмотр содержимого файла ключа:
# openssl rsa -noout -text -in <файл ключа>
[править]
Просмотр содержимого файла сертификата:
openssl x509 -noout -text -in <файл сертификата>
[править]
Просмотр содержимого файла запроса на подписние сертификата сервера:
openssl req -noout -text -in <файл запроса на подписние сертификата сервера>
[править]
Смена/удаление пароля из файла ключа
[править]
Смена пароля в файле ключа:
# openssl rsa -des3 -in <файл ключа> -out <временный файл ключа>
# mv <временный файл ключа> <файл ключа>
[править]
Удаление пароля из файла ключа:
# cp <файл ключа> <сохраняемый файл ключа>
# openssl rsa -in <сохраняемый файл ключа> -out <файл ключа>
[править]
