Webserver und Datenbankserver - Ports

Oli-nux

Lieutenant
Registriert
Nov. 2007
Beiträge
687
Hallo,

habe da irgendwie ein Verständnisproblem.

Finden dazu kann ich nichts und fragen, außer hier im Forum, auch niemanden den ich kenne und das wüsste.

Angenommen es gibt 2 (Root-)Server, einer fungiert als Web- der andere als Datenbankserver.
Müssen dann auf beiden Servern die Ports für die Datenbank freigegeben werden oder wie kann der Webserver seine Daten vom DB-Server bekommen und in selbige schreiben?:freak:

Man könnte beides auch nur auf einem Server laufen lassen, der Sicherheit wegen wäre es zu überlegen dafür 2 Server einzusetzen.;)

Änderung der Standard-Ports jetzt mal außen vor!:rolleyes:
 
Bei Servern sind entsprechende Ports in der Regel immer offen--- Ich meine ein Webserver muss nach Außen ja sowieso erreichbar sein und die Datenbankserver ja genauso.

Ob man von Server A auf Server B schreiben kann, ist dann 'ne Sache der Konfiguration. Das kann man zulassen - oder eben auch abschalten. Das hat aber eher (in der Regel) nichts mit Port-Freigaben zutun.

=>
http://www.sysadminslife.com/linux/quicktipp-mysql-externer-zugriff-erlauben-bind-address/

Schnell gegooglet.

Gerade was Webserver & Co. angeht, einfach Google betätigen. Da findet man eigentlich wirklich alles. Wenn man dann noch Ubuntu oder Debian nutzt, gibt es eigentlich nichts, was sich nicht irgendwie durch eine gezielte Suche lösen lässt ;)

Bei sowas ist natürlich zu beachten, dass man damit immer Türen öffnet und somit angreifbarer ist. Es ist also wichtig, wenn man nicht drum herum kommt, dass ganze so sicher wie möglich zu konfigurieren (eben wie im Link auch erwähnt, dass man den Zugriff z.B. nur für eine bestimmte IP zulässt und nicht allgemein).

"Sicherer" ist dein Vorhaben daher eigentlich nur bedingt. Wenn es um "Sicherer" von wegen "Datensicherheit" geht => Regelmäßige Backups sind das Mittel - oder gerade im Serverbereich auch Spiegelungen. Wenn man da einen soliden Anbieter hat, hat man ohnehin immer eine "Schattenkopie", die man planen kann...

Mein vServer bei HostEurope wird z.B. regelmäßig gespiegelt und ich kann entweder alles oder nur einzelne Sachen problemlos wiederherstellen.
 
Zuletzt bearbeitet:
Erstmal Danke für die Antwort!:)

Wäre Windows Server 2012 R2, evtl. auch für einen der beiden ein vServer, der andere ein Root-Server.

Von Linux-Servern versteh ich gleich NullKommaNull.:rolleyes:

Ja, zur Sicherheit im allgemeinen habe ich mich schon etwas belesen, das soll hier auch erstmal kein Thema sein.

Wissen wollte ich nur wie beide miteinander kommunizieren können, ob also beide die Ports für die Datenbank offen haben müssen oder wie das sein muss.

Stichwort: Port-Scanns
 
Der MySQL Server lauscht standardmäßig nur auf der localhost IP Adresse (127.0.0.1). Folgender Eintrag in der my.cnf ist dafür verantwortlich (/etc/my.cnf oder /etc/mysql/my.cnf):
bind-address = 127.0.0.1

Mit „bind-address = 192.168.200.1“ kann der Server zB. auch konfiguriert werden, so dass er nur über eine bestimmte IP Adresse verfügbar ist.

Das wäre auch in diesem Fall anzuraten, damit nur der zweite Server auf den Datenbankserver zugreifen kann. Der Datenbankserver wird daher in der Konfiguration so bestimmt wie man ihn haben möchte.

Der Port 3306 ist Standardmäßig immer offen, jedoch bestimmt am ende die Konfiguration des Datenbankservers wer darauf zugreifen darf. Ein Datenbankserver sollte nicht für alle öffentlich sein, da es ein Sicherheitsrisiko beinhaltet.

Bei solch einem Vorhaben kommt es auf die Last des Servers an, sonst macht es kein Sinn zwei Rootserver hierzu zu betreiben. Hier würde es auch ausreichen den Datenbankserver auf dem selben Server zu betreiben und diesen nur für die localhost IP festzulegen.
Ergänzung ()

In meinem Beitrag geht es um Linux-Servern, mit Windows-Servern kenne ich mich nicht aus. Wird aber auch so ähnlich sein.
 
Zuletzt bearbeitet:
Die Tips sind auch unter Windows Umgebungen gültig und die Standardkonfiguration des MS SQL Server ist auch, dass nur localhost Zugriff hat, solang nicht Explizit Anderes eingestellt wird.

Sinnvoll ist es auf jeden Fall den externen Zugriff mindestens auf die IP-Adresse des Webservers zu begrenzen. Schöner wäre natürlich ein VPN bzw. vergleichbare Lösungen, die den Traffic verschlüsselt tunneln können. Wobei dann jede Anfrage die nicht über diesen Tunnel kommt nicht beantwortet wird, daher der DB-Server auch bei Portscans schlicht nicht antwortet. Kostet ein wenig Leistung, sollte es aber wert sein.

Analog Webserver, das Ding gehört genauso eingestellt, dass nach außen nur Port 80/443 für HTTP/HTTPS bzw. sonstige gewünschte Protokolle verfügbar sind. Verwaltende Aufgaben (z.B. via RDP) sollten nach Außen nicht zur Verfügung stehen sonder nur via getunneltem Netzwerk.

Und jetzt frag mich nicht, wie das mit Winmaschinen geht, ich weiß das es geht aber kann es selbst nur für Pinguinkisten. :)
 
Einen Datenbankserver, egal welchen, direkt ans Internet zu hängen ist immer ein Rezept für ein größtmögliches Disaster.
Der muss abgesichert werden, z.B. über VPN wenn wirklich nur via Internet eine Verbindung geht (das ist ultralahm, auch ohne VPN), mind via Paketfilter wenn beide im gleichen Rack stecken.

Der Webserver hat 1 (oder auch 2 bei https) Ports offen, der Datenbankserver typischerweise auch 1 Port. Mehr Ports werden da nicht freigegeben, schon gar nicht Ports für den Datenbankserver bei beiden.
 
Nachtrag: Das Ändern von Ports wie in Post #1 erwähnt ist Voodoo und nichts Anderes. Portscan ist eins der ersten Dinge die jeder Volldepp bei einem Angriff versucht.
 
Zurück
Oben