Changes for page Server-Zertifikat

Last modified by Jonas Jelten on 2024/08/23 12:30

From version 6.1
edited by Thomas Walter Erbesdobler
on 2023/07/06 14:50
Change comment: There is no comment for this version
To version 9.1
edited by Thomas Walter Erbesdobler
on 2023/07/06 14:57
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -2,21 +2,20 @@
2 2  
3 3  Es werden verschiedene Fälle unterschieden:
4 4  
5 -cit/in/ma.tum.de Domains auf [[Ubuntu-VM im ESXi: mit rbg-cert|Informatik.Benutzerwiki.ServerZertifikate|anchor="Ubuntu_VM"]]
5 + * cit/in/ma.tum.de Domains auf [[Ubuntu-VM im ESXi: mit rbg-cert|Informatik.Benutzerwiki.ServerZertifikate|anchor="Ubuntu_VM"]]
6 + * cit/in/ma.tum.de Domains auf anderen Maschinen: eigenständig mit [Let's Encrypt](https://certbot.eff.org/instructions) oder [[rbg-cert selber einrichten|Informatik.Benutzerwiki.ServerZertifikate|anchor="Serverzertifikat_f_252r_alle_anderen_Maschinen_44_deren_Namen_252ber_die_Strukturdb_verwaltet_werden"]]
7 + * andere Domains: eigenständig mit [Let's Encrypt](https://certbot.eff.org/instructions)
8 + * Falls keine der Optionen möglich ist: Es muss begründet werden, warum weder rbg-cert noch Let's Encrypt möglich ist, dann kann ausnahmsweise eine [[manuelle Ausstellung|Informatik.Benutzerwiki.ServerZertifikate|anchor="Sonderfall_manuelle_Ausstellung"]] erfolgen.
9 + * Hilfe, ich habe EC Schlüssel und muss aber in die Vergangenheit zu RSA reisen: [[Neuen Schlüssel generieren und in der Struk eintragen|Informatik.Benutzerwiki.ServerZertifikate|anchor="Vorbereitung_bei_Nutzung_von_rbg_45cert"]]
6 6  
7 -* cit/in/ma.tum.de Domains auf anderen Maschinen: eigenständig mit [Let's Encrypt](https://certbot.eff.org/instructions) oder [[rbg-cert selber einrichten|Informatik.Benutzerwiki.ServerZertifikate|anchor="Serverzertifikat_f_252r_alle_anderen_Maschinen_44_deren_Namen_252ber_die_Strukturdb_verwaltet_werden"]]
8 -* andere Domains: eigenständig mit [Let's Encrypt](https://certbot.eff.org/instructions)
9 -* Falls keine der Optionen möglich ist: Es muss begründet werden, warum weder rbg-cert noch Let's Encrypt möglich ist, dann kann ausnahmsweise eine [[manuelle Ausstellung|Informatik.Benutzerwiki.ServerZertifikate|anchor="Sonderfall_manuelle_Ausstellung"]] erfolgen.
10 -* Hilfe, ich habe EC Schlüssel und muss aber in die Vergangenheit zu RSA reisen: [[Neuen Schlüssel generieren und in der Struk eintragen|Informatik.Benutzerwiki.ServerZertifikate|anchor="Vorbereitung_bei_Nutzung_von_rbg_45cert"]]
11 -
12 12  # Ubuntu VM
13 13  
14 14  Für neue VMs ist die erforderliche Software bereits vorinstalliert.
15 15  
16 -1 In der [StrukturDB](https://rbgwebapp.in.tum.de/struktur/) müssen alle Aliase korrekt eingetragen sein. Bei Service-IPs muss `servicehost` auf den tatsächlichen Host (also Server/VM/...) verweisen.
17 -1 Das Zertifikat wird dann in `/var/lib/rbg-cert/live/HOST.cert.pem` liegen
18 -1 Um auf der Maschine die Dienste neuzustarten/neuzuladen, wenn ein neues Zertifikat da ist, legt man scripte in `/usr/local/cert.d/` ab, die mit `run-parts(8)` kompatibel sind. Das erste Argument ist der Teilpfad zum neuen Zertifikat. Unten ist ein Beispielscript für einen Apache2-reload.
19 -1 Nun kann man mit `rbg-cert` Zertifikate beantragen:
15 + 1. In der [StrukturDB](https://rbgwebapp.in.tum.de/struktur/) müssen alle Aliase korrekt eingetragen sein. Bei Service-IPs muss `servicehost` auf den tatsächlichen Host (also Server/VM/...) verweisen.
16 + 1. Das Zertifikat wird dann in `/var/lib/rbg-cert/live/HOST.cert.pem` liegen
17 + 1. Um auf der Maschine die Dienste neuzustarten/neuzuladen, wenn ein neues Zertifikat da ist, legt man scripte in `/usr/local/cert.d/` ab, die mit `run-parts(8)` kompatibel sind. Das erste Argument ist der Teilpfad zum neuen Zertifikat. Unten ist ein Beispielscript für einen Apache2-reload.
18 + 1. Nun kann man mit `rbg-cert` Zertifikate beantragen:
20 20  
21 21  ```
22 22  # Zur Kontrolle die konfigurierten Namen abfragen, fehlende in der StrukturDB eintragen!
... ... @@ -40,7 +40,7 @@
40 40  
41 41  Im `VirtualHost` Block in `/etc/apache2/sites-enabled/MYSERVICE.conf`:
42 42  
43 -```
42 +```none
44 44  SSLCertificateFile /etc/apache2/tls/fullchain.pem
45 45  SSLCertificateKeyFile /etc/apache2/tls/key.pem
46 46  ```
... ... @@ -148,7 +148,7 @@
148 148  # Falls RSA benötigt wird: pki --gen --type rsa --size 3072 --outform pem > $UQN.privkey.pem
149 149  
150 150  pki --pub --in $UQN.privkey.pem --outform pem > $UQN.pubkey.pem
151 -# Diesen pubkey dann in der StrukturDB für PIRA registrieren
150 +# Diesen pubkey dann in der StrukturDB für PIRA registrieren
152 152  ```
153 153  
154 154  `rbg-cert` und systemd timer/service sind von einer aktuellen Ubuntu-VM zu kopieren.
... ... @@ -163,7 +163,7 @@
163 163  
164 164  Production:
165 165  
166 -```
165 +```none
167 167  URL: https://pira.in.tum.de/v0/server/[UQN]
168 168  
169 169   GET → {cert, chain, fullchain, names, should_renew}
... ... @@ -178,14 +178,14 @@
178 178  
179 179  Manuelle Ausstellung mit Genehmigung durch RBG nur möglich, wenn technisch weder rbg-cert noch Let's Encrypt möglich sind:
180 180  
181 -1. Auf dem Zielserver z.B. nach `/etc/ssl/private`
182 -1. Certificate Signing Request (`csr`) erzeugen
180 + 1. Auf dem Zielserver z.B. nach `/etc/ssl/private`
181 + 1. Certificate Signing Request (`csr`) erzeugen
183 183  `openssl req -newkey rsa:3072 -nodes -keyout SERVERNAME.key -out SERVERNAME.csr -subj '/C=DE/O=Technische Universitaet Muenchen/CN=SERVERNAME.cit.tum.de'`
184 184   - weitere namen in csr packen: `-addext "subjectAltName = DNS:OTHERNAME.cit.tum.de, DNS:ANOTHERNAME.cit.tum.de"`
185 -1. [Bei der CA](https://cert-manager.com/customer/DFN/ssl/dUIh9O1QABKy40PikBgN):
184 + 1. [Bei der CA](https://cert-manager.com/customer/DFN/ssl/dUIh9O1QABKy40PikBgN):
186 186   1. `.csr` hochladen
187 187   1. unter "Subject Alternative Names" alle weiteren ggf. benötigten Namen eintragen
188 188   1. alle anderen Felder leer lassen
189 -1. Bitte den `commonName` (CN) mit Begründung warum rbg-cert und Let's Encrypt nicht möglich sind per E-Mail an <rbg@in.tum.de> schicken.
190 -1. auf "Certificate approved" E-Mail warten, "Certificate ID" entnehmen
191 -1. [herunterladen](https://cert-manager.com/customer/DFN/idp/ssl/dUIh9O1QABKy40PikBgN?action=download) mit ID und "Certificate (w/issuer after)"
188 + 1. Bitte den `commonName` (CN) mit Begründung warum rbg-cert und Let's Encrypt nicht möglich sind per E-Mail an <rbg@in.tum.de> schicken.
189 + 1. auf "Certificate approved" E-Mail warten, "Certificate ID" entnehmen
190 + 1. [herunterladen](https://cert-manager.com/customer/DFN/idp/ssl/dUIh9O1QABKy40PikBgN?action=download) mit ID und "Certificate (w/issuer after)"