Localhost
Simone
- datenbank
Hallo,
Ist es möglich von einen Externen Server (im www) auf die locale Mysql Datenbank zuzugreifen?
Mysql läuft Local unter Win XP
Danke Simone
Hello,
Ist es möglich von einen Externen Server (im www) auf die locale Mysql Datenbank zuzugreifen?
Wenn es eine transparente Verbindung gibt zu den Diensten des des Datenbankservers...
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Moin!
Ist es möglich von einen Externen Server (im www) auf die locale Mysql Datenbank zuzugreifen?
Ja. Standardmäßig lauscht mySQL auf Port 3306 UDP und TCP.
Mysql läuft Local unter Win XP
Servicepack 2? Dann musst Du eventuell die Firewalleinstellungen anpassen.
Ferner solltest Du Dich auch darum kümmern die Benutzerrechte entsprechend anzupassen.
Weiterhin solltest Du Dich darum kümmern, wie Deine aktuelle IP-Adresse aufgelöst wedren kann (Stichwort: DynDNS) und, falls Du einen Router hast, wie dieser Zugriffe auf den Rechner weiterleitet (Stichworte hierzu: NAT/Masquerading/SOAP, Portforwarding)
Allerdings dürfte Dein Dienst schon einmal infolge des DynDNS nicht gerade durch Hochverfügbarkeit glänzen.
Danke Simone
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Hallo
Das es vom Prinzip her möglich ist klingt erstmal gut.
Jetzt zum Praktischen:
unter dem SQL Admin sehe ich eine local IP adress
169.....
diese sollte den sql Server ansprechen (ist das OK so?)
$db = mysql_connect(169.....)
im Adminbereich stelle ich Zugriffsrechte für den (www.host) ein
Gibt es sowas irgendwo im Netzt beschrieben?
Google hilft nicht weiter.
Danke
Simone
Hallo,
Das es vom Prinzip her möglich ist klingt erstmal gut.
Ja, ist es.
Jetzt zum Praktischen:
... allerdings hat es keine praktische Bedeutung.
unter dem SQL Admin sehe ich eine local IP adress
169.....
Wie geht die weiter? Wenn die im Bereich 169.254.x.x mit Netzmaske 255.255.0.0 liegt, dann ist die aus dem Internet nicht zu erreichen. http://www.willemer.de/informatik/net/apipa.htm
diese sollte den sql Server ansprechen (ist das OK so?)
Ja, bei Dir lokal schon, genau wie 127.0.0.1 bzw. localhost. Aber von außen, aus dem Internet, ist _diese_ Adresse nicht erreichbar.
Wenn Du ins Internet eingewählt bist, dann hat mindestens eines deiner lokaten Netzwerkinterfaces eine IP vom Provider bekommen. Diese musst Du herausbekommen und über diese kann Dein PC von außen erreicht werden.
Da sich diese IP aber bei ggf. jeder neuen Einwahl ändert und außerdem die Übertragungs-Bandweite (Upload-Stream) eines Internet-Client-PCs auch bei DSL normalerweise _sehr_ begrenzt ist, hat dieses Vorgehen keinerlei praktischen Nutzen.
Noch komplizierter wird es, wenn nicht Dein PC, sondern ein Router sich ins Internet einwählt und somit die IP vom Provider erhält. Dann müsste der MySQL-Dienst auf dem Router laufen oder der Router müsste Port-Forwarding unterstützen.
viele Grüße
Axel
Hello,
Jetzt zum Praktischen:
unter dem SQL Admin sehe ich eine local IP adress
169.....
Deine aktuelle IP sollte transparent sein, das heißt öffentlich und ohne Übersetzungen und Filter für Ports erreichbar sein.
Dann, und nur dann, kann man eine Socket-Verbindung (z.B. mittels mysql_connect() ) aufbauen.
Passwort und Nutzername für root sollten natürlich bei der Datenbank schon personalisiert sein und nicht mehr offen für Jedermann. Das gleiche gilt für den Host selbst. Anderenfalls könnte man einfach Deinen MySQL-Deamon über Remote-Access ohne Sicherheit oder mit eigenen Daten neu starten.
Und dann muss MySQL in der nächsten Schicht (Zugriffssystem) auch Rücksicht auf den zugreifenden User nehmen und eben nicht "%"@"%" unterstützen, sondern nur "Gast"@"%" mit den entprechend eingeschränkten Nutzerrechten. Auf keinen Fall Universalrechte (schon gar nicht auf die auf die 'mysql'-DB im MySQL-DBMS) erteilen.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Moin!
Gibt es sowas irgendwo im Netzt beschrieben?
Google hilft nicht weiter.
Doch. Er hilft.
Allerdings ist es so, dass das, was Du vorhast, nicht trivial sondern sehr komplex ist. Hinzu kommen eine ganze Reihe _erheblicher_ Sicherheitsbedenken. Das erforderliche Wissen hierzu betrifft einen erheblichen Umfang an Wissensgebieten und ist nicht ohne weiteres in _einer_ Schritt für Schritt- Anleitung vermittelbar. Du brauchst mindestens Grundwissen in:
Ferner solltest Du bereit sein Dich stets und imer über aktuelle Sicherheitsalarme zu informieren und Dein System Up-to-Date zu halten.
Der Lernbedarf und der Aufwand ist also erheblich und ganz ehrlich: ich vermute, wäre der gedeckt, würdest das Vorhaben so nicht durchziehen wollen (siehe 2. Punkt). Ich hielte es für die bessere Idee, die im Verhältnis wenigen Euros in einen guten Hoster zu investieren, der Dich von Deinen Sorgen befreit. Ich mache das schließlich auch und halte das für eine gute Idee- gerade weil ich auch mySQL- Seminare halte.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Hi fastix
Du hast aus meiner Fragestellung zurecht abgeleitet das mein Webspace keinen externen Zugriff auf den Mysql Server zuläst.
Und genau deshalb suche ich nach Alternativen.
OK, ich denke auch das der Aufwand recht groß ist eine Lösung als Localhost Mysql Server unter xp zu realisieren.
Kannst Du mir vielleicht einen guten Anbieter posten wo ich nur meine SQL Datenbänke (extern) laufen lassen kann. Umfangreiche Datenbankberechnungen und einpflege möchte ich auf meinen Localen System auslagern und dann den Datenbestand mit dem externen Server abgleichen. Alternativen sind derzeit nur das einspielen von großen Dumps wobei ich dabei auch keine Rootzugriff nutzen kann, was auch nicht das ware ist.
Simone
Moin!
Kannst Du mir vielleicht einen guten Anbieter posten wo ich nur meine SQL Datenbänke (extern) laufen lassen kann.
Ja. Natürlich. Die Frage läuft aber darauf hinaus, ob ich die Frage richtig beantworden werde. Ich habe herzlich wenig Informationen. So ganz pauschal würde ich auf 1un1 verweisen, die haben einen Root-Server oder einen managed Server. Letzterer ist allerdings nicht billig. _Ich_ habe mit der Firma gute Erfahrung, aber genau das bringt mich zu meiner Frage 2, die da lautet:
"Will ich hier einen Flamewar auslösen? (und bei dem Thema ist die Gefahr real..)
Nein. Das will ich nicht. Deshalb verweise ich neben den Stichworten "rootserver" und "managed server" auch noch auf "serverhousing" und "rent-a-server"(http://www.google.de/search?hl=de&q=rent-a-server). Letzteres bedeutet: Du stellst einen eigenen Rechner in ein Rechenzentrum. Das ist oft nicht teuer, oft kann man auch Geräte mieten. Dir werden da Angebots-Pakete in großer Zahl begegnen. Welches das richtige ist, kann ich Dir nicht sagen, ich weiss zu wenig und somit sind wir wieder bei Frage 1.
Du musst also selbst heraussuchen, was Du brauchst und die Angebote vergleichen. Daneben kann ein Umzug des Webauftrittes durchaus wirtschaftlich und technisch sinnvoll sein. Halte Dir bei der Angebotssuche diese Option offen.
Gegebenenfalls ist es billiger sich lokal einen Gespächspartner zu suchen. Die Beratung mag nicht kostenlos sein hat aber den Vorteil, dass womöglich ein teurer Fehlkauf vermieden wird.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Hi fastix
Ich habe heute einen Auftrag für ein Managed Server ausgelöst.
Vor ca. 6 Monaten hatte ich einen "relativ sicheren Weg"
der Datenbankkomunikation über die socked Verbindung umgesetzt.
Praktisch nutze ich den POST request um Daten von Server A nach Server B zu übermittel. Die Daten werden mit eine Rand Passwort verschlüsselt welches auch verschlüsselt im Headbereich mit versendet wird. Im Postrequest kann man per Socket schon größerer Datenmengen versenden. ;o)
Die Daten werden vor dem senden komprimiert und dann mit mcrypt verschlüsselt.
Auf Server A und Server B befinden sich die entsprechenden encrypt und decrypt Funktionen für den Übergabeschlüssel.
Dem Passwort habe ich eine Gültigkeit von 5 Minuten mit angehangen.
Diese Variante der Datenkomunikation erscheint aus meiner Sicht relativ sicher ist jedoch umständlich.
Ich danke Dir nochmal für Deine Antwort.
Simone