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

Lernen Sie die asynchrone Programmierung in Node.js in einem Artikel

Inhaltsverzeichnis Einführung Synchron Asynchron ...

CSS3-Flip-Card-Nummern-Beispielcode

Ich habe heute eine Aufgabe von der Firma erhalte...

So erstellen Sie einen Nginx-Image-Server mit Docker

Vorwort Bei der allgemeinen Entwicklung werden Bi...

Was sind die neuen CSS-Pseudoklassenfunktionen :where und :is?

Was sind :is und :where? :is() und :where() sind ...

Lösung für das Problem der Zeilenhöhe der Elementtabellenkopfzeile

Inhaltsverzeichnis Vorwort 1. Ursache des Problem...

Beispielcode mit Vue-Router in HTML

Einführung in Vue und Vue-Router <script src=&...

Galeriefunktion durch natives Js implementiert

Inhaltsverzeichnis Der erste Der Zweite Native Js...

Webdesigner ist ein geeignetes Talent

<br />Es gibt keine Straße auf der Welt. Wen...

Detaillierte Diskussion der Unterschiede zwischen Schleifen in JavaScript

Inhaltsverzeichnis Vorwort Aufzählbare Eigenschaf...

Implementierung der MySQL-Datendesensibilisierung (Telefonnummer, ID-Karte)

1. Erklärung zur Datendesensibilisierung Bei den ...

MySQL-Abfrage – Erlernen grundlegender Abfrageoperationen

Vorwort MySQL ist das beliebteste relationale Dat...