2012-07-03 20 views
12

Zastanawiasz się, czy ktoś może mnie oświecić, skoro im to wkręca! Mam utworzony keytool magazynu kluczy, podstawowy, wtórny i ssl cert Thawte. Pierwotnie utworzyłem CSR z openssl, a następnie używając udokumentowanego procesu przekonwertowałem klucz prywatny na PKCS12 w celu zaimportowania do magazynu kluczy.Certyfikat SSL na serwerze Tomcat - nazwa aliasu nie identyfikuje klucza

wierzę przywieźli je wszystkie do kluczy OK (ale oczywiście nie!), Ale błąd Dostaję od Tomcat jest: „nazwa java.io.IOException Alias ​​nie identyfikuje kluczową pozycję

Jeśli robię keytool -list -keystore keystore.ks to co ja dostać typ kluczy: JKS dostawcy kluczy: Pon

Twój kluczy zawiera 4 wpisy

secondary, Jun 22, 2012, trustedCertEntry, 
Certificate fingerprint (MD5): EB:A3:71:66:38:5E:3E:F4:24:64:ED:97:52:E9:9F:1B 
tomcat, Jun 22, 2012, trustedCertEntry, 
Certificate fingerprint (MD5): EA:D0:43:F8:7F:D5:1C:4A:BA:A7:F4:64:A9:6A:A1:B0 
primary, Jun 22, 2012, trustedCertEntry, 
Certificate fingerprint (MD5): D6:6A:92:1C:83:BF:A2:AE:6F:99:5B:44:E7:C2:AB:2A 
1, Jul 2, 2012, PrivateKeyEntry, 
Certificate fingerprint (MD5): EA:D0:43:F8:7F:D5:1C:4A:BA:A7:F4:64:A9:6A:A1:B0 

Jestem całkiem pewien, że mój server.xml Tomcat jest ok ale tutaj jest zbyt dla złącza https:

<Connector port="443" 
    protocol="org.apache.coyote.http11.Http11Protocol" 
    maxHttpHeaderSize="8192" 
    SSLEnabled="true" 
    maxThreads="150" 
    minSpareThreads="25" 
    maxSpareThreads="75" 
    enableLookups="false" 
    disableUploadTimeout="true" 
    acceptCount="100" 
    scheme="https" 
    secure="true" 
    clientAuth="false" 
    sslProtocol="TLS" 
    URIEncoding="UTF-8" 
    keystorePass="xxxxxx" 
    keystoreFile="/keys/keystore.ks" 
    keyAlias="tomcat"/> 

Jakieś pomysły? Po raz pierwszy to zrobiłem, więc może spaprałem coś niesamowicie oczywistego?

Witryna działa dobrze na porcie 80.

chciałbym usłyszeć jakieś sugestie :)

Odpowiedz

15

Kiedy listy alias z keytool nazwa aliasu, co jest przed przecinkiem dla każdego wpisu. Tutaj masz 4 wpisy: secondary, tomcat, primary i 1. Tylko alias 1 dotyczy klucza prywatnego.

(zauważ, że można użyć pliku PKCS # 12 bezpośrednio za pomocą keystoreType="PKCS12" zamiast.)

+0

Ahh ok, rozumiem co masz na myśli. Po raz pierwszy używam SSL, nie możesz mieć duplikatu aliasu w magazynie kluczy, więc jeśli "tomcat" jest certyfikatem ssl dostarczonym przez Thawte, co mam nazywać kluczem prywatnym, który się z nim wiąże? A który z nich ma wskazywać serwer server.xml? Dziękuję za pomoc, wyciągnąłem z tego włosy. – G33kGrl

+0

Niewielki postęp - ustaw plik server.xml tak, aby używał aliasu 1 (klucz prywatny), a teraz przynajmniej złącze otwiera poprawnie ten port. Jednak otrzymuję błąd certyfikatu "certyfikat nie jest zaufany, ponieważ nie podano łańcucha wystawców" ... wykres pogrubia ... – G33kGrl

+2

Podczas importowania certyfikatu należy go zaimportować do aliasu klucza prywatnego (który znajduje się już w magazynie kluczy), jak opisano [tutaj] (http://stackoverflow.com/a/9300727/372643). Mówiąc to, wydaje się, że masz już plik PKCS # 12 zbudowany z tego certyfikatu, więc powinieneś być w stanie go użyć bezpośrednio. Wygląda na to, że prawdopodobnie nie skompilowałeś poprawnie pliku PKCS # 12 (użyłeś klucza prywatnego, którego używasz do żądania?). Jakie instrukcje podążyłeś? – Bruno

0

znalazłem this page szczególnie przydatna .. Moja sytuacja była z cert GeoTrust dostarczonej przez domain.com gdzie miałem tylko dwa pliki : tekstowy certyfikat (x509) i tekstowy klucz prywatny. Te instrukcje i plik klasy konwerterów działały jak czar.

Powiązane problemy