Ошибка 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 я получаю ошибку darn.
Затем я сделал keytool -list на b2b.keystore и заметил, что псевдоним имеет все строчные буквы, поэтому после обновления server.xml и перезапуска я все равно получаю ту же ошибку, но для псевдонима нижнего регистра.
Тогда я, хотя, возможно, мне нужен корневой ЦС. Поэтому я воссоздал файл b2b.keystore следующим образом:
keytool -import -alias root -file myCA.cer -keystore b2b.keystore
Затем я повторно выполнил команду keytool против MyCompany.der
Но я все равно получаю ту же ошибку, что псевдоним не идентифицирует ключевую запись.
Мне интересно, не делаю ли я фундаментальную ошибку при настройке tomcat, или если эта вещь работает, и я просто делаю глупую неосторожную ошибку?
Всем приветствуется любое руководство.
Ответы
Ответ 1
Для Tomcat нужен сертификат и его закрытый ключ. Сертификат является общедоступной информацией, которую может видеть любой из ваших пользователей, но закрытый ключ должен быть только вашим: это то, что мешает другим запускать веб-сайт с вашим сертификатом. Импортируя MyCompany.der
, вы импортируете только сертификат.
Вам нужно будет найти, где вы первый секретный ключ. (Обычно даже тот, кто выдал вам сертификат, не должен знать его секретный ключ.)
Закрытый ключ может быть сгенерирован в вашем браузере во время процесса подачи сертификата. Попытайтесь посмотреть, можно ли экспортировать в формате .p12
/.pfx
(PKCS # 12): это должно также связывать закрытый ключ, если он есть. Если это так, вы должны иметь возможность использовать полученный файл в качестве хранилища ключей непосредственно с помощью типа хранилища PKCS12
: keystoreFile="store.pfx" keystorePass="password" keystoreType="PKCS12"
(вам, вероятно, не понадобится псевдоним ключа, так как будет только одна ключевая запись).