Как добавить самоподписанный сертификат openssl x509 в Tomcat? - PullRequest
0 голосов
/ 16 февраля 2012

Я создал свой сертификат следующим образом:

openssl req -nodes -new -text -out ~/server.req -keyout ~/server.key

openssl req -x509 -in ~/server.req -text -key ~/server.key -out ~/server.crt

Теперь мне нужно добавить его в Tomcat, очевидно, я не могу использоватьпример документации Tomcat

openssl pkcs12 -export -in server.crt -inkey server.key -out server.p12 -name tomcat -CAfile serverCA.crt -caname root -chain

, поскольку он самоподписан.Так как мне добавить его в Tomcat?

Ответы [ 2 ]

0 голосов
/ 16 февраля 2012

Я нашел свои старые заметки.

Вы не можете использовать самоподписанный сертификат. Что вам нужно сделать, так это пойти по более длинному маршруту и ​​создать «настоящий» локальный ЦС, как показано ниже:

Создание личного ключа для CA

openssl genrsa -out CA/cakey.pem -des3 2048

Создание запроса на подпись сертификата для корневого сертификата CA

openssl req -new -config openssl.cnf -key CA/cakey.pem -out CA/cacert.req

Самоподписать сертификат CA

openssl x509 -req -in CA/cacert.req -extfile openssl.cnf \
    -extensions v3_ca -signkey CA/cakey.pem -out CA/cacert.pem -days 3650

Создание хранилища ключей Java, содержащего сертификат CA для вашего клиента:

keytool -importcert -file CA/cacert.pem -keystore client.jks -storepass [password]
0 голосов
/ 16 февраля 2012

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

Я нашел этот учебник полезным в прошлом: http://gagravarr.org/writing/openssl-certs/ca.shtml

Следующие команды с этой страницы:

openssl genrsa -des3 -out CA.key <key_size>
openssl req -new -key CA.key -x509 -days 1095 -out ../certs/CA.crt

Где CA.crt будет тем, что используется при создании вашего сертификата с флагом -CAfile

Надеюсь, чтопомогает.

...