Ich habe ein Problem beim Generieren eines Schlüsselpaars mit einem alternativen Antragstellernamen mithilfe des Java- keytool
Dienstprogramms von Java 1.7. Ich versuche den Anweisungen hier zu folgen .
Ein Beispiel für den Befehl, den ich verwende, lautet wie folgt (dieses Beispiel wurde getestet):
keytool -keystore c:\temp\keystore.jks -storepass changeme -keypass changeme -alias spam -genkeypair -keysize 2048 -keyalg RSA -dname "CN=spam.example.com, OU=Spam NA, O=Spam Inc, L=Anywhere, S=State, C=US" -ext san=dns:spam,ip:192.168.0.1
Ich generiere dann die CSR mit dem folgenden Befehl:
keytool -keystore c:\temp\keystore.jks -storepass changeme -alias spam -certreq -file c:\temp\spam.csr
Wodurch wird die folgende Zertifikatsanforderung generiert:
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIC5TCCAc0CAQAwcDELMAkGA1UEBhMCVVMxDjAMBgNVBAgTBVN0YXRlMREwDwYDVQQHEwhBbnl3
aGVyZTERMA8GA1UEChMIU3BhbSBJbmMxEDAOBgNVBAsTB1NwYW0gTkExGTAXBgNVBAMTEHNwYW0u
ZXhhbXBsZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCExCFepag4KH+j8xgR
BjI58hOEiFuSrkgbL5/1steru3+FwDb98R8XO90kKreq/Qt7s/oHbTpFOwotdkGVxA2x44/R5OYr
Qdfk3v32ypJTxms/8tu0Zi9wbH2ruA/h5AhtZ9TV/xLPFSe5eFvN0pUl90p+9zfd0ZCmPQ69k3Lb
JWlw7eIs7sD1yRqlYZL+HJWrsdtYTHjpqEURcZ5jN0H2YeM/eBWZr7eMKrT4xGRwotFj9AfHCiUj
HH4XTJgkrbBtw96pkPYMj/C7TfUE/slCxafEBIkVKlkHLBb9ra3PVfW/QoDGsf2FjtNKOKFxyy7p
A3A5ufdvrCVZ5EKWGrbbAgMBAAGgMDAuBgkqhkiG9w0BCQ4xITAfMB0GA1UdDgQWBBS1GytnaPx2
SAZCyto2BKh7Yw7bgTANBgkqhkiG9w0BAQsFAAOCAQEAIiwY6RIIJkgUQsdK2XiLJDhBnoxfsKjQ
zkWdZjETNxdD9LSng4AZroKjl05NRdjVkew5QM/gNt8s4jcI8OE0EOaZz6ZmlHK39bPtifJ9xlhy
0Q2Q5VAZ6mUB3BU4QF17MLmtEuI+FsG+S7ZKTK+j1Mcn8E+XvS5EbA0NJJkiIhfikr7nUEgB+qUU
CW0vM53FhVPO/piphNUuE60lMlomnDnCHW9xevAolb3rVCvqTdZ2q3G6BNFG07YEL/jaKKIctrnN
W6W4aGb6ppdXXExkx6EIj7hleoSxZHDVjxiIb3U16WFObtwCpTe9ygHcZtZswRkTzwJZLHipCkcQ
GY3lwA==
-----END NEW CERTIFICATE REQUEST-----
Wenn ich die CSR mit dem CSR-Decoder bei SSL Shopper untersuche , wird nicht angezeigt , dass das angegebene SAN enthalten ist. Dieses Zertifikat ist für die interne Verwendung in unserer Umgebung vorgesehen. Das SAN ist erforderlich, da Benutzer möglicherweise nur mit FQDN, Servername oder IP-Adresse auf die Site zugreifen.
Ich bin weiterhin zu beheben, aber ich bin nicht , dass mit Zert erfahren, so dass ich mit einem Verlust bin und die meisten anderen Leute in unserer Umgebung nicht verwenden keytool
ihre certs zu erzeugen.
Gedanken? Alternativen? Ich bin auf jeden Fall bereit, eine andere Methode zum Generieren des Schlüssels und der CSR zu verwenden, sofern ich ihn irgendwann in einen Java-Keystore importieren kann.
quelle
Antworten:
Sie müssen das
-ext
Flag auch an den zweiten Befehl übergeben:Dann enthält das Zertifikat den ALT-Namen:
quelle
keytool
Dokumente scheinen (zumindest für mich) nicht zu sagen, dass es erforderlich ist. Aber zumindest ist es eine Antwort, mit der ich leben kann und ich weiß, dass ich nicht völlig verrückt bin. Vielen Dank.