Sicherheit · 4 min read · Nov 29, 2025

So sichern Sie Ihren ISPConfig 3-Server gegen den Poodle-SSL-Angriff

Version 1.2
Autor: Till Brehm
Folgen Sie howtoforge auf Twitter
Veröffentlicht   2014-10-16

In der folgenden Anleitung werde ich die Schritte beschreiben, um Ihren Server gegen den aktuellen Poodle-SSL-Angriff abzusichern. Ich werde einen ISPConfig 3 perfekten Server auf Debian 7 für meine Beispiele verwenden, aber die gleichen Schritte funktionieren auch auf jeder anderen Linux-Distribution. Ein Standard-ISPConfig-Hosting-Server führt die folgenden Dienste aus: Webserver (Nginx oder Apache), Mailserver (Postfix und Dovecot / Courier), FTP-Server (pure-ftpd), die SSL / TLS-Verbindungen anbieten und potenzielle Ziele für einen Poodle-Angriff sind.

Ich gehe davon aus, dass Sie als Root-Benutzer in Ihren Server eingeloggt sind. Wenn Sie unter Ubuntu arbeiten und nicht als Root eingeloggt sind, fügen Sie “sudo” vor allen Befehlen hinzu oder führen Sie “sudo -“ aus, um Root-Benutzer zu werden.

Apache Webserver

Um einen Apache-Webserver abzusichern, muss die Zeile

SSLProtocol all -SSLv2 -SSLv3

in jedem SSL-Vhost auf dem Server hinzugefügt werden. Wenn die SSLProtocol-Einstellung nicht explizit in einem Vhost festgelegt ist, wird die globale Einstellung angewendet. Im Fall eines ISPConfig 3-Servers kann die SSLProtocol-Einstellung global festgelegt werden, da die Vhosts diese Einstellung nicht überschreiben. Öffnen Sie auf einem Debian- oder Ubuntu-Server die Datei /etc/apache2/mods-available/ssl.conf in einem Editor

nano /etc/apache2/mods-available/ssl.conf

scrollen Sie nach unten, bis Sie die Zeilen sehen:

SSLProtocol all -SSLv2

und ändern Sie sie in:

SSLProtocol all -SSLv2 -SSLv3

Starten Sie dann Apache neu

service apache2 restart

Nginx Webserver

Für einen Nginx-Webserver muss die Zeile

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

in jedem SSL-Server { } Abschnitt hinzugefügt werden. Wenn die SSLProtocol-Einstellung nicht explizit in einem Server { } Abschnitt festgelegt ist, wird die globale Einstellung des http { } Abschnitts angewendet. Im Fall eines ISPConfig 3-Servers kann die SSLProtocol-Einstellung global im http { } Abschnitt festgelegt werden, da die Server { } Abschnitte diese Einstellung nicht überschreiben. Öffnen Sie auf einem Debian- oder Ubuntu-Server die Datei /etc/nginx/nginx.conf in einem Editor

nano /etc/nginx/nginx.conf

und fügen Sie die Zeile hinzu:

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

nach der Zeile:

http {

starten Sie dann Nginx neu:

service nginx restart

Postfix-Mailserver

Um Postfix zu zwingen, die Protokolle SSLv2 und SSLv3 nicht bereitzustellen, führen Sie diese Befehle aus:

postconf -e ‘smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3’
postconf -e ‘smtpd_tls_protocols=!SSLv2,!SSLv3’
postconf -e ‘smtp_tls_protocols=!SSLv2,!SSLv3’

Dies wird die Zeilen hinzufügen:

smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3
smtpd_tls_protocols = !SSLv2,!SSLv3
smtp_tls_protocols = !SSLv2,!SSLv3

in der Datei /etc/postfix/main.cf. Führen Sie dann diesen Befehl aus, um die neue Konfiguration anzuwenden:

service postfix restart

Dovecot IMAP / POP3-Server

Dovecot unterstützt SSL-Protokolleinstellungen in Version 2.1 und neuer. Der erste Schritt besteht darin, herauszufinden, welche Dovecot-Version Sie verwenden. Der Befehl lautet:

dovecot –version

Auf meinem Server erhielt ich folgendes Ergebnis:

root@server1:~# dovecot –version
2.1.7
root@server1:~#

was darauf hinweist, dass mein Server ssl_protocol-Einstellungen unterstützt.

Bearbeiten Sie die Dovecot-Konfigurationsdatei

nano /etc/dovecot/dovecot.conf

und fügen Sie die Zeile hinzu

ssl_protocols = !SSLv2 !SSLv3

sofern sie direkt nach der ssl_key-Zeile steht, sollte Ihre Datei so aussehen:

ssl_key = ssl_protocols = !SSLv2 !SSLv3

und starten Sie schließlich Dovecot neu, um die Änderungen anzuwenden:

service dovecot restart

Courier POP3 / IMAP-Server

Der Courier IMAP- und POP3-Server bietet standardmäßig Verbindungen über das SSLv3-Protokoll an, daher müssen wir ihn ebenfalls neu konfigurieren. Die Konfigurationsdateien des Courier befinden sich im Ordner /etc/courier/. Zuerst beginnen wir mit der Konfigurationsdatei des IMAP-Daemons:

nano /etc/courier/imapd-ssl

Fügen Sie die folgenden Zeilen hinzu oder ersetzen Sie sie:

IMAPDSTARTTLS=YES
IMAP_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1

Bearbeiten Sie dann die Konfigurationsdatei des POP3-Daemons:

nano /etc/courier/pop3d-ssl

Fügen Sie die folgenden Zeilen hinzu oder ersetzen Sie sie:

POP3STARTTLS=YES
POP3_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1

Starten Sie schließlich die Courier-Daemons neu:

service courier-imap-ssl restart
service courier-pop-ssl restart

FTP mit pure-ftpd

Die Sicherung von pure-ftpd auf Debian und Ubuntu ist etwas komplizierter, da das Skript /usr/sbin/pure-ftpd-wrapper von Debian die -J-Option, die von pure-ftpd verwendet wird, um die SSL-Protokolle festzulegen, nicht unterstützt. Der erste Schritt besteht darin, Unterstützung für die -J-Option im Wrapper-Skript hinzuzufügen. Dies wird in Debian 6 nicht funktionieren, da die pure-ftpd-Version in Debian 6 zu alt ist und keine Einstellung für SSL-Protokolle hat. Daher besteht die einzige Option für Debian 6-Benutzer darin, auf Debian 7 zu aktualisieren. Öffnen Sie die Datei

nano /usr/sbin/pure-ftpd-wrapper

und scrollen Sie nach unten zu der Zeile

‘TLS’ => [‘-Y %d’, \&parse_number_1],

und fügen Sie diese neue Zeile direkt danach hinzu:

‘TLSCipherSuite’ => [‘-J %s’, \&parse_string],

Schließlich erstellen wir eine Konfigurationsdatei, die die SSL-Protokolle enthält, die wir zulassen möchten:

echo ‘HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3’ > /etc/pure-ftpd/conf/TLSCipherSuite

Um die Änderungen anzuwenden, starten Sie pure-ftpd neu. Auf meinem Server verwende ich pure-ftpd mit MySQL, sodass der Name des Daemons pure-ftpd-mysql anstelle von nur pure-ftpd ist.

service pure-ftpd-mysql restart

Das Ergebnis sollte ähnlich wie folgt aussehen:

root@server1:~# service pure-ftpd-mysql restart
Starte FTP-Server neu: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -Y 1 -8 UTF-8 -H -J HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3 -D -b -O clf:/var/log/pure-ftpd/transfer.log -E -u 1000 -A -B
root@server1:~#

so wurde die -J-Option erfolgreich zur Startsequenz des Daemons hinzugefügt.

Links

  • SSL Poodle-Angriff
  • ISPConfig
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.