Sichere Nutzung eines entfernten MySQL-Servers in einem privaten Hetzner Cloud-Netzwerk

0 Aktien
0
0
0
0

Einführung

Dieses Tutorial erklärt, wie man mit Hetzner Cloud Networks auf eine MySQL-Datenbank zugreift, die auf einem Cloud-Server (MySQL Server) verwaltet wird, und zwar von einem zweiten Cloud-Server (MySQL Client).

Voraussetzungen
  • 1 Hetzner Cloud-Server mit bereits installiertem MySQL.

Sie können MySQL manuell installieren oder einfach beim Erstellen des Servers den “LAMP Stack” auswählen.


Schritt 1 – Ein privates Netzwerk erstellen

Erstellen Sie Ihr privates Netzwerk im Rahmen Ihres Hetzner Cloud-Projekts in der Region, die Sie verwenden möchten.


Beachten Sie, dass der Standard-IP-Adressbereich auf 10.0.0.0/16 eingestellt ist.

Schritt 2 – Verbinden Sie den Server mit dem Netzwerk

Jetzt können Sie den MySQL-Server mit dem neuen Netzwerk verbinden. Dies können Sie über die Cloud Console oder das entsprechende Tool tun. hcloud Mach es.

hcloud server attach-to-network <your-server-name> --network <your-network-name> --ip <pvt-ip>

Der letzte Teil mit --ip; Optional. Wenn Sie keine bestimmte private IP-Adresse angeben, weist Ihnen das Hetzner Cloud-System automatisch eine kostenlose private IP-Adresse zu.

Schritt 3 – MySQL-Konfiguration ändern

Um von einem anderen Rechner auf MySQL zuzugreifen, müssen Sie eine Änderung an der Datei vornehmen. /etc/mysql/mysql.conf.d/mysqld.cnf Erstellen.

Datei mysqld.cnf Bearbeiten

Um die MySQL-Konfigurationsdatei zu öffnen, verwenden Sie folgenden Befehl:

nano /etc/mysql/mysql.conf.d/mysqld.cnf

Parameter Bindungsadresse aus 127.0.0.1 Zu 0.0.0.0 Ändern.

Wenn Sie MySQL über das “LAMP Stack”-Programm installiert haben, müssen Sie einen MySQL-Port angeben (standardmäßig 3306) unter Verwendung des Werkzeugs ufw Offen.

Wenn Sie MySQL manuell installiert haben, müssen Sie die Firewall mit diesem Befehl installieren: apt-get ufw installieren

Bearbeiten Sie die Firewall.

Um den Port zu öffnen 3306 Fügen Sie der Firewall eine Regel hinzu.

ufw allow from 10.1.0.0/16 to any port 3306

10.1.0.0/16 Ersetzen Sie dies durch den Netzwerk-IP-Adressbereich, den Sie in Schritt 1 erstellt haben.

Wenn Sie SSH verwenden, um eine Verbindung zu Ihrem Server herzustellen, sollten Sie SSH-Verbindungen auch zulassen, bevor Sie die Firewall aktivieren.

ufw allow OpenSSH
ufw enable

Schritt 4 – Neuen MySQL-Benutzer erstellen

Melden Sie sich als Root-Benutzer an der MySQL-Befehlszeile an:

mysql -u root -p

Erstellen Sie einen neuen MySQL-Benutzer, der von nicht-lokalen Instanzen verwendet werden kann.

CREATE USER '<user>'@'%' IDENTIFIED BY '<password>';
GRANT ALL PRIVILEGES ON *.* TO '<user>'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Vergessen Sie außerdem nicht, dass Sie nach der Bearbeitung der Datei mysqld.cnfStarten Sie MySQL neu. Um die MySQL-Befehlszeile zu beenden, geben Sie Folgendes ein: STRG+D Verwenden und führen Sie folgenden Befehl aus:

service mysql restart

Schritt 5 – MySQL-Zugriff im privaten Netzwerk prüfen

Erstellen Sie einen neuen Server von Grund auf und verbinden Sie ihn mit demselben privaten Netzwerk.

Installieren Sie den MySQL-Client. Sie können beispielsweise den MariaDB-Client verwenden.

apt update apt install mariadb-client -y

Sie benötigen nun die private IP-Adresse des ersten Servers. In der Cloud Console können Sie Ihr Projekt auswählen und zur Serverliste gehen. Dort können Sie die private IP-Adresse dieses Servers kopieren.

Verwenden Sie diesen Befehl, um eine Verbindung zum MySQL-Host herzustellen:

mysql -h <mysql-host-private-ip> -u <user-created-above> -p

Geben Sie dann einfach Ihr für den Benutzer erstelltes Passwort ein und voilà – Sie sind angemeldet.

Ergebnis

Hier sahen Sie nur ein Beispiel dafür, wie man unter Hetzner Cloud auf eine Datenbank in einem privaten Netzwerk zugreift.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Das könnte Ihnen auch gefallen