Я действительно работаю в небольшом проекте для себя, это веб-приложение, которое создает запрос на подпись сертификата, также сертификат .pem/.crt
и его .key
.Попытка создать сертификат через openssl с использованием shell_exec в PHP
Реальная проблема заключается в том, что я пытаюсь запустить:
shell_exec(openssl ca -config ../openssl.cnf -in $CSR_FILE -out $CRT_FILE)
И я нахожу эту проблему, что после выполнения этой команды с просьбой о моем CA ключевой фразе, а потом отвечать да дважды, чтобы принять создание сертификата. Я не могу понять, как заставить его работать. Я застрял в этом почти три дня, ни Google, ни переполнение стека не имеют андерсера.
Я попытался запустить команду и добавить еще shell_exec(passphrase)
также, передавая кодовую фразу и «y» дважды таким образом.
shell_exec("openssl....","passphrase","y","y")
Большое спасибо, я ценю всю помощь.
Первое, что я хотел бы сделать, это изменить '../ openssl.cnf' на полный путь - возможно, текущий каталог PHP для команд не относительно местоположения сценария? – halfer
Кроме того, я бы предположил, что вам нужно предоставить параметры консоли, чтобы не требовалось вводить клавиатуру. Возможно ли это с помощью этой консоли? – halfer
(Вы, вероятно, можете делать то, что вы пытаетесь сделать, используя php.net/openssl, кстати, может быть, это было бы проще?). – halfer