Dies ist eine alte Version des Dokuments!
ejabberd absichern
Dieses HowTo baut auf ejabberd Installation und Lets Encrypt einrichten auf.
Um die Transportverschlüsselung zwischen Client und Server bzw. Server und Server zu verbessern kannst du den Schlüsselaustausch mit DH (Diffie-Hellman) erweitern. Außerdem haben sich alle Serveranbieter vor ein paar Jahren darauf geeinigt, nur noch verschlüsselte Verbindungen untereinander zuzulassen.
$ su - ejabberd
dhparam.pem generieren. Das kann je nach Leistung deines Servers mehrere Minuten lang dauern:
$ openssl dhparam -out certs/dhparams.pem 4096
ejabberd Konfiguration aufrufen:
$ jed opt/ejabberd/conf/ejabberd.yml
Suche nach:
s2s_use_starttls: optional
ändere in:
s2s_use_starttls: required s2s_protocol_options: - "no_sslv3" - "no_sslv2" s2s_ciphers: "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-SEED-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-CAMELLIA128-SHA:DHE-RSA-AES128-SHA" s2s_dhfile: "/home/ejabberd/certs/dhparams.pem" c2s_protocol_options: - "no_sslv3" - "no_sslv2" c2s_ciphers: "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-SEED-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-CAMELLIA128-SHA:DHE-RSA-AES128-SHA" c2s_dhfile: "/home/ejabberd/certs/dhparams"
Du kannst bei den _protocol_options auch zusätzlich TLS1.0 und TLS1.1 verbieten, riskierst damit aber zur Zeit noch, dass deine Nutzer:innen andere Server nicht mehr erreichen können. Die _ciphers kannst du auch nach belieben anpassen. Mit den Einstellungen habe ich bei jabjab.de allerdings die größte Kompatibilität zu anderen Server erreicht.
Die Datei mit [STRG] + [s] speichern und den Editor mit [STRG] + [x] und [STRG] + [c] verlassen.
Mache ejabberd die geänderte Konfiguration bekannt:
./opt/ejabberd-22.10/bin/ejabberdctl reload_config