Konfigurieren verschlüsselter SSL-Verbindungen zwischen dem SQL Gateway und der MySQL-Datenbank

Vorgehensweise

Um die Verbindung zwischen den Datenbanken SQL Gateway und MySQL durch SSL zu verschlüsseln, gehen Sie wie folgt vor:

Erstellen von selbstsignierten Zertifikaten für MySQL-Verbindungen

Die Installation von SQL Gateway enthält eine Batch-Datei, die selbstsignierte Zertifikate für den MySQL-Server erstellt.

Die Installation von OpenSSL auf dem PC ist eine Vorbedingung zur Ausführung der Batch-Datei. Um OpenSSL zu erhalten, gehen Sie zu http://www.openssl.org.

Gehen Sie wie folgt vor:

Schritt

Aktion

Details

1

Öffnet die Batch-Datei.

Wählen Sie auf der Registerkarte Einstellungen > Datenbankzertifikate die Option Ordner öffnen > MySQL aus.

2

Passen Sie die Vorlage der Batch-Datei an.

  1. Ersetzen Sie den Platzhalter "MYSQL_SERVER_TEST" mit dem Namen, den Ihr Stammzertifikat haben soll.

  2. Ersetzen Sie den Platzhalter "Computer_Name" mit dem vollständigen Computernamen oder dem Hostnamen des Server-PCs, wenn eine Verifizierung des Namens erforderlich ist. Es wird zur Identifizierung des Serverzertifikats verwendet.

  3. Ersetzen Sie den Platzhalter "MYSQL_SERVER_TEST_CLIENT" mit dem Namen, den Ihr Client-Zertifikat haben soll.

3

Führen Sie die Batch-Datei aus.

Es werden drei Zertifikate erstellt:

  • Stammzertifikat (ca.pem)

  • Serverzertifikat (server-cert.pem und server-key.pem)

  • Client-Zertifikat (client-cert.pfx)

4

Kopieren Sie das Stammzertifikat und das Serverzertifikat zum Datenverzeichnis des MySQL-Servers.

Kopieren Sie das Client-Zertifikat auf den PC, auf dem SQL Gateway läuft.

5

Passen Sie die my.ini-Datei auf dem MySQL-Server an, wie im Abschnitt Konfigurieren des MySQL-Servers beschrieben.

6

Starten Sie den MySQL-Server neu.

7

Importieren Sie das Client-Zertifikat zum Zertifikatsspeicher wie im Abschnitt Verwalten von Zertifikaten im Zertifikatsspeicher dieses Dokuments beschrieben.

Ergebnis: Das Clientzertifikat und das Stammzertifikat werden importiert.

Konfigurieren des MySQL-Servers

Passen Sie die my.ini-Datei des MySQL-Servers an.

Zur Aktivierung von SSL und zur Nutzung des Serverzertifikats für SSL-verschlüsselte Verbindungen müssen Sie die Optionen ssl, ssl-ca, ssl-cert, ssl-key so einstellen, wie anhand des folgenden Beispiels mit einem standardmäßigen MySQL-Datenordner angegeben.

Geben Sie die folgenden Zeilen am Ende der my.ini-Datei ein.

ssl
ssl-ca=ca.pem
ssl-cert=server-cert.pem
ssl-key=server-key.pem

Konfigurieren der MySQL-Datenbank zur Verifizierung von Client-Zertifikaten (optional)

Konfigurieren Sie diesen optionalen Schritt, wenn die Client-Zertifikate vor dem Verbindungsaufbau von der MySQL-Datenbank verifiziert werden sollen.

Um dies zu erreichen, stellen Sie die SSL-Optionen der Datenbankbenutzerkonten ein, indem Sie den Befehl ALTER USER ausführen:

Befehl

Beschreibung

REQUIRE X509

Fragt ein Zertifikat vom Client an.

REQUIRE ISSUER 'issuer'

Genehmigt den Zugriff auf Clients nach Erhalt eines Zertifikats, das mit dem definierten issuer übereinstimmt.

REQUIRE SUBJECT 'subject'

Genehmigt den Zugriff auf Clients nach Erhalt eines Zertifikats, das mit dem definierten subject übereinstimmt.

Konfiguration des SQL Gateway-Systems

Konfigurieren Sie in der Registerkarte Konfiguration von SQL Gateway die SSL-Parameter:

Schritt

Aktion

1

Wählen Sie einen geeigneten Eintrag aus der Liste der Datenbankserver aus.

2

Setzen Sie den Parameter SSL-Verschlüsselung auf der rechten Seite auf ON (EIN).

3

Wählen Sie die geeignete Option zum Validieren des Serverzertifikats mit dem Parameter Serverprüfung.

4

Wählen Sie die geeignete Option zum Validieren des Client-Zertifikats mit dem Parameter Client-Zertifikat.

Validieren von Serverzertifikaten

Bei MySQL-Verbindungen ermöglicht die Registerkarte Konfiguration von SQL Gateway die Konfiguration der Evaluierungsart von Serverzertifikaten.

Wenn der Parameter SSL-Verschlüsselung auf ON (EIN) eingestellt ist, dann stellt der Parameter Servervalidierung die folgenden Optionen zur Verfügung:

Option Servervalidierung

Beschreibung

Zertifikat prüfen

Der SQL Gateway-Computer validiert das Serverzertifikat.

Validieren des Zertifikats + Verifizieren des Namens

Der SQL Gateway-Computer validiert das Serverzertifikat und verifiziert den Namen.

HINWEIS: Wenn diese Option verwendet wird, muss der Parameter Serveradresse mit dem Subjektnamen im Serverzertifikat übereinstimmen.

Keine Validierung

Das Serverzertifikat ist nicht vom SQL Gateway-Computer verifiziert.

 WARNUNG
NICHT AUTHENTIFIZIERTER ZUGRIFF
  • Verwenden Sie die Einstellung Keine Validierung nur zu Testzwecken.
  • Verwenden Sie die Einstellung Keine Validierung nicht während des Betriebs.
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Verletzungen oder Sachschäden zur Folge haben.

Client-Zertifikate

Bei MySQL-Verbindungen ermöglicht die Registerkarte Konfiguration des SQL Gateway die Auswahl eines Client-Zertifikats für die SSL-Verbindung zum MySQL-Server.

Wenn der Parameter SSL-Verschlüsselung auf ON (EIN) eingestellt ist, dann stellt der Parameter Client-Zertifikat die folgenden Optionen zur Verfügung:

Option Client-Zertifikat

Beschreibung

Keine

Wählen Sie die Option Keine, wenn keine Client-Zertifikate zur Verfügung gestellt werden.

Von Datei

Wählen Sie die Option Von Datei, wenn ein Client-Zertifikat als .pfx-Datei zur Verfügung gestellt wird. Die folgenden Parameter werden zusätzlich angezeigt:

  • Zertifikatsdatei ermöglicht das Suchen nach der .pfx-Datei oder das Eingeben des Pfads zur .pfx-Datei.

  • Zertifikat-Passwort ermöglicht die Eingabe eines Passworts für die .pfx-Datei.

Von persönlichem Speicher

Wählen Sie die Option Von persönlichem Speicher, wenn das Client-Zertifikat in einem Zertifikatsspeicher installiert ist. Die folgenden Parameter werden zusätzlich angezeigt:

  • Zertifikatsspeicher mit den Optionen Aktueller Benutzer und Lokaler Computer.

    HINWEIS: Wenn die Option Aktueller Benutzer ausgewählt wird, muss der SQL Gateway-Dienst unter diesem Benutzerkonto betrieben werden. In diesem Fall verwenden Sie die Option Lokaler Computer.
  • Unter Zertifikat-Daumenabdruck können Sie den Fingerabdruck des Client-Zertifikats eingeben.