Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

09.03.2012, 13:00

Firefox mag mein SSL Zertifikat von Startcom nicht

Hallo,

ich hab einen Webserver, der hier läuft.
Das Zertifikat wird bei mir von Chromium akzeptiert, aber von Firefox nicht.
Firefox auf einem Arch Linux von einem Freund beschwert sich nicht.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Foyaxe« (30.03.2012, 22:48)


2

09.03.2012, 13:16

Hab mal getestet: Bei mir beschwert sich mein Browser (icecat-3.6.20) nicht.

Ich kann mir vorstellen dass es mit folgendem zusammenhängt:

Ausschnitt aus den elogv postinst messages des Paketes "app-misc/ca-certificates":

Quellcode

1
2
3
4
5
6
7
8
9
10
WARN: postinst                                                                                                              │
│Broken symlink for a certificate at /etc/ssl/certs/12ac4d91.0                                                               │
│Broken symlink for a certificate at /etc/ssl/certs/Thawte_Time_Stamping_CA.pem                                              │

.... viele weitere kaputte symlinks

│You MUST remove the above broken symlinks                                                                                   │
│Otherwise any SSL validation that use the directory may fail!                                                               │
│To batch-remove them, run:                                                                                                  │
│find -L /etc/ssl/certs/ -type l -exec rm {} +                                                                               │


Prüfe also das Verzeichnis /etc/ssl//certs/ auf verweiste Symlinks und bereinige diese wie oben angegeben.

Deine Seite nutzt "StartCom Ltd." Zertifizierung. Prüfe also ob die entsprechenden ROOT-Zertifikate richtig verlinkt sind

Quellcode

1
2
3
# ls -l /etc/ssl/certs/ | grep Start
lrwxrwxrwx 1 root root     36 24. Jan 15:02 ae8153b9.0 -> StartCom_Certification_Authority.pem
lrwxrwxrwx 1 root root     79 13. Dez 10:05 StartCom_Certification_Authority.pem -> ../../../usr/share/ca-certificates/mozilla


GGf.

Quellcode

1
update-ca-certificates
ausführen.
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

3

09.03.2012, 13:34

Hm, da habe ich auch schon nach der Ursache gesucht.

Firefox sagt: "Dem Zertifikat wird nicht vertraut, weil keine Zertifikatsausstellerkette angegeben wurde"
Die Kette wird auch nicht angezeigt, wenn ich das Zertifikat mit Firefox betrachte.
Bei Chromium wird die Kette korrekt dargestellt.

Verwenden die Browser denn alle die Wurzelzertifikate des Systems oder kann es sein, dass einer von beiden Browsern seine eigenen benutzt und deshalb (nicht) funktioniert.
Firefox ist übrigens selbst kompiliert (Chromium auch), ich könnte mal schauen, ob sich mit der bin-Version was ändert.

4

09.03.2012, 14:29

Hallo Foyaxe,
nur kurz zur Info. Auch hier von einem reinrassigen gentoo mit dem aktuellen =firefox-10.0.1-r1 wird deine Seite mit dessen Zertifikat einwandfrei ohne zu murren akzeptiert.
Das Zertifikat ist valide und gültig, die Verbindung hochgradig Verschlüsselt - soweit also alles bestens :)

Sorry, eine Idee woran es liegen könnte wenn es das nicht tut hab ich zZt leider nicht...

5

09.03.2012, 14:57

Hast recht, hab gerade mit dem Firefox-10 ausprobiert und es geht auch nicht.

Hab unter "Einstellungen / Erweiterungen / Zertifizierungsstellen geprüft. "StartCom Ltd." ist da. Das Zertifikat wird also schon verwendet.
Hab die Einstellungen verglichen und dabei festgestellt: Der Firefox hat nur 2x "Class 2" Sicherheitsmodule zu dem Zertifikat. Beide können keine Webseiten identifizieren.
Im Icecat gibt es noch den "Class 1" Sicherheitsmodul und noch ein Paar mehr. Deine Seite wird über den "Class 1" identifiziert.
An sonsten sehen die Zertifikate identisch aus. Es scheint so als ob der neuere Firefox nicht alle Kryptographie-Sicherheitsmodule hat.
Hab im Netz etwas gesucht und gelesen: Damit ein Sicherheitsmodul akzeptiert wird muss dieser beim Aussteller verifiziert werden. Danach wird diese Verifizierung im irgendwo im Browser gespeichert.

Während der Fehleranalyse habe ich folgendes festgestellt.
- https://www.startcom.org/ hat gerade ein Problem - Antwortet nicht.
- Irgendwann bekam ich HTTP Code 502 - Der Firefox konnte jedoch das dort hinterlegte Zertifikat akzeptieren.
- Seit dem habe ich auch ein StartCom "Class 1 Primary Intermediate Client CA" Software-Sicherheitsmodul im Firefox und kann ohne Probleme auf Deine Seite zugreifen. ;)

Es lag/liegt also nicht an Deinem Browser sondern an StartCom. In den anderen Browsern war diese Verifizierung wohl bereits im Cache und daher war das Problem dort nicht bemerkbar.
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

6

09.03.2012, 15:31

Aha...
Dann einfach mal abwarten und Kaffee trinken.

7

10.03.2012, 05:23

Sogar M$ InternetExplorer beschwert sich NICHT!!! Und der mault sofort rum, wenn etwas mit zertifikaten nicht stimmt ;) Ich komme direkt ohne Probleme auf die LogIn-Seite :)
Gruß
mnt_gentoo
_________________________________________________________________________________________

Die Launen und das Schicksal eines Gentoo-Users: ?( :| :cursing: :wacko: 8| ^^ 8o ;( :P ?( ...

8

10.03.2012, 08:30

Hm, irgend wie funktioniert die automatische Zertifikaten-Verifikation bei Dir noch nicht. StartCom ist wieder verfügbar. Hab jetzt im IceCat (wo es funktionierte) die ganzen StartCom Sicherheitsmodule rausgeschmissen. Ergebnis => Deine Seite geht nicht.

Erst wenn ich die die PEM-Datei sub.class1.server.ca.pem importiere, geht Deine Seite wieder.
Aber das sollte ja automatisch passieren.
Eventuell wird Dir in dem Forum https://forum.startcom.org besser geholfen.
Interessant ist zB. https://forum.startcom.org/viewtopic.php?f=15&t=1569
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

9

11.03.2012, 12:10

Also nochmal zum Verständnis.
Ich dachte, der Webserver würde eine Zertifikatkette liefern, die vom Zertifikat der Seite bis zu einem Wurzelzertifikat führt. Das wiederum vergleicht der Client mit seiner Liste von vertrauten Zertifikaten.
Nun scheint es mir so, dass Firefox und Derivate das nicht so machen, sondern die Zertifikate von wo anders beziehen?

Zum Technischen:
Webserver ist ein Jetty 6.1, der für einen Subsonic Server werkelt.
Der keystore sieht so aus:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# keytool -list
Geben Sie das Keystore-Passwort ein:  

Keystore-Typ: JKS
Keystore-Provider: SUN

Ihr Keystore enthält 3 Einträge.

startcom.ca.sub, 09.03.2012, trustedCertEntry,
Zertifikatsfingerabdruck (MD5): 30:B0:5A:F7:B2:F4:BE:0C:28:67:15:EA:CC:5B:24:20
startcom.ca, 09.03.2012, trustedCertEntry,
Zertifikatsfingerabdruck (MD5): 22:4D:8F:8A:FC:F7:35:C2:BB:57:34:90:7B:8B:22:16
home.diezotts.de, 09.03.2012, PrivateKeyEntry, 
Zertifikatsfingerabdruck (MD5): 8B:40:AD:AB:50:05:AE:48:DE:23:71:1B:43:5E:AE:DA
Nach den Fingerabdrücken sind das genau die Zertifikate, die in Chromium als gültige Kette angezeigt werden.

Ich verstehe jetzt nur Bahnhof... Mache das auch zum ersten Mal.

Gruß
Foyaxe

10

14.03.2012, 19:17

ich pushe mal ganz unverschämt ;-)

11

20.03.2012, 20:52

Schade, weiß da wirklich niemand bescheid?
Problem besteht weiterhin...

12

22.03.2012, 06:50

Hm, Opera 11 bringt auch den Cert Error ... unter Gentoo. Ist also nicht auf FF/Arch beschränkt.
index.php?page=Attachment&attachmentID=3541
http://www.dyle.org
IM-Account (Jabber!) sind auf meiner HP ...
There is no place like /home

http://www.gentooforum.de
http://www.gentoofreunde.org

<div>how to annoy a web developer?</span>

13

27.03.2012, 01:13

Ich kenne mich in der Materie nicht aus. Spontan würde ich nach "Zertifikat Validierung Apache Howto" im Netz suchen. Anscheinend ist es auf Deinem Webserver die Konfiguration noch nicht ganz richtig. Über die SSL-Konfiguration Deines Web-Servers (ausser den Keystore) hast Du bisher wenig verraten.
Einer der Treffer war https://www.digicert.com/ssl-certificate…tion-apache.htm Aber wie gesagt ich kenne mich nicht aus...
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

14

29.03.2012, 11:33

Ich habe eigentlich schon alles verraten, was ich selber weiß.
Der Webserver ist jetty, der mit subsonic (Java-Software für Musikstreaming) mitgeliefert wird.
Konfiguration gibt es nicht. Ich habe nur den Pfad zum Keystore und das Passwort eingetragen, was soweit richtig sein muss.
Mehr Konfigurationsmöglichkeiten habe ich nicht. Dann kann es nur noch am Keystore liegen.
Jetzt wirds interessant:
Ich habe mir auf Gentoo testweise Opera installiert (11). Da wurde das Zertifikat akzeptiert.
Ich probiere mal noch verschiedene Browser aus. Vielleicht offenbart sich ja ein Hinweis.

Gruß
Foyaxe

15

29.03.2012, 11:45

Welcher Browser es ist, spielt keine Rolle. Alle können es und auch gleichzeitig nicht. Es hängt davon ab ob wie ich hier geschrieben habe http://www.gentooforum.de/post/144630/fi…html#post144630 das Sub-Zertifikat sub.class1.server.ca.pem im Browser-Cache ist. Dieser kann durch den Besuch anderer damit verschlüsselter Seiten beireits im Cache liegen. Dein Problem ist also warum Dein Web-Server diesen nicht richtig den Browsern übermitteln kann. Da Du einen exotischen Webserver hast solltest Du bei Subsonic nachfragen.
Auch wenn Open-Source kostenlos ist, ist sie nicht umsonst. Dein Preis ist Dein Engagement und Mitarbeit an OS-Projekten.
Wenn Du keinen Preis bezahlen willst, bist Du die Ware. Und das ist nicht Open Source, geschweigedenn frei.

16

29.03.2012, 11:49

Ich meine aber, eine völlig leere Opera Konfiguration benutzt zu haben.
Ich werde mal einen neuen Benutzeraccount anlegen und sehen was passiert.

17

29.03.2012, 17:24

Ok, jetzt mal eine Übersicht, welche Browser ich getestet habe. Jeweils mit leeren Konfigurationen.

Gentoo (2 Maschinen, gleiches Ergebnis):
Chromium: OK
Opera: OK
Firefox: Kette ungültig
Epiphany: Schloss mit Ausrufezeichen, aber keine Info

Debian:
Chromium: OK
Iceweasel: OK
Epiphany: Schloss mit Ausrufezeichen, aber keine Info

Windows 7 (in Virtualbox):
Internet Explorer: OK
Firefox: Kette ungültig
Chrome: OK
Opera: OK

Android 2.3 (Cyanogenmod):
Opera Mobile: OK
Android Browser: Zertifikat nicht vertrauenswürdig

Ich bin echt ratlos...

18

29.03.2012, 21:04

OK, ich habs endlich geschafft.
Kann das noch kurz jemand bestätigen?
Wobei ich eigentlich sicher bin dass es jetzt passt.
Lösung poste ich morgen. Für heute reichts mir von dem Thema. War schon kurz vor der Klapse.

Edit: Und danke für die Hilfe, Bell und Co. Bin zwar allein weiter gekommen, aber deine Diagnose war richtig. Die Kette wurde nicht mitgeliefert.

19

30.03.2012, 18:04

Okay, also nun wie versprochen zur Aufklärung, falls es jemanden interessiert was da los war.
Und insgeheim, damit ich das nächste mal die Lösung wieder finde ;-)

Ich habe leider erst gestern bemerkt, dass keytool -list auch einen verbose output hat.
Der sah folgendermaßen aus.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# keytool -list -v -keystore /var/subsonic/keystore/keystore
Geben Sie das Keystore-Passwort ein:  

Keystore-Typ: JKS
Keystore-Provider: SUN

Ihr Keystore enthält 3 Einträge.

Aliasname: startcom.ca.sub
Erstellungsdatum: 09.03.2012
Eintragstyp: trustedCertEntry

Eigner: CN=StartCom Class 1 Primary Intermediate Server CA, OU=Secure Digital Certificate Signing, O=StartCom Ltd., C=IL
Aussteller: CN=StartCom Certification Authority, OU=Secure Digital Certificate Signing, O=StartCom Ltd., C=IL
Seriennummer: 18
Gültig von: Wed Oct 24 22:54:17 CEST 2007 bis: Tue Oct 24 22:54:17 CEST 2017
Digitaler Fingerabdruck des Zertifikats:
	 MD5:  30:B0:5A:F7:B2:F4:BE:0C:28:67:15:EA:CC:5B:24:20
	 SHA1: F6:91:FC:87:EF:B3:13:53:54:22:5A:10:E1:27:E9:11:D1:C7:F8:CF
	 Unterschrift-Algorithmusname: SHA1withRSA
	 Version: 3

Erweiterungen: 

//hier habe ich gekürzt

*******************************************
*******************************************


Aliasname: startcom.ca
Erstellungsdatum: 09.03.2012
Eintragstyp: trustedCertEntry

Eigner: CN=StartCom Certification Authority, OU=Secure Digital Certificate Signing, O=StartCom Ltd., C=IL
Aussteller: CN=StartCom Certification Authority, OU=Secure Digital Certificate Signing, O=StartCom Ltd., C=IL
Seriennummer: 1
Gültig von: Sun Sep 17 21:46:36 CEST 2006 bis: Wed Sep 17 21:46:36 CEST 2036
Digitaler Fingerabdruck des Zertifikats:
	 MD5:  22:4D:8F:8A:FC:F7:35:C2:BB:57:34:90:7B:8B:22:16
	 SHA1: 3E:2B:F7:F2:03:1B:96:F3:8C:E6:C4:D8:A8:5D:3E:2D:58:47:6A:0F
	 Unterschrift-Algorithmusname: SHA1withRSA
	 Version: 3

Erweiterungen: 

//hier genauso



*******************************************
*******************************************


Aliasname: home.diezotts.de
Erstellungsdatum: 09.03.2012
Eintragstyp: PrivateKeyEntry
Zertifikatskettenlänge: 1
Zertifikat[1]:
Eigner: EMAILADDRESS=postmaster@diezotts.de, CN=home.diezotts.de, C=DE, OID.2.5.4.13=1IEN1Son9H2d9kCo
Aussteller: CN=StartCom Class 1 Primary Intermediate Server CA, OU=Secure Digital Certificate Signing, O=StartCom Ltd., C=IL
Seriennummer: 5a474
Gültig von: Mon Mar 05 00:59:43 CET 2012 bis: Thu Mar 07 00:02:22 CET 2013
Digitaler Fingerabdruck des Zertifikats:
	 MD5:  8B:40:AD:AB:50:05:AE:48:DE:23:71:1B:43:5E:AE:DA
	 SHA1: 63:86:9D:73:85:09:79:78:B1:2F:7E:96:6D:7D:5F:9D:0B:E2:EA:CA
	 Unterschrift-Algorithmusname: SHA1withRSA
	 Version: 3

Erweiterungen: 

//hier auch abgeschnitten
*******************************************
*******************************************


Das Problem war somit relativ klar:
Zertifikatskettenlänge: 1

Die "Über"–Zertifikate waren zwar im keystore, aber meins wurde, warum auch immer, nicht verkettet.

Die Lösung habe ich im Web gefunden:

Zitat

Thanks Christopher Schultz and Crypto Sal for your replies!

The key hint was the certificate chain length. My problem seemed to be that I got the server certificate as PKS12 file (including the private key). I imported it using "-importkeystore -srcstoretype PKCS12". "-trustcacerts" doesnt seem to have any effects with "-importkeystore". Since the PKS12 file containd only the server certificate, it was imported with certificate chain length 1.

So here is what worked for me:

I converted the root and intermediate certificates to human readable form by importing them into a keystore and then exporting them again using "-export -rfc".

I imported my server certificate into a new keystore and adapted alias and passwords for use with my Tomcat configuration

I exported the server certificate again using "-export -rfc"

I opened the newly created export file of my server certificate and inserted the contents of the intermediate and the root certificates at the bottom of the file. This created a valid certificate chain in PKCS7 format.

I imported the altered certificate file into the same keystore using the same alias. This replaced the single certificate with the complete certificate chain (private key remained unaltered).

Now I have a valid keystore with my server certificate and the intermediate and root certificates and the certificate chain length is 3. Tomcat deliveres the chain correctly and I finally got rid of the annoying security warnings in Firefox.

Thanks for your help!


Dann habe ich das einfach genauso gemacht und es hat funktioniert.
Ich hasse es, wenn man Dinge tut, die man nicht verstanden hat.
Und den Sinn eines Keystores habe ich auch noch nicht begriffen.