Mysql und Zugriff von externen Hosts/IPs

  • Wenn man in Liveconfig nach dem Anlegen von Datenbanken den Zugriff von externen Adressen erlaubt werden die bereits existierenden User in Mysql nicht mehr upgedated. Das heißt, dass alle bereits existierenden Datenbanken- Userkombis dann nur lokal ansprechbar sind. Nur Datenbanken, welche nach dem Eintragen einer externen IP angelegt werden, erhalten dann auch die Rechte von der externen IP aus abgefragt zu werden. Wenn man nachträglich einen Zugriff von außen verbietet, werden die entsprechenden User mit der externen Zugriffsberechtigung auch nicht gelöscht. Hier ist dann Handarbeit angesagt. Man kann ja nicht jedesmal alle betroffenen Datenbanken löschen und neu anlegen! Die Option des externen Zugriffes sollte beim Erstellen der Datenbank wählbar sein. Wenn jemand mehrere Hundert Kunden hat und externen Zugriff erlaubt, ist die jetzige Lösung eher nicht die beste...



    Beste Grüße


    eiclinde

  • Zitat

    Wenn man in Liveconfig nach dem Anlegen von Datenbanken den Zugriff von externen Adressen erlaubt werden die bereits existierenden User in Mysql nicht mehr upgedated.


    Ja, das ist nicht optimal. Wird zum nächsten Update (v1.5.1) beseitigt - vielen Dank für den Hinweis.


    Viele Grüße


    -Klaus Keppler

  • Es sieht so aus, dass dieses Problem in LiveConfig 1.6.0-2002 (lcclient) ebenfalls auftaucht.
    Ich habe vorhin einen user angelegt und beim installieren eines testcms immer die meldung bekommen das kein connect möglich sei.


    Da fiel mit ein das ich auf dem db server ja noch angeben muss welche webserver auf den db server zugreifen darf.


    Nachdem ich das also nachgetragen habe und es noch immer nicht ging habe ich in der "users"-Tabelle auf dem mysql-datenbank nachgesehen und konnte tatsächlich nichts mit der von mir eingetragenen (erlaubten) ip finden.


    Nachdem ich die exisiterende DB gelöscht und neu angelegt habe, ging es. Auch ist die "user"-Tabelle nun wie erwartet.

    - 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,


    ich habe die IPs vom Hauptserver auf dem das PHPMyAdmin läuft in die Whitelist eingetragen. Danach habe ich eine Datenbank angelegt. Leider bekomme ich von extern aber noch immer keine Zugriff. Auch in der my.conf habe ich das Binding von 127.0.0.1 auf 0.0.0.0 geändert.

  • Bei mir war es so das nach aktivieren des externen Zugriffs über die jeweilige IP lediglich neue Datenbanken den externen Zugriff bekommen haben. Die my.cnf muss zusätzlich angepasst werden das ist richtig (inkl. mysql restart ;)). Mit neu angelegten Datenbanken funktionierte es dann.


    Habt ihr mal geprüft welche Hosts für den User in mysql freigeschaltet sind? LC legt da einen User für localhost an und einen für die zusätzlich freigeschaltete IP Adresse.

  • Um es mit den Worten von Herrn Keppler zu sagen


    Uh, ich sehe das ist hier immer noch offen. :(
    Wird gleich mal wieder ans Tageslicht zurück geholt und kurzfristig beseitigt.


    Ich hoffe das es dieses mal am Tageslicht bleibt, bis es behoben ist. ;)

  • Ich häng' mich hier mal dran.


    https://www.liveconfig.com/dev/issues/53


    Ist noch offen und das stellt mich vor das Problem, dass ich meiner phpmyadmin-Instanz auf Server #1 nicht mit LC-Bordmitteln beibringen kann sich für entsrpechende User auf Server #2 zu connecten (MultiServer-Option).


    LiveConfig 1.6.1-r2142
    Debian wheezy (#1 und #2) mit aktuellstem Paketstand


    liveconfig und lcclient schon durchgestartet, aber es passieren keine Änderungen, wenn ich IPs zur Whitelist hinzufüge oder entferne. Wenn ich das manuell in mysql.user eintrage kann mein phpmyadmin verbinden, das ist aber ja nicht im Sinne des Erfinders - außer als Workaround...


    Danke


    Michael aka Bytewurm

  • Also bei mir geht das auch in der Version 1.8.0 nicht. Ich habe nun beide Server einmal so eingestellt, dass diese gegenseitigen Datenbankzugriff haben sollten. Allerdings bekomme ich bei keinem meiner beiden Server eine Verbindung zur Datenbank. Die Antwort ist immer: "Unable to connect to remote host: Connection refused", wenn ich mit telnet versuche eine Verbindung zu bekommen.


    Ich habe auch einmal in die my.cnf Datei gesehen. Allerdings scheint LC in diese keinen IP-Eintrag vorzunehmen.


    An was könnte das noch liegen bzw. in welche Dateien werden die IP's für den externen Zugriff eingetragen?

  • ...Die Antwort ist immer: "Unable to connect to remote host: Connection refused", wenn ich mit telnet versuche eine Verbindung zu bekommen.


    Ich habe auch einmal in die my.cnf Datei gesehen. Allerdings scheint LC in diese keinen IP-Eintrag vorzunehmen.


    An was könnte das noch liegen bzw. in welche Dateien werden die IP's für den externen Zugriff eingetragen?


    im Normalfall ist bei der Installation mysql an localhost gebunden.


    Wenn du in dern my.cnf bind-address = 127.0.0.1 auskommentierst, indem Du z.B. ein # davorsetzt, ist zumindest der mysql-Server von aussen erreichbar.

  • Ja,


    das stimmt, aber "localhost" hätte ich natürlich auch gerne einen Zugriff auf meine Datenbanken. Außerdem jeder IP einen möglichen Zugriff auf meine Datenbanken zu geben stellt natürlich auch ein Sicherheitsrisiko dar.


    An was könnte es also noch liegen?

  • Ja,


    das stimmt, aber "localhost" hätte ich natürlich auch gerne einen Zugriff auf meine Datenbanken. Außerdem jeder IP einen möglichen Zugriff auf meine Datenbanken zu geben stellt natürlich auch ein Sicherheitsrisiko dar.


    An was könnte es also noch liegen?


    deswegen kannst Du ja in der MYSQL-Serververwaltung im Liveconfig die IPs freiegeben die zusätzliche zu localhost das Recht haben sollten, auf die DBs zuzugreifen, aber du musst nunmal den MYSQL-Server erstmal von aussen erreichbar machen:-), wenn du aussen kein Schlüsselloch hast wirst du es schwer haben, deine Wohnung zu betreten :)

  • Hab ich nun so gemacht. Klar kann ich mich nun mit der Datenbank verbinden. Aber jede andere IP könnte das auch versuchen - also Sicherheitslücke.


    Natürlich habe ich das auch einmal mit den IP-Adressen einstellen im Menü unter Serververwaltung -> Datenbanken versucht. Allerdings hat es bei mir keine Funktion. Es ist somit egal ob ich eine IP-Adresse angebe oder keine. Wenn ich bind-address lösche, dann kann jede andere IP versuchen sich mit der Datenbank zu verbinden unabhängig davon welche oder wie viele IP-Adressen ich über LC konfiguriere.


    Muss also noch eine andere Lösung geben bzw. an etwas anderem liegen, warum es bei mir nicht funktioniert.

  • Das phpMyAdmin läuft über localhost.


    Klar kann man den externen Zugriff an- und ausschalten und von "localhost" sollte man eigentlich immer verbinden können.
    Sicherlich soll LC den Alltag bzw. die Serververwaltung erleichtern und daher kann man einfach die IP's eintragen können, welche einen DB-Zugriff haben.


    Ich habe auch alle "externen Zugriff"-Schaltflächen aktiviert, sofern es das wäre. Wenn ich "bind-address" deaktiviere kann ich auch auf die DB connecten. Allerdings wenn ich das aktiviert lasse und es über LC versuche Serververwaltung -> Datenbanken -> Zugriff erlauben, dann geht es halt nicht - es muss aber laufen.


    Also, was läuft da nicht so wie es sein sollte?

Jetzt mitmachen!

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