Changes for page Server-Zertifikat

Last modified by Leo Fahrbach on 2025/08/14 12:51

From version 22.1
edited by Leo Fahrbach
on 2025/08/14 12:51
Change comment: There is no comment for this version
To version 13.1
edited by Thomas Walter Erbesdobler
on 2023/07/06 15:05
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Server-Zertifikat
1 +Server-Zertifikate
Parent
... ... @@ -1,1 +1,0 @@
1 -CIT.ITO.Docs.Services.Certificates.WebHome
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.fahrbach
1 +XWiki.erbesdob
Content
... ... @@ -5,7 +5,7 @@
5 5  * cit/in/ma.tum.de Domains auf [[Ubuntu-VM im ESXi: mit rbg-cert|Informatik.Benutzerwiki.ServerZertifikate|anchor="Ubuntu_VM"]]
6 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 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="HSonderfallmanuelleAusstellung"]] erfolgen.
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 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"]]
10 10  
11 11  # Ubuntu VM
... ... @@ -132,34 +132,29 @@
132 132  Das Programm `rbg-cert` verwendet auch die API, d.h. man kann es auf andere Maschinen portieren.
133 133  Zur Vorbereitung auf den Einsatz von rbg-cert sind folgende Schritte notwendig:
134 134  
135 - UQN=host:f:YOURHOSTNAME.cit.tum.de
136 - echo $UQN > /etc/uqn
137 - apt install python3-cryptography
138 -
139 - mkdir -pm755 /usr/local/cert.d/ # for post-renew trigger scripts
140 - mkdir -pm700 /var/lib/rbg-cert/live/ # certs will be here
141 - cd /var/lib/rbg-cert/live/
142 -
143 - # Private Key erstellen
144 - openssl genrsa -out $UQN.privkey.pem 4096
135 +```
136 +echo $UQN > /etc/uqn
137 +apt install strongswan-pki
138 +apt install python3-cryptography
145 145  
146 - openssl rsa -in $UQN.privkey.pem -pubout
147 - # Diesen pubkey dann in der StrukturDB für PIRA registrieren
140 +mkdir -pm755 /usr/local/cert.d/ # for post-renew trigger scripts
141 +mkdir -pm700 /var/lib/rbg-cert/live/ # certs will be here
142 +cd /var/lib/rbg-cert/live/
148 148  
149 -`rbg-cert` und systemd timer/service sind von einer aktuellen Ubuntu-VM zu kopieren.
144 +pki --gen --type ecdsa --size 256 --outform pem > $UQN.privkey.pem
145 +# Falls RSA benötigt wird: pki --gen --type rsa --size 3072 --outform pem > $UQN.privkey.pem
150 150  
147 +pki --pub --in $UQN.privkey.pem --outform pem > $UQN.pubkey.pem
148 +# Diesen pubkey dann in der StrukturDB für PIRA registrieren
151 151  ```
152 -scp VMNAME:/usr/local/bin/rbg-cert /usr/local/bin/rbg-cert
153 -scp VMNAME:/etc/systemd/system/rbg-cert.service /etc/systemd/system/rbg-cert.service
154 -scp VMNAME:/etc/systemd/system/rbg-cert.timer /etc/systemd/system/rbg-cert.timer
155 -systemctl enable rbg-cert.timer
156 -```
157 157  
151 +`rbg-cert` und systemd timer/service sind von einer aktuellen Ubuntu-VM zu kopieren.
152 +
158 158  Falls Eigenentwicklungen zwingend notwendig sind, bitte das Verhalten von rbg-cert beibehalten!
159 159  
160 160  ## Enrollment
161 161  
162 -Der public key wird im Hosteintrag in der StrukturDB gespeichert. Bspw. per struklib auf lsadmin oder per [https://struktur.ito.cit.tum.de/struktur/](https://struktur.ito.cit.tum.de/struktur/).
157 +Der public key wird im Hosteintrag in der StrukturDB gespeichert. Bspw. per struklib auf lsadmin oder per <https://rbgwebapp.in.tum.de/struktur/treeview.> Nach spätestens einer guten Minute sollte der Key dann der RA bekannt sein, ab diesem Zeitpunkt kann die API verwendet werden.
163 163  
164 164  ## API
165 165  
... ... @@ -179,14 +179,17 @@
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 181  1. Auf dem Zielserver z.B. nach `/etc/ssl/private`
182 -1. Certificate Signing Request (`csr`) erzeugen
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 -Weitere namen in csr packen:
185 -`-addext "subjectAltName = DNS:OTHERNAME.cit.tum.de, DNS:ANOTHERNAME.cit.tum.de"`
177 +1. Certificate Signing Request (`csr`) erzeugen
178 +
179 + ```none
180 + openssl req -newkey rsa:3072 -nodes -keyout SERVERNAME.key -out SERVERNAME.csr -subj '/C=DE/O=Technische Universitaet Muenchen/CN=SERVERNAME.cit.tum.de'
181 + ```
182 + Weitere namen in csr packen: `-addext "subjectAltName = DNS:OTHERNAME.cit.tum.de, DNS:ANOTHERNAME.cit.tum.de"`
183 +
186 186  1. [Bei der CA](https://cert-manager.com/customer/DFN/ssl/dUIh9O1QABKy40PikBgN):
187 187   1. `.csr` hochladen
188 188   1. unter "Subject Alternative Names" alle weiteren ggf. benötigten Namen eintragen
189 189   1. alle anderen Felder leer lassen
190 -1. Bitte den `commonName` (CN) mit Begründung warum rbg-cert und Let's Encrypt nicht möglich sind per E-Mail an [support@ito.cit.tum.de](support@ito.cit.tum.de) schicken.
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.
191 191  1. auf "Certificate approved" E-Mail warten, "Certificate ID" entnehmen
192 192  1. [herunterladen](https://cert-manager.com/customer/DFN/idp/ssl/dUIh9O1QABKy40PikBgN?action=download) mit ID und "Certificate (w/issuer after)"