Von Zeit zu Zeit laufen Zertifikate ab. So auch in meinem Fall, als sich mein XMPP Client beschwerte, das dass Server-Zertifikat nicht mehr gültig ist. Um für ejabberd neue Zertifikate zu erzeugen, sollte man sich auf seinem Server einloggen und dort folgenden Zeilen eingeben:
openssl req -newkey rsa:2048 -keyout ejabberd.pem -nodes -x509 -days 365 -out ejabberd.cer cat ejabberd.cer >> ejabberd.pem cp ejabberd.pem /etc/ejabberd/ejabberd.pem
Anschließend kann der Dienst mittels:
service ejabberd restart
neugestartet werden. Das neue Zertifikat ist damit aktiv und der Dienst kann wieder genutzt werden.
Gibt es eine Möglichkeit bei ablaufenden Server-Zertifikaten vorgewarnt(1 Monat im Vorraus, 2 Wochen im Vorraus, 1 Woche im Vorraus) zu werden? Am besten wäre es, man könnte eine Zertifikate-Pipeline haben, wo die Zertifikate eingestellt werden und überlappend genutzt werden.
Mit openssl x509 -noout -dates -in meinzertifikat.crt kannst du die Daten auslesen.
Sieht dann so aus:
notBefore=Jun 26 02:18:36 2002 GMT
notAfter=Jun 24 00:16:12 2022 GMT
Das ganze im Skript analysieren und mit dem aktullen Datum vergleichen. Mittels cron regelmäßig überprüfen und ggf. bescheid geben lassen.
Das „cat“ kann man sich sparen, wenn man bei openssl gleich das richtige Ausgabefile angibt
openssl ... -out ejabberd.pem
Vielen Dank! Guter Tipp! Hat mir einiges an Zeit gespart ;)