====== Zertifiats Authority ====== {{ :lx:ucs:ca.jpg?nolink|}} ===== Neues CA Zertifikat erzeugen ===== * https://help.univention.com/t/how-to-extend-the-end-date-of-the-ucs-ca-root-certificate/9740 * https://help.univention.com/t/renewing-the-ssl-certificates/37 * https://help.univention.com/t/add-subject-alternative-names-to-existing-certificate/7433 * https://help.univention.com/t/cool-solution-creation-and-management-of-user-and-windows-certificates/11782 ===== neues Server Zertifikat erstellen ===== echo \(`date -d 18-Oct-2027 +'%s'` - `date +'%s'`\) /86400 |bc . /usr/share/univention-ssl/make-certificates.sh declare -x ServerName=FQHN univention-certificate new -name "${ServerName}" -days 1825 cd /etc/univention/ssl/${ServerName} nano openssl.cnf Ändern oder Anpassen der SAN auf ca Zeile 103. Die Zeile enthält bereits ''subjectAltName = DNS:${ServerName}, ...'' den FQDN und den einfachen Hostnamen. Es können kommagetrennt weitere SAN angegeben werden, wie z.B. ''IP:1.2.3.4'' oder ''DNS:ein.anderer.hostname.domain''. Dann die Datei ''openssl.cnf'' speichern. openssl req -new -key private.key -config openssl.cnf -out req.pem openssl req -in req.pem -noout -text | grep -E "(Subject Alternative Name|DNS)" univention-certificate renew -name ${ServerName} -days 1825 ===== sub-CA Zertifikat erstellen ===== . /usr/share/univention-ssl/make-certificates.sh declare -x ServerName=FQHN univention-certificate new -name "${ServerName}" -days 1825 cd /etc/univention/ssl/${ServerName} nano openssl.cnf Ändern der ''[ v3_req ]'' Sektion, um Zeile 100: [ v3_req ] basicConstraints = critical, CA:TRUE keyUsage = cRLSign, keyCertSign nsCertType = sslCA, emailCA, objCA subjectAltName = email:copy #issuerAltName = issuer:copy nsComment = This is a Fake Root CA Certificate Bevor der Request unterschrieben werden kann muss das ''/etc/univention/ssl/openssl.cnf'' File angepasst werden. Diese Änderung unbedingt wieder rückgängig machen nach dem signieren des Requests! Ungefährt Zeile 100 ebenfalls in der ''[ v3_req ]'' Sektion [ v3_req ] basicContraints = critica, CA:TRUE keyUsage = cRLSign, keyCertSign #basicConstraints = critical, CA:FALSE #keyUsage = nonRepudiation, digitalSignature, keyEncipherment Danach den Zertifikatsrequest mit ''openssl req -new -config openssl.cnf -key private.key -out req.pem'' erstellen und dann von der CA unterschreiben lassen: ''univention-certificate renew -name ${ServerName} -days 1825'' === .p12 Datei erzeugen === export ServerName=my.domain.name openssl pkcs12 -export -out /root/${ServerName}.p12 -in /etc/univention/ssl/${ServerName}/cert.pem -inkey /etc/univention/ssl/${ServerName}/private.key -passout pass:xZtGhgBBt635mTapXzK [[https://help.hcltechsw.com/appscan/Standard/9.0.3/en-US/t_ConvertthepfxCertificatetopemFormat068.html|Quelle]]