GNU/Linux >> LINUX-Kenntnisse >  >> Linux

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   16.10.2014

In der folgenden Anleitung beschreibe ich die Schritte, um Ihren Server vor dem jüngsten Poodle-SSL-Angriff zu schützen. Ich werde für meine Beispiele einen perfekten ISPConfig 3-Server auf Debian 7 verwenden, aber die gleichen Schritte funktionieren auch auf jeder anderen Linux-Distribution. Ein standardmäßiger 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 Pudelangriff sind.

Ich gehe davon aus, dass Sie als Root-Benutzer auf Ihrem Server angemeldet sind. Wenn Sie unter Ubuntu arbeiten und nicht als Root angemeldet sind, stellen Sie allen Befehlen "sudo" voran 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

muss 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 Falle eines ISPConfig 3-Servers kann die SSLProtocol-Einstellung global eingestellt 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:

# nur sichere Protokolle aktivieren:SSLv3 und TLSv1, aber nicht SSLv2
SSLProtocol all -SSLv2

und ändern Sie sie in:

# nur sichere Protokolle aktivieren:aber nicht SSLv2 und SSLv3
SSLProtocol all -SSLv2 -SSLv3

Dann Apache neu starten

service apache2 neu starten

Nginx-Webserver

Bei einem Nginx-Webserver ist die Zeile

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

muss in jedem SSL-Server-{ }-Dienst 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 neu starten

Postfix-Mailserver

Um Postfix zu zwingen, das SSLv2- und SSLv3-Protokoll 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'

Dadurch werden die Zeilen hinzugefügt:

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-Neustart

Dovecot IMAP/POP3-Server

Dovecot unterstützt SSL-Protokolleinstellungen in Version 2.1 und höher. Der erste Schritt ist also, herauszufinden, welche Dovecot-Version Sie verwenden. Der Befehl lautet:

dovecot --version

Auf meinem Server habe ich folgendes Ergebnis erhalten:

[email protected]:~# dovecot --version
2.1.7
[email protected]:~#

was anzeigt, 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

direkt nach der ssl_key-Zeile, also sollte Ihre Datei so aussehen:


ssl_key =ssl_protocols =!SSLv2 !SSLv3

und schließlich dovecot neu starten, um die Änderungen zu übernehmen:

service dovecot neu starten

Courier-POP3-/IMAP-Server

Der imap- und pop3-Server von Courier bietet standardmäßig Verbindungen über das SSLv3-Protokoll an, also müssen wir es auch neu konfigurieren. Die Courier-Konfigurationsdateien 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=JA
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=JA
POP3_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1

Starten Sie abschließend die Courier-Daemons neu:

service kurier-imap-ssl neustart
service kurier-pop-ssl neustart

FTP mit pure-ftpd

Das Sichern von pure-ftpd auf Debian und Ubuntu ist etwas komplizierter, da das Skript /usr/sbin/pure-ftpd-wrapper von Debian den Schalter -J nicht unterstützt, der von pure-ftpd verwendet wird, um die SSL-Protokolle festzulegen. Der erste Schritt besteht also darin, Unterstützung für die Option -J im Wrapper-Skript hinzuzufügen. Dies funktioniert nicht in Debian 6, 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 Benutzer von Debian 6 darin, auf Debian 7 zu aktualisieren. Öffnen Sie die Datei

nano /usr/sbin/pure-ftpd-wrapper

und scrollen Sie nach unten zur Zeile

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

und fügen Sie gleich danach diese neue Zeile 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 zu übernehmen, starten Sie pure-ftpd neu. Auf meinem Server verwende ich pure-ftpd mit mysql, also lautet der Name des Daemons pure-ftpd-mysql statt nur pure-ftpd.

service pure-ftpd-mysql neustarten

das Ergebnis sollte ungefähr so ​​aussehen:

[email protected]:~# service pure-ftpd-mysql restart
Neustart des FTP-Servers:Ausführen:/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
[E-Mail-geschützt]:~#

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

  • SSL-Pudelangriff
  • ISPConfig

Linux
  1. So sichern Sie Ihre Linux-E-Mail-Dienste mit SSL/TLS

  2. So treten Sie Ihrem Linux-Server dem NTP-Pool-Projekt bei

  3. Überprüfen Sie den Anmeldeverlauf auf Ihrem Server

  4. So entfernen Sie das Passwort aus Ihrem SSL-Schlüssel

  5. So sichern Sie Ihren Ubuntu-Server mit der CSF-Firewall

So ändern Sie den Server-Hostnamen in Ubuntu

So führen Sie eine Tomcat-zu-Tomcat-SSL-Übertragung unter CentOS durch

So sichern Sie den LEMP-Server mit Let’s Encrypt Free SSL auf Ubuntu 18.04 VPS

So verstecken Sie Ihre NGINX-Serverversion.

Wie ändere ich die Zeitzone auf Ubuntu 18.04 Server?

So sichern Sie SSH mit Fail2Ban