Opennet CA: Unterschied zwischen den Versionen

Aus Opennet
Wechseln zu: Navigation, Suche
(Anhänge)
(Zertifikatserstellung freigeben: der Link https://ca-internal.opennet-initiative.de/internal/ ist defekt.)
 
(52 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
 
|description=Opennet Zertifizierungstelle
 
|description=Opennet Zertifizierungstelle
 
|nextMeeting=nur bei Bedarf
 
|nextMeeting=nur bei Bedarf
|members=[[Benutzer:Christianw|Christian W.]],  
+
|members=[[Benutzer:Christianw|Christian W.]], [[Benutzer:Age|Henning R.]], [[Benutzer:J.P.|Jörg P.]], [[Benutzer:MathiasMahnke|Mathias M.]], [[Benutzer:Oyla|Philipp M.]], [[Benutzer:Lars|Lars K.]], [[Benutzer:JanC|Jan C.]]
[[Benutzer:Age|Henning R.]],  
+
[[Benutzer:JanC|Jan C.]],
+
[[Benutzer:J.P.|Jörg P.]],  
+
[[Benutzer:Moh|Marco R.]],
+
[[Benutzer:MathiasMahnke|Mathias M.]],  
+
[[Benutzer:Dr.rp|Ralf P.]],  
+
[[Benutzer:Mdbw|Ralph Oe.]],  
+
[[Benutzer:ap46rene|Rene E.]],
+
[[Benutzer:Sebastian|Sebastian D.]],
+
[[Benutzer:Thm|Thomas M.]]
+
 
|kontakt=[mailto:admin@opennet-initiative.de admin@opennet-initiative.de]
 
|kontakt=[mailto:admin@opennet-initiative.de admin@opennet-initiative.de]
 
|logo=OpennetCA.jpg
 
|logo=OpennetCA.jpg
Zeile 19: Zeile 9:
 
== Einleitung ==
 
== Einleitung ==
  
Die Opennet CA ist auf [[Opennet Server/heartofgold]] beheimatet und wird durch Opennet verwaltet. Die Opennet Zertifizierungsstelle (Opennet CA) dient dem Signieren und Austellen von OpenSSL Zertifikaten für den [[OpenVPN]] Dienst innerhalb des Opennet Mesh Netzwerkes. [[OpenVPN]] wird eingesetzt, um die Nutzerzugänge abzusichern und Opennet User-Gateways sicher einzubinden. Basierend auf den Zertifikaten werden bei Opennet Berechtigungen an den Gateways für den Zugang zum Internet gesetzt.
+
Die Opennet CA ist auf [[Server/amano]] beheimatet und wird durch Opennet verwaltet. Die Zertifizierungsstelle (Opennet CA) dient dem Signieren und Ausstellen von OpenSSL Zertifikaten für den [[OpenVPN]] Dienst innerhalb des Opennet Netzwerkes. [[OpenVPN]] wird eingesetzt, um die Nutzerzugänge abzusichern und User-Gateways sicher einzubinden. Basierend auf den Zertifikaten werden bei Opennet Berechtigungen an den Gateways für den Zugang zum Internet gesetzt.
  
Zertifikatsanfragen werden an [mailto:csr@opennet-initiative.de csr@opennet-initiative.de] gesendet. Wenn ihr im Opennet CA Team mitarbeiten möchtet, meldet euch bitte bei [mailto:admin@opennet-initiative.de admin@opennet-initiative.de]. Für das Ausstellen und Aktivieren/Deaktivieren von Zertifikaten haben wir eine Intermediate-CA Instanz und SSH-Zugang erstellt. Zugriff haben die Opennet CA Teammitglieder, siehe oben rechts.
+
Zertifikatsanfragen werden unter https://ca.opennet-initiative.de hochgeladen. Wenn ihr im Opennet CA Team mitarbeiten möchtet, meldet euch bitte bei [mailto:admin@opennet-initiative.de admin@opennet-initiative.de]. Für das Ausstellen und Aktivieren/Deaktivieren von Zertifikaten haben wir eine Intermediate-CA Instanz und HTTPS-Zugang erstellt. Zugriff haben die Opennet CA Teammitglieder, siehe oben rechts.
  
== Kurzanleitungen ==
+
== Anleitung ==
  
=== Zertifikate generieren ===
+
=== Zertifikatsanfrage hochladen ===
  
home-pc$ scp <name>.csr opennetca@heartofgold.on-i.de:ca/opennet_users/csrs
+
https://ca.opennet-initiative.de/csr/
opennetca@heartofgold:~/ca/opennet_users$ ./sign.sh <name>
+
home-pc$ scp opennetca@heartofgold.on-i.de:ca/opennet_users/certs/<name>.crt .
+
  
Gleiches vorgehen bei UGW Anfragen, hier opennet_ugws als Verzeichnis verwenden.
+
=== Zertifikatserstellung freigeben ===
  
=== Zertifikate aktivieren ===
+
https://ca-internal.opennet-initiative.de/internal/csr.html (Opennet CA Team)
+
  opennetca@heartofgold:~/opennet_users # touch <common-name>
+
  
<common-name> ist der Name des Zertifikates.
+
=== Zertifikatsstatus abfragen ===
  
=== Zertifikate deaktivieren ===
+
https://ca.opennet-initiative.de/
  
  opennetca@heartofgold:~/opennet_users # rm <common-name>
+
== Dokumentation ==
  
Das Verzeichnis opennet_users_disabled hat aktuell keine Bedeutung!
+
Die technische Dokumentation des Opennet CA Backend Systems findet sich unter [[Server Installation/Opennet CA]].
  
== Standardtexte ==
+
Das Einbinden von PKCS#12 Zertifikaten - notwendig für Opennet CA Teammitglieder - wird unter [[Browser Zertifikate]] beschrieben.
  
=== CSR-Anfrage von Users außerhalb unseres Wirkungsbereiches ===
+
== Gültige CAs ==
  
<div style="background-color:#eeeeee; padding:5px;">
+
* Opennet CA Webinterface: https://ca.opennet-initiative.de/
Hallo XXX,
+
* Opennet Root CA ''opennet-root.ca.on'', Laufzeit 15 Jahre, 4096 bit RSA Key, SHA-512 Signatur, Self Signed, CRL Laufzeit 30 Tage
 +
** Opennet VPN UGW CA ''opennet-vpn-ugw.ca.on'', Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
 +
** Opennet VPN User CA ''opennet-vpn-user.ca.on'', Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
 +
** Opennet Clients CA ''opennet-client.ca.on'', Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
 +
** Opennet Server CA ''opennet-server.ca.on'', Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
  
vielen Dank für deine Nachfrage. Wir konnten dich derzeit weder als Mitglied oder Interessent unseres Vereines Opennet Initiative e.V. mit dem Betrieb eines eigenen Zugangspunktes finden. Wenn  Du Interesse hast, Dich in den Aufbau und Betrieb eines Stadt-WLAN-Netzes einzubringen, melde dich gern an und werde Mitglied im Verein. Näheres findest Du unter
+
{| class="wikitable"
 +
|-
 +
!
 +
!opennet-root.ca.on (Serial D09411CA45BAB5F1)
 +
|-
 +
!CA
 +
|''Opennet Root CA, Issued Jul 2023 Mathias Mahnke, Maintainer Opennet Admin Group''
 +
|-
 +
!Key
 +
|4096 bit, RSA, SHA-512
 +
|-
 +
!DN
 +
|C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-root.ca.on, emailAddress=admin@opennet-initiative.de
 +
|-
 +
!Usage
 +
|keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE
 +
|-
 +
!CRL
 +
|fullname=URI:http://ca.opennet-initiative.de/root.crl<br/>Signed SHA-512 + X.509 Subject Key Identifier, Valid 1 Month
 +
|-
 +
!Ext
 +
|nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/root.crl, nsRevocationUrl=http://ca.opennet-initiative.de/root.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
 +
|-
 +
!Sign
 +
|Self Signed, SHA-512, valid 2023/07/09 until 2038/07/09
 +
|-
 +
!Hashes
 +
|DN Hash 9106e34c<br/>X.509 Subject Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1<br/>MD5 Fingerprint 8F:7F:68:73:24:DB:9B:07:0C:B8:CC:28:86:66:A2:20<br/>SHA1 Fingerprint E1:6C:4D:86:52:51:BB:E1:8F:3B:D4:74:4C:25:1F:35:B0:B7:59:80<br/>SHA265 Fingerprint 11:38:71:04:28:CD:50:61:CB:6F:FE:AD:6D:79:7E:A8
 +
B3:8D:B3:11:E4:8C:1C:3D:8B:3E:A9:58:A3:2D:67:CE
 +
|-
 +
!URL
 +
|http://ca.opennet-initiative.de/root.crt
 +
|-
 +
|}
  
http://www.opennet-initiative.de
+
{| class="wikitable"
 +
|-
 +
!
 +
!opennet-vpn-ugw.ca.on (ID 3D5E2270E11E5F8A)
 +
|-
 +
!CA
 +
|''Opennet VPN UGW Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group''
 +
|-
 +
!Key
 +
|2048 bit, RSA, SHA-256
 +
|-
 +
!DN
 +
|C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-vpn-ugw.ca.on, emailAddress=admin@opennet-initiative.de
 +
|-
 +
!Usage
 +
|keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
 +
|-
 +
!CRL
 +
|fullname=URI:http://ca.opennet-initiative.de/vpnugw.crl<br/>Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
 +
|-
 +
!Ext
 +
|nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/vpnugw.crl, nsRevocationUrl=http://ca.opennet-initiative.de/vpnugw.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
 +
|-
 +
!Sign
 +
|opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
 +
|-
 +
!Hashes
 +
|DN Hash 216d4987<br/>X.509 Subject Key Identifier C1:1F:4F:E4:A7:49:65:4B:0E:F8:E4:65:16:E2:28:76:49:A2:68:3B<br/>X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1<br/>MD5 Fingerprint BD:73:3F:31:BA:F4:14:C3:8D:E9:6E:DA:C0:E8:E6:A2<br/>SHA1 Fingerprint 41:C4:32:12:D1:C6:31:80:97:78:5B:AF:85:D2:24:52:16:51:2D:92<br/>SHA265 Fingerprint D9:85:8E:F6:B5:B7:D4:6B:73:FA:A4:1B:E8:16:B2:94
 +
20:3C:0B:11:BC:94:93:18:F3:90:66:20:4B:BB:CC:30
 +
|-
 +
!URL
 +
|http://ca.opennet-initiative.de/vpnugw.crt
 +
|-
 +
|}
  
'''Hinweis:''' Die im/durch das Opennet erstellten/zertifizierten Zertifikate sind außerhalb des Vereins wertlos. Hier bieten sich selbst signierte Zertifikate, kommerzielle Zertifikate oder auch Zertifikate der freien Zertifizierungsstelle CAcert an. Auch dort sind entsprechende Zugangsvoraussetzungen zu beachten.
+
{| class="wikitable"
 +
|-
 +
!
 +
!opennet-vpn-user.ca.on (ID 5A0048FE986DEBC7)
 +
|-
 +
!CA
 +
|''Opennet VPN User Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group''
 +
|-
 +
!Key
 +
|2048 bit, RSA, SHA-256
 +
|-
 +
!DN
 +
|C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-vpn-user.ca.on, emailAddress=admin@opennet-initiative.de
 +
|-
 +
!Usage
 +
|keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
 +
|-
 +
!CRL
 +
|fullname=URI:http://ca.opennet-initiative.de/vpnuser.crl<br/>Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
 +
|-
 +
!Ext
 +
|nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/vpnuser.crl, nsRevocationUrl=http://ca.opennet-initiative.de/vpnuser.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
 +
|-
 +
!Sign
 +
|opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
 +
|-
 +
!Hashes
 +
|DN Hash 69a85ad3<br/>X.509 Subject Key Identifier FA:75:C4:8D:8A:AA:D1:81:E1:29:15:A6:B4:55:E3:C0:32:05:F6:C7<br/>X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1<br/>MD5 Fingerprint 9F:35:14:07:AC:91:3C:CF:5E:78:93:2B:8E:E6:BA:9C<br/>SHA1 Fingerprint 94:1C:DD:D4:EB:B6:AB:F9:83:03:DA:31:99:36:AE:37:04:12:E0:F8<br/>SHA265 Fingerprint A8:99:60:91:8E:7E:7D:B4:F5:D1:13:F3:B7:87:15:62
 +
76:D0:1D:97:8F:27:2B:EA:BE:93:6C:08:F8:E8:9A:AE
 +
|-
 +
!URL
 +
|http://ca.opennet-initiative.de/vpnuser.crt
 +
|-
 +
|}
  
VIele Gruesse aus Rostock
+
{| class="wikitable"
 +
|-
 +
!
 +
!opennet-client.ca.on (ID 0DDD811960089FAA)
 +
|-
 +
!CA
 +
|''Opennet Client Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group''
 +
|-
 +
!Key
 +
|2048 bit, RSA, SHA-256
 +
|-
 +
!DN
 +
|C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-client.ca.on, emailAddress=admin@opennet-initiative.de
 +
|-
 +
!Usage
 +
|keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
 +
|-
 +
!CRL
 +
|fullname=URI:http://ca.opennet-initiative.de/client.crl<br/>Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
 +
|-
 +
!Ext
 +
|nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/client.crl, nsRevocationUrl=http://ca.opennet-initiative.de/client.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
 +
|-
 +
!Sign
 +
|opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
 +
|-
 +
!Hashes
 +
|DN Hash d8003700<br/>X.509 Subject Key Identifier 77:97:CF:E9:CC:9A:47:FF:84:15:63:63:90:19:A0:99:82:28:2D:BA<br/>X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1<br/>MD5 Fingerprint 8F:DF:8D:61:1A:A2:B5:89:1A:7E:A2:58:04:E2:41:CF<br/>SHA1 Fingerprint 52:45:A1:78:9F:B2:09:CD:77:07:CB:96:DE:33:86:BB:B8:BF:F3:4B<br/>SHA265 Fingerprint DA:94:77:32:A3:DA:D5:BD:E3:2F:7D:E2:B1:2B:FE:EC
 +
E4:83:05:B7:A9:3E:27:B9:1C:20:74:32:F7:4B:9E:A8
 +
|-
 +
!URL
 +
|http://ca.opennet-initiative.de/client.crt
 +
|-
 +
|}
  
YYYY
+
{| class="wikitable"
 +
|-
 +
!
 +
!opennet-server.ca.on (ID 016CE997D210A21C)
 +
|-
 +
!CA
 +
|''Opennet Server Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group''
 +
|-
 +
!Key
 +
|2048 bit, RSA, SHA-256
 +
|-
 +
!DN
 +
|C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-server.ca.on, emailAddress=admin@opennet-initiative.de
 +
|-
 +
!Usage
 +
|keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
 +
|-
 +
!CRL
 +
|fullname=URI:http://ca.opennet-initiative.de/server.crl<br/>Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
 +
|-
 +
!Ext
 +
|nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/server.crl, nsRevocationUrl=http://ca.opennet-initiative.de/server.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
 +
|-
 +
!Sign
 +
|opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
 +
|-
 +
!Hashes
 +
|DN Hash 7e8721dd<br/>X.509 Subject Key Identifier C1:C2:B5:2E:E4:85:E0:E9:43:D3:9A:4B:A2:39:76:94:0F:E1:C1:41<br/>X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1<br/>MD5 Fingerprint EF:A0:B1:09:26:70:F0:45:A7:62:1A:74:C2:FC:F8:0B<br/>SHA1 Fingerprint 1E:01:19:76:00:30:D7:E1:F9:45:CE:25:B2:02:1D:29:B7:DC:65:61<br/>SHA265 Fingerprint E5:CC:1A:EC:D6:52:AC:4F:E7:9B:4E:5D:8F:6F:16:F5
 +
72:E6:14:51:BB:9C:FF:B5:7B:09:BF:F7:C3:0E:16:FD
 +
|-
 +
!URL
 +
|http://ca.opennet-initiative.de/server.crt
 +
|-
 +
|}
  
--
+
== TODO ==
  
Opennet Initiative e.V.
+
* Server Sub-CA hat fehlerhaften CRL Eintrag, ggf. Resign?
 
+
* "Cancel" Funktion in CSR Webinterface?
http://www.opennet-initiative e.V.
+
</div>
+
 
+
== Anleitungen ==
+
 
+
Arbeit mit der Opennet CA bedeutet Umgang mit OpenSSL Befehlen. Einige Arbeitschritte sind hier ausführlicher erläutert, werden aber im normalen Tagesgeschäft überlicherweise nicht benötigt.
+
 
+
=== User Zertifikat signieren ===
+
 
+
Signieren funktioniert für einzelne CSR mit:
+
openssl ca -config openssl.cnf -days 3650 -in csrs\on_aps.csr -out certs\on_aps.crt
+
 
+
oder per entsprechender Batch-Datei.
+
 
+
* die Zertifikatsanfrage in den Ordner csrs kopieren
+
* das Script mit dem Namen des zu signierenden .csr als Parameter starten (ohne die Endung .csr)
+
* Die zu signierende CSR sorgfälltig überprüfen, ob aktives Mitglid und AP Nummer stimmig
+
* Zertifikat durch touch freischalten user: opennetca hog.on-i.de (bzw s.o)
+
* Zertifikat an den Absender des CSRs schicken, Kopie an die Admin-Liste
+
 
+
=== Usergateway Zertifikat signieren ===
+
 
+
* root Zugang auf [[Opennet_Server/heartofgold]] nötig
+
* ins Verzeichnis /etc/openvpn/auth/opennet_usergateways wechseln
+
* Signieren wie oben, Freischaltung nicht nötig
+
* Zertifikat zurück an den Absender und an die Admin-Liste
+
 
+
=== Erstellen sub-CA (intermediate-CA) ===
+
 
+
==== Linux ====
+
 
+
Für die Erstellung einer sub-CA wird eine vorhandene Openssl Installation benötigt. Bei einer vorhandenen OpenVPN Installation ist Openssl automatich mit installiert.
+
 
+
* Bei Bedarf OpenVPN oder Openssl installieren (ggf Rootrechte nötig)
+
* Opennet [http://titan.www.opennet-initiative.de/openvpn/openssl.cnf openssl.cnf] besorgen
+
 
+
* Erstellen des  sub-CA keys und der zugehörigen Zertifikatsanfrage (.csr) mit
+
 
+
openssl req -days 3650 -nodes -new -keyout <name>-opennet-intermediate-CA.key -out <name>-opennet-intermediate-CA.csr
+
-config <Pfad der opennet openssl.cnf> -extensions v3_ca
+
Der Key und die csr landen im aktuellen Verzeichnis
+
 
+
* Die csr durch die Opennet Admins signieren lassen
+
* der reine crt Teil des Zertifikats muss dem ca.crt  auf allen GWs angefügt werden
+
* der Pubkey(der pubkey für ssh)  muss  für den Benutzer opennetca@hog.on-i.de hinzugefügt werden
+
* Ein Hauptverzeichnis für die sub-CA wählen und ggf erstellen , als Beispiel wird /openssl gewählt (Variabele dir in der opennet.cnf)
+
* dem Verzeichnis nur minimale Rechte geben chmod 700 /openssl
+
* alle weiteren Pfadangaben beziehen sich auf das eben gewählte Verzeichnis
+
* Verzeichnis CA erstellen und minimale Rechte setzen mkdir CA ; chmod 700 CA
+
* Datei index.txt mit touch index.txt anlegen
+
* Datei serial mit echo "00" >serial anlegen
+
* Verzeichnis certs anlegen
+
* Verzeichnis csrs anlegen
+
* Verzeichnis crls anlegen
+
* Den Schlüssel und das Zertifikat der sub-CA in das Hauptverzeichnis kopieren und bei beiden die Rechte auf 400 setzen
+
* die openssl.cnf ebenfalls ins Hauptverzeichnis kopieren
+
* die Configdatei openssl.cnf an die aktuelle Konfiguration anpassen (Pfade)
+
* Script sign.sh anlegen und Rechte auf 700 setzen
+
* echo "#!/bin/sh" >> sign.sh
+
* echo "openssl ca -config /etc/openvpn/auth/opennet/openssl.cnf -days 3650 -in csrs $1.csr -out certs $1.crt" >> sign.sh
+
 
+
==== Windows ====
+
 
+
sinngemäß wie oben
+
 
+
* im Regelfall muss zuerst "Visual C++ 2008 Redistributables" installiert werden (z.B. [http://www.slproweb.com/products/Win32OpenSSL.html hier])
+
* "Visual C++ 2008 Redistributables" mit Windows-Update aktualisieren!!
+
* openssl f. Windows besorgen und installieren (z.B. [http://www.slproweb.com/products/Win32OpenSSL.html gleiche Quelle])
+
* Stammverzeichnis erstellen (im Beispiel f:\opennet\ca)
+
* Unterverzeichnisse \certs \csrs und \crls erstellen
+
* weiter geht's auf der Kommandozeile (cmd)
+
* ins Stammverzeichnis wechseln (f:\opennet\ca)
+
* Im Stammverzeichnis die Dateien serial (z.B. mit ''echo 00 >serial'') erzeugen
+
* Die Datei index.txt z.B. mit ''notepad index.txt'' neu erstellen
+
* Die Opennet openssl.cnf besorgen und ins Stammverzeichnis kopieren
+
* von der Kommandozeile aus mit ''notepad openssl.cnf'' die Konfigurationsdatei öffnen
+
* nicht erschrecken, der Inhalt ist im notepad recht unaufgeräumt ;-) (es gibt bessere Editoren!)
+
* hinter der ersten Gruppe Rauten (#) findet Ihr "dir = xxxxx # Where everything is kept" wobei xxxxx für eine linuxtypische Pfadangabe steht (z.B. /etc/...)
+
* dort tragt Ihr den absoluten Pfad zum Stammverzeichnis ein (im Beispiel sieht das so aus: "dir = F:/Opennet/CA # Where everything is kept" (wichtig ist, das zwar windowstypisch das LW mit Doppelpunkt vorangestellt wird, die Slashs aber linuxtypisch sind (kein Backslash)) - speichern
+
* Erstellen des  sub-CA keys und der zugehörigen Zertifikatsanfrage (.csr) mit
+
 
+
openssl req -days 3650 -nodes -new -keyout <name>-opennet-intermediate-CA.key -out <name>-opennet-intermediate-CA.csr
+
-config openssl.cnf -extensions v3_ca
+
* Da Ihr im Stammverzeichnis wart, landen die Dateien auch gleich an der richtigen Stelle
+
* Die csr durch die Opennet Admins signieren lassen
+
* der reine crt Teil des Zertifikats muss dem ca.crt  auf allen GWs angefügt werden
+
* der Pubkey(der pubkey für ssh)  muss  für den Benutzer opennetca@hog.on-i.de hinzugefügt werden
+
* Das Zertifikat ebenfalls ins Stammverzeichnis kopieren
+
* openssl.cnf überprüfen und anpassen (Pfad/Dateinamen für Zertifikat und privaten Schlüssel)
+
  
 
== Anhänge ==
 
== Anhänge ==
Zeile 161: Zeile 227:
 
Datei:Opennet-WorkshopZertifikate2011.pdf|Opennet-WorkshopZertifikate2011.pdf
 
Datei:Opennet-WorkshopZertifikate2011.pdf|Opennet-WorkshopZertifikate2011.pdf
 
Datei:OpennetCA.jpg|Opennet CA Logo
 
Datei:OpennetCA.jpg|Opennet CA Logo
<gallery>
+
</gallery>
  
 
[[Kategorie:Anleitungen]]
 
[[Kategorie:Anleitungen]]
 
[[Kategorie:Dienste]]
 
[[Kategorie:Dienste]]
 +
[[Kategorie:Verein]]

Aktuelle Version vom 28. November 2023, 00:09 Uhr

Team
OpennetCA.jpg
Opennet CA
Treffen: nur bei Bedarf
Opennet Zertifizierungstelle
Mitglieder:
Christian W., Henning R., Jörg P., Mathias M., Philipp M., Lars K., Jan C.
Kontakt:
admin@opennet-initiative.de


Inhaltsverzeichnis

[Bearbeiten] Einleitung

Die Opennet CA ist auf Server/amano beheimatet und wird durch Opennet verwaltet. Die Zertifizierungsstelle (Opennet CA) dient dem Signieren und Ausstellen von OpenSSL Zertifikaten für den OpenVPN Dienst innerhalb des Opennet Netzwerkes. OpenVPN wird eingesetzt, um die Nutzerzugänge abzusichern und User-Gateways sicher einzubinden. Basierend auf den Zertifikaten werden bei Opennet Berechtigungen an den Gateways für den Zugang zum Internet gesetzt.

Zertifikatsanfragen werden unter https://ca.opennet-initiative.de hochgeladen. Wenn ihr im Opennet CA Team mitarbeiten möchtet, meldet euch bitte bei admin@opennet-initiative.de. Für das Ausstellen und Aktivieren/Deaktivieren von Zertifikaten haben wir eine Intermediate-CA Instanz und HTTPS-Zugang erstellt. Zugriff haben die Opennet CA Teammitglieder, siehe oben rechts.

[Bearbeiten] Anleitung

[Bearbeiten] Zertifikatsanfrage hochladen

https://ca.opennet-initiative.de/csr/

[Bearbeiten] Zertifikatserstellung freigeben

https://ca-internal.opennet-initiative.de/internal/csr.html (Opennet CA Team)

[Bearbeiten] Zertifikatsstatus abfragen

https://ca.opennet-initiative.de/

[Bearbeiten] Dokumentation

Die technische Dokumentation des Opennet CA Backend Systems findet sich unter Server Installation/Opennet CA.

Das Einbinden von PKCS#12 Zertifikaten - notwendig für Opennet CA Teammitglieder - wird unter Browser Zertifikate beschrieben.

[Bearbeiten] Gültige CAs

  • Opennet CA Webinterface: https://ca.opennet-initiative.de/
  • Opennet Root CA opennet-root.ca.on, Laufzeit 15 Jahre, 4096 bit RSA Key, SHA-512 Signatur, Self Signed, CRL Laufzeit 30 Tage
    • Opennet VPN UGW CA opennet-vpn-ugw.ca.on, Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
    • Opennet VPN User CA opennet-vpn-user.ca.on, Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
    • Opennet Clients CA opennet-client.ca.on, Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
    • Opennet Server CA opennet-server.ca.on, Laufzeit 10 Jahre, 2048 bit RSA Key, SHA-256 Signatur, Signatur Opennet Root CA, CRL Laufzeit 30 Tage
opennet-root.ca.on (Serial D09411CA45BAB5F1)
CA Opennet Root CA, Issued Jul 2023 Mathias Mahnke, Maintainer Opennet Admin Group
Key 4096 bit, RSA, SHA-512
DN C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-root.ca.on, emailAddress=admin@opennet-initiative.de
Usage keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE
CRL fullname=URI:http://ca.opennet-initiative.de/root.crl
Signed SHA-512 + X.509 Subject Key Identifier, Valid 1 Month
Ext nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/root.crl, nsRevocationUrl=http://ca.opennet-initiative.de/root.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
Sign Self Signed, SHA-512, valid 2023/07/09 until 2038/07/09
Hashes DN Hash 9106e34c
X.509 Subject Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1
MD5 Fingerprint 8F:7F:68:73:24:DB:9B:07:0C:B8:CC:28:86:66:A2:20
SHA1 Fingerprint E1:6C:4D:86:52:51:BB:E1:8F:3B:D4:74:4C:25:1F:35:B0:B7:59:80
SHA265 Fingerprint 11:38:71:04:28:CD:50:61:CB:6F:FE:AD:6D:79:7E:A8

B3:8D:B3:11:E4:8C:1C:3D:8B:3E:A9:58:A3:2D:67:CE

URL http://ca.opennet-initiative.de/root.crt
opennet-vpn-ugw.ca.on (ID 3D5E2270E11E5F8A)
CA Opennet VPN UGW Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group
Key 2048 bit, RSA, SHA-256
DN C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-vpn-ugw.ca.on, emailAddress=admin@opennet-initiative.de
Usage keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
CRL fullname=URI:http://ca.opennet-initiative.de/vpnugw.crl
Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
Ext nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/vpnugw.crl, nsRevocationUrl=http://ca.opennet-initiative.de/vpnugw.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
Sign opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
Hashes DN Hash 216d4987
X.509 Subject Key Identifier C1:1F:4F:E4:A7:49:65:4B:0E:F8:E4:65:16:E2:28:76:49:A2:68:3B
X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1
MD5 Fingerprint BD:73:3F:31:BA:F4:14:C3:8D:E9:6E:DA:C0:E8:E6:A2
SHA1 Fingerprint 41:C4:32:12:D1:C6:31:80:97:78:5B:AF:85:D2:24:52:16:51:2D:92
SHA265 Fingerprint D9:85:8E:F6:B5:B7:D4:6B:73:FA:A4:1B:E8:16:B2:94

20:3C:0B:11:BC:94:93:18:F3:90:66:20:4B:BB:CC:30

URL http://ca.opennet-initiative.de/vpnugw.crt
opennet-vpn-user.ca.on (ID 5A0048FE986DEBC7)
CA Opennet VPN User Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group
Key 2048 bit, RSA, SHA-256
DN C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-vpn-user.ca.on, emailAddress=admin@opennet-initiative.de
Usage keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
CRL fullname=URI:http://ca.opennet-initiative.de/vpnuser.crl
Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
Ext nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/vpnuser.crl, nsRevocationUrl=http://ca.opennet-initiative.de/vpnuser.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
Sign opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
Hashes DN Hash 69a85ad3
X.509 Subject Key Identifier FA:75:C4:8D:8A:AA:D1:81:E1:29:15:A6:B4:55:E3:C0:32:05:F6:C7
X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1
MD5 Fingerprint 9F:35:14:07:AC:91:3C:CF:5E:78:93:2B:8E:E6:BA:9C
SHA1 Fingerprint 94:1C:DD:D4:EB:B6:AB:F9:83:03:DA:31:99:36:AE:37:04:12:E0:F8
SHA265 Fingerprint A8:99:60:91:8E:7E:7D:B4:F5:D1:13:F3:B7:87:15:62

76:D0:1D:97:8F:27:2B:EA:BE:93:6C:08:F8:E8:9A:AE

URL http://ca.opennet-initiative.de/vpnuser.crt
opennet-client.ca.on (ID 0DDD811960089FAA)
CA Opennet Client Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group
Key 2048 bit, RSA, SHA-256
DN C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-client.ca.on, emailAddress=admin@opennet-initiative.de
Usage keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
CRL fullname=URI:http://ca.opennet-initiative.de/client.crl
Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
Ext nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/client.crl, nsRevocationUrl=http://ca.opennet-initiative.de/client.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
Sign opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
Hashes DN Hash d8003700
X.509 Subject Key Identifier 77:97:CF:E9:CC:9A:47:FF:84:15:63:63:90:19:A0:99:82:28:2D:BA
X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1
MD5 Fingerprint 8F:DF:8D:61:1A:A2:B5:89:1A:7E:A2:58:04:E2:41:CF
SHA1 Fingerprint 52:45:A1:78:9F:B2:09:CD:77:07:CB:96:DE:33:86:BB:B8:BF:F3:4B
SHA265 Fingerprint DA:94:77:32:A3:DA:D5:BD:E3:2F:7D:E2:B1:2B:FE:EC

E4:83:05:B7:A9:3E:27:B9:1C:20:74:32:F7:4B:9E:A8

URL http://ca.opennet-initiative.de/client.crt
opennet-server.ca.on (ID 016CE997D210A21C)
CA Opennet Server Sub-CA, Issued Nov 2022 Mathias Mahnke, Maintainer Opennet Admin Group
Key 2048 bit, RSA, SHA-256
DN C=DE, ST=Mecklenburg-Vorpommern, O=Opennet Initiative e.V., OU=Opennet CA, CN=opennet-server.ca.on, emailAddress=admin@opennet-initiative.de
Usage keyUsage=keyCertSign, cRLSign, subjectKeyIdentifier=hash, basicConstraints=critical,CA:TRUE, authorityKeyIdentifier=keyid,issuer,
CRL fullname=URI:http://ca.opennet-initiative.de/server.crl
Signed SHA-256 + X.509 Subject Key Identifier, Valid 1 Month
Ext nsComment=Opennet Root CA, nsCaPolicyUrl=http://ca.opennet-initiative.de/, nsCaRevocationUrl=http://ca.opennet-initiative.de/server.crl, nsRevocationUrl=http://ca.opennet-initiative.de/server.crl, nsBaseUrl=http://ca.opennet-initiative.de/, nsCertType=sslCA,emailCA,objCA
Sign opennet-root.ca.on (Serial D09411CA45BAB5F1), SHA-256, valid 2022/11/24 until 2032/11/24
Hashes DN Hash 7e8721dd
X.509 Subject Key Identifier C1:C2:B5:2E:E4:85:E0:E9:43:D3:9A:4B:A2:39:76:94:0F:E1:C1:41
X509v3 Authority Key Identifier FA:DA:A6:25:24:2C:20:E7:E5:A3:5F:2F:9F:6B:C1:EA:19:1A:F8:C1 serial:D0:94:11:CA:45:BA:B5:F1
MD5 Fingerprint EF:A0:B1:09:26:70:F0:45:A7:62:1A:74:C2:FC:F8:0B
SHA1 Fingerprint 1E:01:19:76:00:30:D7:E1:F9:45:CE:25:B2:02:1D:29:B7:DC:65:61
SHA265 Fingerprint E5:CC:1A:EC:D6:52:AC:4F:E7:9B:4E:5D:8F:6F:16:F5

72:E6:14:51:BB:9C:FF:B5:7B:09:BF:F7:C3:0E:16:FD

URL http://ca.opennet-initiative.de/server.crt

[Bearbeiten] TODO

  • Server Sub-CA hat fehlerhaften CRL Eintrag, ggf. Resign?
  • "Cancel" Funktion in CSR Webinterface?

[Bearbeiten] Anhänge

Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge