Inhalt: Wenn Sie einen oder mehrere MySQL/MariaDB-Remote-Datenbankserver in Plesk registriert haben, sollten Sie die Verbindungen zwischen diesen Servern und Plesk mit einem SSL/TLS-Zertifikat schützen. Dadurch wird verhindert, dass vertrauliche Informationen von Dritten abgefangen werden können.

In diesem Thema erfahren Sie, wie Sie Verbindungen zu MySQL/MariaDB-Datenbankservern mit SSL/TLS-Zertifikaten schützen können.

Überblick

Diese Anleitung gilt für Verbindungen zu MySQL-Datenbankservern und auch zu MySQL-Ablegern wie MariaDB und Percona.

Wenn Sie in Plesk nur lokale Datenbankserver verwenden, müssen die Verbindungen zu ihnen nicht gesichert werden.

Sie können Verbindungen zu Datenbankservern mit einem selbstsignierten SSL/TLS-Zertifikat oder einem von einer Zertifizierungsstelle ausgestellten kostenlosen oder kostenpflichtigen Zertifikat sichern. Ein selbstsigniertes Zertifikat stellt sicher, dass die Verbindungen zwischen Plesk und den Datenbankservern verschlüsselt sind. Dies sollte in den meisten Fällen ausreichen. Ein von einer Zertifizierungsstelle ausgestelltes, kostenloses oder kostenpflichtiges Zertifikat kann dazu verwendet werden, die Identität eines Datenbankservers zu bestätigen. Dies trägt zum Schutz vor Man-in-the-Middle-Angriffen bei.

Securing Connections to a Remote MySQL/MariaDB Database Server

Zum Schutz von Verbindungen zu Remote-Datenbankservern sind zwei Schritte notwendig. Zunächst müssen Sie die Verwendung verschlüsselter Verbindungen für jeden Remote-Datenbankserver konfigurieren. Anschließend müssen Sie verschlüsselte Verbindungen zu Datenbankservern in Plesk aktivieren.

Um verschlüsselte Verbindungen für Datenbankserver zu konfigurieren, folgen Sie der Anleitung in der Dokumentation des jeweiligen Anbieters:

Fügen Sie außerdem die folgende optionale Zeile in die Datei my.cnf ein:

require_secure_transport=ON

Damit werden die Datenbankserver gezwungen, verschlüsselte Verbindungen zu verwenden. Sie können jedoch auch die Datenbankbenutzer einzeln mit der Anweisung ALTER USER aktualisieren. Beispiel:

alter user 'admin'@'localhost' require ssl;

In diesem Fall werden nur die Verbindungen für die aktualisierten Datenbankbenutzer verschlüsselt.

Nachdem Sie verschlüsselte Verbindungen für alle Datenbankserver konfiguriert haben, müssen Sie die verschlüsselte Verbindung zu Datenbankservern in Plesk aktivieren. Optional können Sie in Plesk auch festlegen, dass die Identitäten der Datenbankserver vor der Verbindung überprüft werden sollen. Dies ist für den Schutz vor Man-in-the-Middle-Angriffen erforderlich.

Verschlüsselte Verbindungen zu Datenbankservern aktivieren

  1. Öffnen Sie die Datei panel.ini, um sie zu bearbeiten.

  2. Fügen Sie die folgenden Zeilen in die Datei ein, um verschlüsselte Verbindungen zu Datenbankservern zu ermöglichen:

    [database]
    tls.enable = true;
    
  3. (Optional) Fügen Sie die folgenden Zeilen unter den soeben hinzugefügten Zeilen ein, um die Identität der Datenbankserver vor der Verbindung zu überprüfen:

    tls.verifyServerCert = true;
    tls.sslCA = <path to the .pem file containing the relevant X.509 certificate(s)>;
    

    Die X.509-Zertifikate können mit dem Dienstprogramm openssl erstellt werden (wenn ein oder mehrere Datenbankserver mit selbstsignierten Zertifikaten geschützt sind) oder bei der entsprechenden Zertifizierungsstelle angefordert werden (wenn ein oder mehrere Datenbankserver mit Zertifikaten geschützt sind, die von einer Zertifizierungsstelle ausgestellt wurden).

    Bemerkung: Wenn Sie in Plesk festlegen, dass die Identität von Datenbankservern vor der Verbindung überprüft werden soll, müssen die Hostnamen der Datenbankserver mit denen übereinstimmen, die in den SSL/TLS-Zertifikaten angegeben sind, mit denen sie geschützt sind. Plesk stellt keine Verbindung zu einem Datenbankserver her, dessen Hostname nicht mit dem Namen übereinstimmt, der in dem SSL/TLS-Zertifikat angegeben ist, mit dem er geschützt ist.

Die Verbindung zwischen MySQL/MariaDB-Datenbankservern und Plesk ist jetzt geschützt und kann nicht von Dritten abgefangen werden.