93630
Goto Top

Wieso kann eine CA Zertifikate ausstellen und ein normaler Nutzer nicht?

Soweit ich das Zertifikatssystem verstanden habe, funktioniert das so:

Es gibt eine root CA. Diese muss im trusted cert store vom client hinterlegt sein, damit ihr vertraut wird.

Diese root CA kann dann ein Zertifikat für eine intermediate ca ausstellen. Das intermediate Zertfikat muss nicht mehr auf dem Client hinterlegt sein, sondern kann auch vom aufzurufenden Webserver mit ausgeliefert. (Wegen der Vertrauenskette)

Nun kann die intermediate CA mit dem intermediate Zertifikat ein Zertifikat für eine spezielle Domain ausstellen und diese dem Serverbetreiber verkaufen.


Was ich daran nur nicht verstehe ist, wodurch wird technisch verhindert, dass der Serverbetreiber mit seinem eigentlich domain gebundenen Zertifikat jetzt nicht noch für weiter domains Zertifikate ausstellen kann? Der Zertifikatskette ist ja erstmal gültig. Woran macht der Client den Unterschied zwischen intermediate Zertifikat(zum Ausstellen weiterer Zertifikate berechtigt) und domain gebundenem Endnutzer-Zertifikat(Keine weiteren Zertifikate erstellbar) fest?

Danke

Content-Key: 320671

Url: https://administrator.de/contentid/320671

Printed on: April 23, 2024 at 07:04 o'clock

Mitglied: 131381
Solution 131381 Nov 11, 2016 updated at 14:33:29 (UTC)
Goto Top
Weil die Verwendung des private Keys des Certs durch die Key Usage Extensions des Zertifikats reglementiert ist:
https://technet.microsoft.com/en-us/library/cc753641(v=ws.11).aspx?f=255 ...

Deswegen ist es ja auch Server-Zertifikat und kein CA Zertifikat face-smile

A certificate enables the subject to perform a specific task. To help control the usage of a certificate outside its intended purpose, restrictions are automatically placed on certificates. These restrictions can be applied by using the key usage extension.
Key usage is a restriction method that determines what a certificate can be used for. This allows the administrator to issue certificates that can only be used for specific tasks or certificates that be used for a broad range of functions. Key usage descriptions include "Digital signature" and "Allow key exchange only with key encryption."

Beispiel eines CA Zertifikats, diese essentielle Erweiterung (Zertifikatsignatur) hat nur eine CA und diese erlaubt das Ausstellen (Signieren) von Zertifikaten bzw. CSR (Certificate Signing Requests).

screenshot

Gruß
Mitglied: 108012
108012 Nov 11, 2016 at 15:21:51 (UTC)
Goto Top
Hallo,

CA = Certificate Authority dort steckt das Wort Autorität drinnen und wenn jeder Benutzer ein
Zertifikat ausstellen könnte würde das ja auch keinen Sinn mehr ergeben. Als Beispiel stelle Dir
vor wir (Fahrgäste) könnten uns alle selber ein Busticket oder Bahnticket ausstellen das wäre zwar
toll macht aber irgend wie genau so wenig Sinn ´wie mit den Zertifikaten. Man kann auch nicht pauschal
alles über einen "Kamm" scheren denn wenn man Zuhause einen Radius Server betreibt stellt man seinen
eigenen Klienten ja auch ein eigenes Zertifikat aus so dass nur diese Geräte dann Zugang zum Netzwerk
bekommen und das soll auch genau so sein denn wenn so ein Zertifikat was dann auch noch gültig ist jeder
ausstellen kann der gar nicht in das Netzwerk rein soll wäre das ja auch irgend wie Witzlos.

Und genau so verhält es sich mit den Server Zertifikaten, damit möchte man ja den Besuchern und
anderen Servern Gewissheit zusichern das dort nicht einfach jemand einen Server aufsetzt und über
den dann alle Kunden "bestellen" oder sich sicher wähnen alle Inhalte würden von dem erwarteten
Anbieter von Diensten oder Software kommen.

Gruß
Dobby
Mitglied: 93630
93630 Nov 11, 2016 updated at 15:28:51 (UTC)
Goto Top
Danke @131381!

Die Aussage das intermediate certificates auch über den Endkunden-Webserver verteilt werden können war doch soweit auch richtig oder?
Mitglied: 131381
131381 Nov 11, 2016 updated at 15:34:32 (UTC)
Goto Top
Zitat von @93630:
Die Aussage das intermediate certificates auch über den Endkunden-Webserver verteilt werden können war doch soweit auch richtig oder?
Weitere CA Zertifikate wie ein Intermediate CA Zertifikat ja eines ist, kann nur die übergeordnete CA selbst ausstellen,logisch. Das System gäbe ja sonst überhaupt keinen Sinn.
Mitglied: 93630
93630 Nov 11, 2016 at 16:21:01 (UTC)
Goto Top
Ausstellen ist klar.

Ich habe nur nach ausliefern gefragt. Das ist ein Unterschied ;) Soweit ich weiß sind z.B. unter Linux intermediate certs gar nicht in System hinterlegt, sondern müssen vom Webserver den man aufrufen will mit ausgeliefert werden. Ansonsten gibts nur nen bösen Fehler.
Mitglied: 131381
131381 Nov 11, 2016 updated at 16:53:51 (UTC)
Goto Top
Zitat von @93630:

Ausstellen ist klar.

Ich habe nur nach ausliefern gefragt. Das ist ein Unterschied ;)
Klar aber "verteilen" war in deiner Frage leider nicht eindeutig. Das kann beides bedeuten.

Jepp:
https://en.wikipedia.org/wiki/Intermediate_Certificate_Authority
Installing an intermediate CA signed certificate on a web server or load balancer usually requires installing a bundle of certificates.

Summary:

    a private key is generated on the big-ip and kept in the filestore (will be used later in your clientssl profile as 'key');
    a certificate signing request will be created for the specific hostname and with some specific attributes;
    you will submit the certificate signing request to a certificate authority (CA);
    the CA will return a signed certificate. You will import it into the TMOS filestore and use it in your clientssl profile as 'certificate';
    the CA will also provide a so-called intermediate CA file or chain certificate. It proves that your chosen CA is trusted by one of the root CAs. You will need the intermediate CA certificate as 'chain' certificate in your clientssl profile.

Member: Lochkartenstanzer
Lochkartenstanzer Nov 11, 2016 updated at 19:47:54 (UTC)
Goto Top
Moin,

prinzipiell kannst Du natürlich auch eine eigene CA betreiben und alle Zertifikate die Du magst ausstellen. Du mußt nur dafür sorgen, daß Du irgendwie bei den Clients als vertrauenswürdig eingestuft wirst. z.B. in dem Du die sourcen der client unauffälig patchst, wie es die NSA & Co. tun oder einem der Hersteller genug Geld gibst, wie es manche andere tun. face-smile

lks

PS. Für meine System betreibe ich meine eigene CA und sorge halt dafür, daß meine Clients mein root-CA kennen "Fremde" müssen halt erstmal nachfragen, ob meine Zertifikate auch die sind, die sie vorgeben zu sein.