Erreur TOMCAT SSL: le nom D'Alias N'identifie pas une entrée de clé

J'essaie de configurer Tomcat 6 en utilisant SSL avec un certificat qui nous est fourni (par quelqu'un). Mon expérience SSL ne dure que quelques jours, mais je dois encore configurer cette fichue chose.

on m'a fourni un certificat (Téléchargé de IE) dans le format DER.

Ensuite, j'ai créé un fichier de clés:

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

dire que j'ai utilisé "mot de passe" pour mot de passe

Je l'ai configuré dans le serveur de Tomcat.xml dans la section 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" />

Lors du démarrage Tomcat-je obtenir le fameux message d'erreur.

j'ai ensuite fait une liste de claviers sur b2b.keystore, et a remarqué que l'alias est dans toutes les minuscules, donc après la mise à jour du serveur.xml et redémarrage, j'obtiens toujours la même erreur, mais pour l'alias minuscule.

alors j'ai pensé que peut-être j'ai besoin D'une racine CA. Donc j'ai recréé le b2b.keystore comme suit:

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

puis j'ai ré-exécuté ma commande keytool contre MyCompany.der

Mais j'obtiens toujours la même erreur, que l'alias ne permet pas d'identifier une entrée de clé.

je me demande si je fais une erreur fondamentale dans la configuration de tomcat, ou si cette chose devrait fonctionner et je fais juste une stupide erreur négligente?

toute orientation serait grandement appréciée.

23
demandé sur Donal Fellows 2012-01-10 10:57:19

1 réponses

Tomcat a besoin du certificat et de sa clé privée. Le certificat est une information publique que n'importe quel utilisateur peut voir, mais la clé privée doit être la vôtre seulement: c'est ce qui empêche les autres d'exécuter un site Web avec votre certificat. Par l'importation d' MyCompany.der, vous importez seulement le certificat.

vous devez trouver où votre clé privée est la première. (Normalement, même la personne qui vous a délivré le certificat ne devrait pas connaître clé.)

la clé privée peut avoir été générée dans votre navigateur au cours du processus de demande de certificat. Essayez de voir si vous pouvez l'exporter dans .p12/.pfx (PKCS#12) format: cela devrait regrouper la clé privée aussi si elle est là. Si c'est le cas, vous devriez pouvoir utiliser le fichier résultant comme un keystore directement en utilisant le PKCS12 magasin de type: keystoreFile="store.pfx" keystorePass="password" keystoreType="PKCS12" (vous n'aurez probablement pas besoin d'un alias clé, puisqu'il n'y aura qu'une entrée clé).

29
répondu Bruno 2012-01-10 10:01:30