Mysql und Zugriff von externen Hosts/IPs

  • externer Zugriff bedeutet für alle IPs also %, du musst den externen Zugriff im Liveconfig deaktivieren, damit du nur von den gewünschten Ips conencten kannst (nachdem du bind auf localhost deaktiviert hast)ann funktioniert das was du möchtest.

  • Also, ich soll


    1. bind deaktivieren
    2. den externen Zugriff im LC deaktivieren.
    Damit ich externen Zugriff auf meine Datenbank bekommen. :confused:


    Nur zur Info: Localhost funktioniert schon, ich würde jetzt gerne über das LC-Menü eine weitere IP für den Datenbankzugriff für den externen Zugriff konfigurieren.


    Und für was kann ich dann bitte die IP's in LC eingeben?

  • ja jetzt haben wir uns verstanden,


    die Angabe der IPs macht z.b. Sinn, wenn Web und DB-Server wie in vielen Webhoster-Setups getrennt sind.
    Hier hat der User dann nur von der IP des Webservers, sowie localhost Zugriff auf die Datenbank.


    Extern geht dann über das Setup des internen Netzes hinaus und lässt den weltweiten Zugriff zu.

  • Genau!


    Und genau das funktioniert ja nicht!


    Also ich kann da meine Web-Server-IP eingeben wie ich möchte. Ich erhalten von dieser eingegebenen IP keinen Zugriff auf meine Datenbank.


    In welche Datei schreibt den LC die freigegebene IP rein bzw. in welchen Dateien werden da auf einen externen Zugriff konfiguriert?

  • Das ist toll! :)


    ... vielleicht eine info für die Nachwelt?

    - LiveConfig 1.6.0-r2052 (Inaktiv) :: BETA: 1.6.1 - r2142 (Inaktiv)
    [HR][/HR] - CentOS 6.3 x64[HR][/HR]- Apache 2.2.15 - PHP 5.4.12* - mod_suphp 0.7.1** - MySQL 5.5.30*
    - Postfix 2.6.6 - dovecot 2.0.9 - Clamd 0.97.6** - clamav-milter 0.97.6**- postgrey 1.34**
    - vsFTPd 2.2.2 - AWStats 7.0**
    * Aus dem REMI-Repository :: ** Aus dem rpmforge-Repository

  • Hallo zusammen.
    Bin gerade hier rüber gestolpert. Beim nachträglichen Aufbau eines zentralen phpmyadmins wollte ich den Zugriff von dem Server auf die Datenbanken zulassen. Das klappt bei neuen Datenbanken, jedoch werden die bestehenden Nutzer, wie vom Thread Starter beschrieben, nicht aktualisiert.
    Habe auch den offenen Bug gefunden:
    https://www.liveconfig.com/dev/issues/53


    Würde mich über eine Umsetzung freuen. Grade wenn man mal bei gewachsenen Systemen dahingehend was ändert spart das viel Arbeit.


    Grüße,
    Stefan

  • Hallo zusammen,


    hier noch fyi meine Lösung, um die Änderungen nachzuziehen. Mit etwas Handarbeit verbunden, aber verkraftbar:


    Mit folgendem Script die aktuellen Benutzer in eine Datei dumpen:
    mysqlusrdump.sh:

    Bash
    #!/bin/bash
    # adapted from (http://www.pyrosoft.co.uk/blog/2006/10/18/show-grants-for-all-users-on-mysql/)
    (
     mysql --batch --skip-column-names -e "SELECT user, host FROM user" mysql
    ) | while read user host
    do
      echo "# $user @ $host"
      mysql --batch --skip-column-names -e"SHOW GRANTS FOR '$user'@'$host'"
    done


    Ausführen per ./mysqlusrdump.sh >~/grants.dump


    Die Ausgabe ist nicht direkt verwertbar. Diese muss nun etwas aufgewertet werden:
    - Manuell alle Einträge für root entfernen
    - Ich habe auch den liveconfig User entfernt
    - Suchen & ersetzen: localhost durch die IP des zentralen phpmyadmin Servers
    - Ans Ende jeder Zeile ein Semikolon setzen


    Dann per root auf die Datenbank und einmal per copy'n'paste reinschieben oder per
    mysql < grants_bearbeitet.dump


    Ist pro DB Server etwa 10 Minuten Aufwand.


    VG
    Stefan

  • Selbes Problem hier. Ändert man die IP für den externen Zugriff, werden vorhandene IPs in der Datenbank nicht aktualisiert, nur wenn man neue Datenbanken anlegt, stehen dann die neuen IPs in der DB, vorhandene Datenbanken bleiben unberührt. Wie kann man das Problem kurzfristig lösen?

  • Nachtrag: löscht man die IP unter Serververwaltung ---> Datenbanken ---> Zugriff erlaubt:... bleiben auch die Einträge in der Datenbank bestehen. Das sollte so nicht sein, d.h. wenn ich die IP entferne, müssen auch die entsprechenden Einträge in der Datenbank verschwinden.

  • Nachtrag: löscht man die IP unter Serververwaltung ---> Datenbanken ---> Zugriff erlaubt:... bleiben auch die Einträge in der Datenbank bestehen. Das sollte so nicht sein, d.h. wenn ich die IP entferne, müssen auch die entsprechenden Einträge in der Datenbank verschwinden.



    Das selbe Problem habe ich auch. Die IPs werden nach einer Änderung im LiveConfig in der Datenbank nicht aktualisiert oder falls Benutzer vorhanden sind, nachgetragen. Wird es eine Lösung geben?

  • Nur bei neuen Datenbanken werden die hinterlegten erlaubten IPv4-Adressen erstellt und danach nie wieder geupdated oder gelöscht, so lange der dbuser existiert. :mad:


    Dazu konnte ich die Aktivierung "externer Zugriff nur mit SSL" nur beim Datenbank erstellen finden als Admin und nicht beim editieren. Auch in der Datenbank steht "REQUIRE SSL" nur bei Hostname mit "%" drin. Bei den externen IPv4-Adressen ist kein REQUIRE SSL aktiviert sondern steht auf REQUIRE NONE.


    Zusätzlich fehlt IPv6 und beim Löschen einer IPv4 wird der Platzhalter in der GUI nicht ersetzt.
    "Möchten Sie die Adresse ' + addr + ' wirklich aus der Datenbank-Zugriffsliste löschen?"
    (addr sollte durch die IP ersetzt werden bei der Nachfrage ob man wirklich löschen will)


    Gibt es hier noch ein Feedback? :confused:


    Frag ich mich auch. Bin gerade ebenfalls auf dieses Problem getroffen trotz Liveconfig 2.10.4 :(


    Theoretisch sollte ein Skript per Cronjob (ggf. auch LUA) möglich sein. Hat vermutlich bisher keiner geschrieben? :confused:
    Zusätzlich würde ich auch gern die Firewall gleich dazu setzen damit unbefugte IP-Adressen nichtmal zum Datenbankserver hinkommen trotz Verschlüsselung.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!