Ich versuche, einem Remote-Server den Zugriff auf eine MySQL-Instanz zu ermöglichen, die derzeit einen Linux-Server mit einer Web-App gemeinsam nutzt. Laut Dokumentation ist dies nur möglich (sofern ich nicht richtig verstehe), wenn die Bindeadressen- Direktive auf 0.0.0.0 gesetzt ist , was dazu führt, dass MySQL den Zugriff von jeder IP -Adresse aus erlaubt, die einen gültigen Benutzer erzeugen kann.
Also zwei Fragen:
- Wie schädlich wäre dies für die Sicherheit?
- Gibt es einen besseren Ansatz, um sowohl lokale als auch Remote-Interaktionen mit MySQL zu ermöglichen?
0.0.0.0
. Obwohl ich denke, für viele Installationen ist nur die lokale Bindung die beste Option. Öffnen Sie die Tür nicht, wenn Sie nicht möchten, dass jemand durch sie geht.ein. Es ist schlecht. Obwohl Sie den Benutzerzugriff für jede Datenbank per IP einschränken können, ist es meiner Meinung nach sicherer, alle Verbindungen lokal einzugeben. Auf meinen Servern kann MySQL nur lokale Verbindungen akzeptieren, 127.0.0.1 ist die Standardkonfiguration. Um remote auf die Datenbank zuzugreifen, müssen Sie lediglich einen SSH-Tunnel erstellen, bevor Sie eine Verbindung zur Datenbank herstellen und dann eine lokale Verbindung herstellen. Wenn Sie mit PHP programmieren, ist dies ziemlich einfach. Wenn Sie eine Desktop-Anwendung verwenden, ist es einfach, sie unter Linux auszuführen (SSH-Tunnel nachschlagen). Unter Windows verwende ich normalerweise ein Programm wie Putty, um den Tunnel für mich zu erstellen.
quelle