я получаю внешние .pem
файлы, которые необходимо преобразовать в .p12
файлы - в процессе добавляю логин и пароль. (Мне нужно сделать это, чтобы использовать сторонний API.)
Используя openssl
, команда...
openssl pkcs12 -export -in xxxx.pem -inkey xxxx.pem -out xxx.p12 -passout pas:newpassword -name "newname"
Я могу запустить это из сеанса терминала, и оно отлично работает.
Однако мне придется делать это часто, и я написал класс Java, который обрабатывает это и многое другое (мое приложение в основном .jsp
с Tomcat и Apache). Когда я пытаюсь запустить ту же команду из Java, используя Runtime.exec
, я получаю ужасную ошибку «невозможно записать« случайное состояние »»( Использование OpenSSL, что делает «невозможно записать« случайное состояние » "в смысле? ).
Я предполагаю, что разница в том, что когда я запускаю Java, пользователь не является "root".
Итак, есть ли лучший способ конвертировать из pem в .p12 с помощью библиотеки Java вместо запуска программы командной строки (например, openssl)?
В противном случае мне нужно выполнить некоторые настройки на моем сервере. Я не могу найти ни одного файла .md
на сервере. Единственный файл openssl.cnf
находится в странном каталоге ( /etc/pki/tls
). Нужно ли мне создавать новый файл openssl.cnf
где-то еще?