MariaDB,PHP: Kann nicht von anderem Rechner auf Datenbank zugreifen?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Das funktioniert nicht ohne Grund nicht, ein offener MySQL/MariaDB Port ist ein Sicherheitsrisiko. Da es sich hier aber vermutlich um ein gesichertes lokales Netzwerk handelt, sollte das kein großes Problem sein.

Es gibt grundsätzlich zwei Dinge, die dich daran hindern, von entfernten Geräten auf den Server zuzugreifen.

Zunächst einmal bindet MySQL nur an das loopback interface (IP 127.0.0.1 bzw. localhost), was Verbindungen von außen komplett verhindert. Diese kannst du in der Konfiguration auf 0.0.0.0 setzen, um an alle verfügbaren IPs zu binden. Die Konfiguration sollte sich in "/etc/mysql/mariadb.conf.d" befinden, womöglich musst du die relevante Einstellung "bind-address" erst auskommentieren.

Zusätzlich kann in MySQL eingestellt werden, welcher Host auf einen Benutzer zugreifen kann, bei root ist das standardmäßig localhost. Am besten legst du einen unprivilegierten Benutzer dafür an und setzt in MySQL host auf die lokale IP des Webservers. Alternativ kann man auch mit % alle Hosts erlauben, was aber nicht zu empfehlen ist.


MrCommandBlock 
Fragesteller
 16.09.2018, 19:44

Danke, genau das hab ich gemacht, leider war deine Antwort ein bissel zu spät..

Danke trotsdem :D

0

Ja natürlich geht das, sogar quer durch das Internet (ob letzteres klug ist, sei mal dahingestellt).

  1. Schauen daß kein Filter die Verbindung stört oder beeinträchtigt
  2. RDBMS an geeignete IP binden
  3. RDBMS für Remotezugriff konfigurieren
  4. Entsprechedem Benutzer Remotezugriff gestatten

Ind wieweit 3+4 zusammenfallen oder getrennt zu berücksichtigen sidn hängt vom genauen Zugriffsmodell des DBMS ab, die Anleitung verrät mehr.

Woher ich das weiß:eigene Erfahrung

MrCommandBlock 
Fragesteller
 15.09.2018, 20:22

Hey, wie ich oben geschrieben habe bin ich komplett unerfahren. Englische Anleitungen sind auch nicht das beste...

Könntest du mir villeicht helfen?

der db user ist "ts3ranksystem" und die DB läuft auf 192.168.2.111

Der Webserver läuft auf 192.168.2.110

Wie muss ich die Datenbank und den Benutzer konfiguieren damit webserver x.110 zugriff hat?

0
KarlRanseierIII  15.09.2018, 20:31
@MrCommandBlock

Das erste wäre einmal in der Hauptkonfiguration des DBMS die Sektion mysqd zu finden.

Dort findet sich hoffentlich ein bind-address - hier muß entweder ein * für alle IPs oder die gewünschten IPs eingetragen werden. (Auskommentieren sollte genauso wirken wie ein *, also an alle Interfaces binden)

Sofern Du ein skip-networking findest, dies muß auskommentiert sein.

Danach den Server neu starten und mit netstat schauen, ob mysqld auch auf Verbindungen hört.

Der nächste Schritt scheint bei mariadb zu sein, daß der user user@host existieren muß, wobei host eben der name (oder die ip?) des Rechners sein muß, von dem die Verbindung eingeht.

Die verlinkte Seite aus der Doku zeigt eigentlich den wichtigen Teil, den man auch verstehen kann, wenn man kein Englisch spricht.

Andernfalls such doch mal nach einem deutschen tutorial für Remotezugriff bei Maria-DB.

0