Externe Datenbankverbindungen

  • Huhu,


    mein Kunde hat einen externen Dienstleister für's Online Marketing beauftragt. Denen hab ich FTP-Zugang geben sollen und sie haben jetzt ein WordPress installiert - mit externer Datenbank - und beschweren sich nun bei mir, dass sie keine Verbindung zu ihrer DB bekommen.


    Auf meine Nachfrage, ob die DB nicht einfach auf dem Server abgelegt werden kann (ich hatte extra eine einrichtet) hieß es: "unsere Datenbank können wir nicht außer Hand geben, die muss aus Sicherheitsgründen bei uns bleiben. Wir handhaben das mit allen unseren Kunden so."

    Ich hab also auch selbst keine Möglichkeit, den Zugriff zu testen und hab keine Ahnung, wo die in ihrem WP die Datenbankverbindung aufbauen.


    Könnt ihr mir weiterhelfen? Geht das bei netcup überhaupt? Im Einsatz ist ein Web Expert M.

  • Ich bekam jetzt den Tipp, dass ich die Firewall des Hostings (vermutlich) auf Port 3306 öffnen muss. Kann ich das? Darf ich das?

    Die Voraussetzungen für den Zugriff auf die externe Datenbank hab ich bei dem Dienstleister angefordert und warte darauf.

  • Der Dienstleister besteht auf einer externen Datenbank sein? Das ist unperfomant. Das klingt auch unseriös.


    btw, wenn dann muss der Dienstleister seine Firewall öffnen. Da gehen die Anfragen ja hin. Hat er das sauber gemacht?

    "Security is like an onion - the more you dig in the more you want to cry"

  • Ich wüsste jetzt keinen Grund warum das netcup-seitig nicht funktionieren sollte. Ist natürlich die Frage, ob der externe Dienstleister seinen Server so konfiguriert hat, dass von außerhalb - vom entsprechenden netcup Webserver - auf diese Datenbank zugegriffen werden kann. Wir haben letztens mal ausprobiert, ob das von einem Netcup Webhosting zu einem anderen funktioniert. Also der Zugriff auf eine Datenbank eines anderen netcup-Webhostings. Die Antwort war: Ja, das funktioniert. Nicht mit der netcup internen IP des Datenbankservers sondern nur mit der öffentlichen IP. Da sehe ich jetzt eigentlich keinen großen Unterschied mehr zu einem externen Server. Wenn das bei denen mit anderen Kunden klappt, dann stimmen vielleicht auch einfach die Zugangsdaten nicht (IP, Port, Username, Passwort, Datenbankname).


    Ich kann es ja gelegentlich mal mit einer Datenbank bei einem anderen Hoster ausprobieren.

  • Der Dienstleister besteht auf einer externen Datenbank sein? Das ist unperfomant. Das klingt auch unseriös.


    btw, wenn dann muss der Dienstleister seine Firewall öffnen. Da gehen die Anfragen ja hin. Hat er das sauber gemacht?

    Sehe ich genauso. Wenn dein Wordpress hier bei Netcup Zugriff auf die Datenbank bei dem Dienstleister benötigt, so muss dieser für die IP des Webhostings den Inboundzugriff in der Firewall und, falls so konfiguriert auch im MySQL-Server, erlauben. Auf "Clientseite" muss nichts geöffnet werden. Ich kann mir nicht vorstellen, dass Outboundzugriffe hier bei Netcup auf Port 3306 ausgefiltert werden.

    Wie vmk schon schrieb, klingt das ganze äußerst unprofessionell, wenn nicht gar unseriös. Wenn jede Datenbankabfrage einen Roundtrip durch das halbe WAN nimmt, hat das massive Auswirkungen auf die Performance der Seite. Das wirst du bei wenigen Zugriffen nicht spüren, bei einer gut besuchten Seite aber auf jeden Fall.

  • Hab gerade auf meinem Webhosting versucht eine Verbindung zu dem im Screenshot angegeben Server herzustellen. Ist mit mysqli_connect möglich, natürlich bekomme ich einen Fehler wegen dem Zugang:

    Code
    Fehler: konnte nicht mit MySQL verbinden. 
    Debug-Fehlernummer: 1045 
    Debug-Fehlermeldung: Access denied for user 'hallo'@'*****.netcup.net' (using password: YES)
    Error.log: mysqli_connect(): (HY000/1045): Access denied for user 'hallo'@'*****.netcup.net'


    Was mich ein wenig stutzig macht ist das "'hallo'@'*****.netcup.net'" <- Sollte da nicht der externe Server stehen ?


    Edit: Gerade nochmal mit HeidiSQL getestet, da bekomme ich "'hallo'@'öffentliche IP von mir'" <- also sollte man eine Verbindung aufbauen können.

  • Kann es leider nicht mehr bearbeiten:


    War ein Gedankenfehler von mir, sagt ja eigentlich nur aus das Benutzer 'Hallo' oder Host '*.netcup' keine Berechtigung hat auf die Datenbank zuzugreifen und sollte von dem Dienstleister freigegeben werden. Host findest du mit einem mysqli_connect in php raus oder im CCP unter deinem Vertrag.

  • Hab's auch nochmal mit einem Webhosting "EiWoMiSau" getestet. Ich kann von da aus problemlos eine Verbindung zu einer Datenbank bei einem anderen Hoster aufbauen.

    RS Brezn | VPS 500 G8 Plus | 2× VPS Karneval 2020 | VPS Pocket Admin | RS Cyber Quack | Webhosting EiWoMiSau


    Dieses Gebäude hat mir die Vorfahrt genommen! *hup*

  • Man muss sich nur die Webseite der Agentur angucken und weiß alles: https://www.gefunden.net/

    Die "externe Datenbank" ist wohl einfach eine, die Backlinks aufbauen soll (wie auch immer das funktioniert) : http://www.fastbacklink.de/

    Es geht schon los mit einem self-signed cert und wird dann von unserem Firmennetzwerk als "Malicious Sources/Malnets" kategorisiert und geblockt ^^

    Dann erfolgt auch hoffentlich eine SSL Verbindung zu der Datenbank? Oder werden die Daten dann wirklich im Klartext einfach so übertragen?

    Ich schätze nicht... Ist bei einer Datenbank, die frei mit Port 3306 im WAN steht aber auch nicht DAS Problem. Ein Angreifer braucht auf einer entsprechenden Website nur eine SQL Injection zu finden und zu fahren und kann sich dann frei auf Port 3306 austoben :D

  • Es geht schon los mit einem self-signed cert und wird dann von unserem Firmennetzwerk als "Malicious Sources/Malnets" kategorisiert und geblockt ^^

    Ich schätze nicht... Ist bei einer Datenbank, die frei mit Port 3306 im WAN steht aber auch nicht DAS Problem. Ein Angreifer braucht auf einer entsprechenden Website nur eine SQL Injection zu finden und zu fahren und kann sich dann frei auf Port 3306 austoben :D

    Ich würde da schon alleine aus Sicherheitsgründen gegenargumentieren und fragen ob es auch eine professionelle Lösung von denen gibt, VPN, SSH Tunnel uvm.

  • Das ganze Geschäftsmodell ist total unseriös, ich hab mich klar dagegen ausgesprochen und ich stufe die unter Blackhat SEO ein. Aber ich habs nicht beauftragt, der Kunde will's haben ;) Da bin ich raus. Was mich viel mehr stresst ist, dass ich ein WordPress INNERHALB des Haupt-CMS installieren muss. Wäre es eine Subdomain o.ä., die ich einfach per DNS zu denen rooten könnte, wär's mir total egal. Wenn das Ding mal gehackt wird, geht auch die Hauptseite in die Knie...


    Der netcup Support sagte mir, externe Datenbankverbindungen gehen nicht in Shared Hostings, frühestens ab einem Root Server xD

  • Der netcup Support sagte mir, externe Datenbankverbindungen gehen nicht in Shared Hostings, frühestens ab einem Root Server xD

    Na aber das stimmt nun wirklich nicht. Selbstverständlich kann das Webhosting eine Datenbank, die auf einem externen Server liegt, ansprechen - von den bereits angesprochenen Performanceproblemen mal abgesehen. Eben nochmal getestet: PHP-Script auf dem Webhosting, Datenbank auf einem anderen Server -> Verbindung erfolgreich.


    Entweder ist die Aussage vom Support falsch oder ihr habt aneinander vorbeigeredet ^^


    Grüße

    René

  • Teste doch mal die Zugangsdaten in einem einfachen PHP Script und melde was die Gegenseite meldet...



    Sollte ein Access Denied kommen ist der Server erreichbar aber der User hat keine Rechte (Host *Netcup erlaubt? Passwort richtig? Benutzer richtig? Datenbank richtig?... Also zurück an Dienstleister)


    Bekommst ein Connection Time Out dann ist der Server nicht erreichbar... (Gesperrt von NC? Haben aber nun zwei getestet und nicht festgestellt...)


    Kommt ein "Datenbank ist Toll", dann muss man sich mal das WordPress angucken (deine Aufgabe?)

  • DIe Zugangsdaten zur DB bekomme ich leider nicht. Was ich auch nicht verstehe, denn wenn das Ding verbunden ist, stehen die Daten doch eh irgendwo im Klartext. Wenn nicht in der wp-config, dann irgendwo anders. Aber ich kann es mal mit einer anderen DB anlegen, die ich auf einem anderen Hosting einrichte.a

  • Sollte ein Access Denied kommen ist der Server erreichbar aber der User hat keine Rechte (Host *Netcup erlaubt? Passwort richtig? Benutzer richtig? Datenbank richtig?... Also zurück an Dienstleister)


    Bekommst ein Connection Time Out dann ist der Server nicht erreichbar... (Gesperrt von NC? Haben aber nun zwei getestet und nicht festgestellt...)


    Kommt ein "Datenbank ist Toll", dann muss man sich mal das WordPress angucken (deine Aufgabe?)

    Fehler: konnte nicht mit MySQL verbinden. Debug-Fehlernummer: 2002 Debug-Fehlermeldung: Connection refused


    das bekomme ich. Habe eine DB auf domainfactory erstellt und die eingetragen

  • Ich würde an deiner Stelle versuchen, mit jemandem zu reden, der sich mit der Sache auskennt und die Zusammenhänge aufklären kann. Ebenso die benötigten Rechte und Einstellungen, damit das tolle(?) Tool funktioniert. Das wäre dann ja wohl der externe Dienstleister. Diese Voraussetzungen kann man dann überprüfen.


    Obwohl, ob die sich damit auskennen, da bin ich mir auch nicht ganz so sicher ;). Jedenfalls ist es für mich schwer vorstellbar, dass die im vollen Ernst die komplette Website über ihre externe Datenbank laufen lassen wollen. Wordpress ist so schon kein besonderer Ausbund an Performance und dann noch eine externe Datenbank? Da braucht es dann eigentlich keine Marketingmaßnahmen mehr, weil so lange sowieso niemand auf die Seiten warten will. Bzw soll die Website überhaupt mit diesem vom externen Dienstleister installierten Wordpress erstellt werden oder wozu soll dieses Wordpress sonst gut sein? Alles Fragen, die eigentlich der externe Dienstleister beantworten müsste. Wenn sich bei mir einer beschwert, dass seine Datenbank nicht erreichbar ist, mir aber keine Informationen darüber geben will, was genau denn nun wie funktionieren soll und welche Voraussetzungen dazu nötig sind, dann darf er seine Hausaufgaben selbst machen. Der Einsatz meiner Glaskugel kostet einen heftigen Aufpreis, schliesslich sind die Anschaffungs- und Wartungskosten nicht ganz billig ;).