MySQL-Konfiguration SSL-Master-Slave-Replikation

MySQL-Konfiguration SSL-Master-Slave-Replikation

MySQL5.6 So erstellen Sie SSL-Dateien

Offizielle Dokumentation: https://dev.mysql.com/doc/refman/5.6/en/creating-ssl-files-using-openssl.html#creating-ssl-files-using-openssl-unix-command-line

Schaffen Sie eine saubere Umgebung

mkdir /home/mysql/mysqlcerts && cd /home/mysql/mysqlcerts

CA-Zertifikat erstellen

openssl genrsa 2048 > ca-key.pem
openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem

Serverzertifikat erstellen, Passphrase entfernen und signieren

server-cert.pem = öffentlicher Schlüssel, server-key.pem = privater Schlüssel
openssl req -newkey rsa:2048 -days 3600 -nodes -keyout server-key.pem -out server-req.pem
openssl rsa -in server-key.pem -out server-key.pem
openssl x509 -req -in server-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

Client-Zertifikat erstellen, Passphrase entfernen und signieren

client-cert.pem = öffentlicher Schlüssel, client-key.pem = privater Schlüssel
openssl req -newkey rsa:2048 -days 3600 -nodes -keyout client-key.pem -out client-req.pem
openssl rsa -in client-key.pem -out client-key.pem
openssl x509 -req -in client-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
openssl-Überprüfung -CAfile ca.pem Server-Zertifikat.pem Client-Zertifikat.pem
server-cert.pem: OK
client-cert.pem: OK

MySQL5.7 So erstellen Sie SSL-Dateien

Offizielle Dokumentation: https://dev.mysql.com/doc/refman/5.7/en/creating-ssl-rsa-files-using-mysql.html

mkdir -p /home/mysql/mysqlcerts
/usr/local/mysql-5.7.21-linux-glibc2.12-x86_64/bin/mysql_ssl_rsa_setup --datadir=/home/mysql/mysqlcerts/

Konfigurieren Sie die Hauptbibliothek nach dem Erstellen von SSL

Aus der Bibliothek 192.168.1.222

mkdir -p /home/mysql/mysqlcerts

Hauptbibliothek

chown -R mysql.mysql /home/mysql/mysqlcerts/
scp ca.pem client-cert.pem client-key.pem [email protected]:/home/mysql/mysqlcerts/

Master-Bibliotheksberechtigung

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.1.222' identified by '' require ssl;

Hauptbibliothek my.cnf

#SSL
ssl-ca=/home/mysql/mysqlcerts/ca.pem
ssl-cert=/home/mysql/mysqlcerts/server-cert.pem
ssl-key=/home/mysql/mysqlcerts/server-key.pem

MySQL neu starten

Aus der Bibliothek

chown -R mysql.mysql /home/mysql/mysqlcerts/

meine.cnf

ssl-ca=/home/mysql/mysqlcerts/ca.pem
ssl-cert= /home/mysql/mysqlcerts/client-cert.pem
ssl-key= /home/mysql/mysqlcerts/client-key.pem

Erstellen Sie eine Replikation:

ändere Master in master_host='',master_user='',master_password='',master_log_file='mysql-bin.000001',master_log_pos=154, master_ssl=1, master_ssl_ca='/home/mysql/mysqlcerts/ca.pem', master_ssl_cert='/home/mysql/mysqlcerts/client-cert.pem', master_ssl_key='/home/mysql/mysqlcerts/client-key.pem', MASTER_CONNECT_RETRY=10;

verifizieren:
Nachdem die Hauptdatenbank mit SSL-Authentifizierung konfiguriert wurde, meldet sich der Client standardmäßig mit SSL an

mysql -utest -h192.168.1.223 -ptest -P3307

(Dieses Konto kann sich anmelden, unabhängig davon, ob SSL erforderlich konfiguriert ist.)

Der Befehl zum Anmelden ohne SSL lautet:

mysql -utest -h192.168.1.223 -ptest -P3307 --ssl-mode=DISABLED

(Wenn das Konto mit SSL-Anforderung konfiguriert ist, können Sie sich nicht anmelden.)

Das könnte Sie auch interessieren:
  • Umfassende Interpretation der MySQL Master-Slave-Replikation, vom Prinzip bis zur Installation und Konfiguration
  • So konfigurieren Sie die MySQL Master-Slave-Replikation unter Windows
  • Detaillierte Erläuterung der Konfigurationsmethode der Lese-/Schreibtrennung bei der MySQL-Master-Slave-Replikation
  • Detaillierte Erläuterung zur Konfiguration der mehrfädigen Master-Slave-Replikation von MySQL 5.7-Slaveknoten
  • MySQL (Master/Slave) Master-Slave-Replikationsprinzip und Konfigurationsgrafik – detaillierte Erläuterung
  • Detaillierte Konfiguration der MySQL5.6-Master-Slave-Replikationssynchronisation (Bild und Text)
  • Detaillierte Analyse der halbsynchronen und asynchronen MySQL Master-Slave-Replikationskonfiguration
  • Einführung in die Heartbeat-Funktion der MySQL Master-Slave-Replikationskonfiguration
  • Das Prinzip und die Konfigurationsmethode der MySQL-Master-Slave-Replikation (ausführlicher)
  • Konfigurationsprozess für die MySQL-Master-Slave-Replikation

<<:  Zusammenfassung und ausführliche Erläuterung der Docker-Container-Bedienungsanleitung

>>:  So rufen Sie das unterbrochene System in Linux auf

Artikel empfehlen

Grundlagen der funktionalen Programmierung in JavaScript

Inhaltsverzeichnis 1. Einleitung 2. Was ist funkt...

Beispielcode zur Konvertierung von http in https mit nginx

Ich schreibe gerade ein kleines Programm. Da die ...

Installieren Sie Python 3.6 unter Linux und vermeiden Sie Fallstricke

Installation von Python 3 1. Abhängige Umgebung i...

Auszeichnungssprache - Stylesheets drucken

Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...

Vollständiges HTML des Upload-Formulars mit Bildvorschau

Das Upload-Formular mit Bildvorschaufunktion, der...

Vue implementiert einfache Kommentarfunktion

In diesem Artikel wird der spezifische Code von V...

Erklärung der Rückgabe einer MySQL-Tabelle führt zur Ungültigkeit des Index

Einführung Wenn die MySQL InnoDB-Engine Datensätz...

Sieben verschiedene Farbschemata für das Website-Design-Erlebnis

Die Farbabstimmung beim Erstellen einer Website i...

So generieren Sie eine Vue-Benutzeroberfläche per Drag & Drop

Inhaltsverzeichnis Vorwort 1. Technisches Prinzip...

So kapseln Sie die Tabellenkomponente von Vue Element

Beim Kapseln von Vue-Komponenten werde ich weiter...