Как создать сертификат с помощью OpenSSL из PowerShell без запроса пользователем парольной фразы?

Как создать сертификат с помощью OpenSSL из PowerShell без запроса пользователем парольной фразы?

Я настраиваю VDI для разработки и мне нужно автоматизировать создание некоторых сертификатов для доступа к веб-сайтам https://{foo}.local (127.0.0.1) во время разработки и тестирования.

Мне разрешено использовать только OpenSSL и PowerShell, и они должны работать без сопровождения пользователя. Мне нужно запустить их для автоматизации настройки VDI разработчика, поэтому не может быть никаких пользовательских запросов.

Я нашел много кода со следующим типом примера, но не могу найти способ передать парольную фразу для использования;

вот что у меня пока есть...

openssl 
   req -x509 -newkey rsa:4096 -keyout 
   openssl.key -out openssl.crt -subj /CN=website.name 
   -days 300

затем последует создание фактического сертификата

openssl pck12 -export .... etc

Как уже упоминалось, мне нужно иметь возможность предоставить парольную фразу, чтобы вышеприведенное работало без вмешательства пользователя. Приведенный выше код работает так, как и ожидалось, просто ...вызывает запрос на парольную фразу.

Я пробовал разные настройки, -passin {xyz}но -password pass:mysecretбезрезультатно.

Есть идеи? Спасибо, А

решение1

Добавьте параметр -nodesв команду openssl.

openssl 
   req -x509 -newkey rsa:4096 -nodes -keyout 
   openssl.key -out openssl.crt -subj /CN=website.name 
   -days 300

Это пропустит шифрование закрытого ключа. Вам не будет предложено ввести парольную фразу.

Связанный контент