Ошибка TOMCAT SSL: имя псевдонима не идентифицирует ключевую запись

Я пытаюсь настроить Tomcat 6 с использованием SSL с сертификатом, предоставленным нам (кем-то). Мой опыт работы с SSL длится всего несколько дней, но мне все еще нужно настроить эту чертову штуку.

Мне предоставили сертификат (загруженный из IE) в формате DER.

Затем я создал хранилище ключей:

keytool -import -alias btIEgen -file MyCompany.der -keystore b2b.keystore

Допустим, я использовал «пароль» для пароля

Я настроил это в Tomcat server.xml в разделе SSL:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true"
    keystoreFile="webapps/b2b.keystore" keystorePass="password" keyAlias="btIEgen" 
    clientAuth="false" sslProtocol="TLS" />

При запуске Tomcat я получаю чертову ошибку.

Затем я сделал keytool -list на b2b.keystore и заметил, что псевдоним написан полностью в нижнем регистре, поэтому после обновления server.xml и перезапуска я все еще получаю ту же ошибку, но для псевдонима в нижнем регистре.

Тогда я подумал, что, возможно, мне нужен корневой CA. Итак, я воссоздал b2b.keystore следующим образом:

keytool -import -alias root -file myCA.cer -keystore b2b.keystore

Затем я повторно выполнил свою команду keytool для MyCompany.der

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

Мне интересно, делаю ли я какую-то фундаментальную ошибку при настройке tomcat, или эта штука должна работать, а я просто делаю глупую ошибку по неосторожности?

Любое руководство будет очень признательно.

26
задан Donal Fellows 10 January 2012 в 11:09
поделиться

1 ответ

Tomcat нужен сертификат и его закрытый ключ. Сертификат является общедоступной информацией, которую может видеть любой ваш пользователь, но закрытый ключ должен быть только вашим: это то, что мешает другим запускать веб-сайт с вашим сертификатом. Импортируя MyCompany.der, вы импортируете только сертификат.

Вам нужно будет найти, где ваш личный ключ находится первым. (Обычно даже тот, кто выдал вам сертификат, не должен знать его закрытый ключ.)

Возможно, закрытый ключ был сгенерирован в вашем браузере во время процесса применения сертификата. Попробуй посмотреть, сможешь ли ты экспортировать в формате .p12 / .pfx (PKCS # 12): это должно также связать закрытый ключ, если он там есть. Если это так, вы сможете использовать полученный файл в качестве хранилища ключей напрямую, используя тип хранилища PKCS12: keystoreFile="store.pfx" keystorePass="password" keystoreType="PKCS12" (вам, вероятно, не понадобится псевдоним ключа, поскольку будет только одна запись ключа).

34
ответ дан 28 November 2019 в 07:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: