Konfigurieren verschlüsselter SSL-Verbindungen zwischen der SQL Gateway- und der MySQL-Datenbank
Schritt |
Aktion |
---|---|
1 |
Erstellen von selbstsignierten Zertifikaten für Client und Server. |
2 |
|
3 |
Konfigurieren der MySQL-Datenbank zur Verifizierung von Client-Zertifikaten (wenn erforderlich). |
4 |
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.
Schritt |
Aktion |
Details |
---|---|---|
1 |
Öffnet die Batch-Datei. |
Wählen Sie in der Registerkarte Einstellungen > Zertifikate 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: oStammzertifikat (ca.pem) oServerzertifikat (server-cert.pem und server-key.pem) oClient-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: Sowohl Client-Zertifikat als auch 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
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 AN. |
3 |
Wählen Sie die geeignete Option zum Validieren des Serverzertifikats mit dem Serverprüfungsparameter. |
4 |
Wählen Sie die geeignete Option zum Validieren des Client-Zertifikats mit dem Client-Zertifikatsparameter. |
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 AN eingestellt ist, dann stellt der Parameter Servervalidierung die folgenden Optionen zur Verfügung:
Option Servervalidierung |
Beschreibung |
---|---|
Keine Validierung |
Das Serverzertifikat ist nicht vom SQL Gateway-Computer verifiziert. |
|
NICHT AUTHENTIFIZIERTER ZUGRIFF |
oVerwenden Sie die Einstellung Keine Validierung nur zu Testzwecken. oVerwenden Sie die Einstellung Keine Validierung nicht während des Betriebs. |
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Verletzungen oder Sachschäden zur Folge haben. |
Option Servervalidierung |
Beschreibung |
---|---|
Zertifikat prüfen |
Der SQL Gateway-Computer validiert das Serverzertifikat. |
Zertifikat prüfen + Namen prüfen |
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. |
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 AN 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: oZertifikatsdatei ermöglicht das Suchen nach der .pfx-Datei oder das Eingeben des Pfads zur .pfx-Datei. oZertifikat-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: oZertifikat-Store 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. oUnter Zertifikat-Daumenabdruck können Sie den Fingerabdruck des Client-Zertifikats eingeben. |