3510
Kommentar:
|
← Revision 9 vom 2018-01-10 20:28:36 ⇥
0
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 1: | Zeile 1: |
#acl All:read Auf Gerät:: [[Dienste und Geräte/Computer/Pummeluff|Pummeluff]] Port:: - LXC:: - Hostname:: pummeluff.nodes.hack-hro.de '''Die CA ist faktisch bei uns nicht mehr in Benutzung. Sämtliche Dienste laufen jetzt mit [[Dienste und Geräte/Dienste/letsencrypt|letsencrypt]]'''. = Certificate Authority = (wesentliche Teile dieser Doku sind von [[stackoverflow|http://stackoverflow.com/questions/21297139/how-do-you-sign-openssl-certificate-signing-requests-with-your-certification-aut]] übernommen) Auf [[Dienste und Geräte/Computer/Pummeluff|Pummeluff]] liegt eine eigene Certificate Authority. Diese befindet sich in {{{/root/ssl/ca}}}. Mit ihr sollten Zertifikate, die wir für den internen Gebrauch benötigen, unterschrieben werden. Hackspaceler_innen sind angehalten sich die CA in ihre jeweiligen CA-Stores zu importieren. Damit geht allerdings auch etwas Verantwortung einher, weil sich damit potentiell Zertifikate für jede beliebige Domain erstellen lassen, die dann bei den entsprechenden Personen als vertrauenswürdig gelten. Das Passwort für den CA-Key hat aktuell nur [[kmohrf|Konrad]]. == Neuen CSR erstellen == Diese Anleitung nimmt an, dass ihr einen CSR für ein anderes Gerät erstellen wollt, dass bei uns unter $gerät.nodes.hack-hro.de erreichbar ist. Der Einfachheit halber wird dieses Gerät in dieser Anleitung {{{foo}}} heißen. Als erstes kopiert ihr einen der bisherigen Ordner unter {{{/root/ssl/nodes}}} nach {{{/root/ssl/nodes/foo}}}. Löscht danach die {{{csr}}}, {{{pem}}} und {{{key}}} Dateien in dem Ordner. Danach bennent die :code:`.cnf}}} Datei in dem Ordner in {{{foo.cnf}}} um und öffnet sie zum editieren. Passt dann die Schlüsselwerte zu {{{default_keyfile}}} und {{{commonName_default}}} und den Bereich {{{alternate_names}}} an. Die {{{alternate_names}}} sind die Domains, für die dieses Zertifikat schlussendlich ausgestellt wird. Danach führt folgendes Kommando aus: {{{openssl req -config foo.cnf -newkey rsa -sha256 -nodes -out foo.csr -outform PEM}}} OpenSSL wird dann noch mal die voreingestellten Angaben abfragen. Achtet drauf, dass alles stimmt. Wenn alles geklappt hat, sollten in dem Ordner jetzt eine {{{foo.key}}} und {{{foo.csr}}} Datei liegen. Diese müssen jetzt von der CA unterschrieben werden. == Zertifikat für CSR ausstellen == Anschließend an die Anleitung zur Erstellung des CSR geht es wieder um das Gerät {{{foo}}}. Um mit der CA ein Zertifikat unterschreiben muss folgender Befehl ausgeführt werden: {{{openssl ca -config /root/ssl/ca/ca.cnf -policy signing_policy -extensions signing_req -out /root/ssl/nodes/foo/foo.pem -infiles /root/ssl/nodes/foo/foo.csr}}} Für die Ausführung des Befehls wird das Passwort des CA Keyfiles benötigt. Das hat aktuell nur Konrad. Wer auch immer ein Zertifikat mit der CA unterschreibt sollte den CSR eingehend prüfen. Die CA Konfiguration in {{/root/ssl/ca/ca.cnf}}} enthält die {{{copy_extensions}}} Direktive mit dem Wert {{{copy}}} . Dadurch werden quasi alle Angaben aus dem CSR direkt übernommen. Das ist wichtig, um einfach die subjectAltNames aus dem CSR zu nutzen. Man muss dem CSR aber damit Vertrauen. Prüft also die Daten! Die Zertifikate werden standardmäßig für 2 Jahre ausgestellt. Die PEM Datei, die für das Zertifikat generiert wird, lässt sich z.B. direkt im Apache verwenden. Root-Zertifikat der CA ist an diese Wiki-Seite angehängt.[[attachment:ca.pem|ca.pem]] ---- KategorieDienste |