Изменить: Это, безусловно, мой самый популярный ответ, и прошло уже несколько лет, поэтому я добавил вариант ECDSA. Если вы можете использовать ECDSA, вы должны.
Вы можете предоставить всю эту информацию в командной строке.
Один шаг самозаверяющего создания сертификата без пароля:
Версия RSA
openssl req \ -new \ -newkey rsa:4096 \ -days 365 \ -nodes \ -x509 \ -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" \ -keyout www.example.com.key \ -out www.example.com.cert
Версия ECDSA
openssl req \ -new \ -newkey ec \ -pkeyopt ec_paramgen_curve:prime256v1 \ -days 365 \ -nodes \ -x509 \ -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" \ -keyout www.example.com.key \ -out www.example.com.cert
Все подкоманды openssl имеют свою собственную страницу руководства. См man req
.
Конкретно отвечая на ваши вопросы и чтобы быть более точным в том, какие именно опции действуют:
В
-nodes
флаг сигналы не шифрует ключ, таким образом, вам не нужен пароль. Вы также можете использовать-passout arg
флаг. СмотритеPASS PHRASE ARGUMENTS
наopenssl(1)
странице руководства о том, как форматировать arg.Используя
-subj
флаг, вы можете указать тему (пример выше).