Zugriff auf SMB Freigabe vom WAN aus
Hallo Admins,
ich muß mich heute mal wieder mit einem kleinen Problemchen an Euch wenden. Und zwar möchte ich eine Verbindung mit einer SMB freigabe hinter einer NAT Firewall herstellen.
Der Hintergrund ist folgender:
Auf einem Terminalserver, der vom Internet aus für unsere Kunden erreichbar ist, äuft ein Programm, welches Zugriff auf Daten in unserer Domäne benötigt. Der Terminalserver ist nun mit unserem Firmennetz über einen Router verbunden (Terminalserver hängt am WAN- Port) und ich müsste irgendwie Zugriff auf die SMB Freigabe bekommen auf der die benöigten Daten liegen. (Zur Info für die, die sich mit Tomato auskennen: Tomato läuft auf meinem inksys Router und würde mir ein mounten der entsprechenden Freigabe gestatten. Also ein Zugriff auf die in Tomato gemountete SMB Freigabe von der WAN Seite aus würde mir auch helfen.)
Nun habe ich es mit einer Weiterleitung des Ports 445 auf den entsprechenden Server in unserem Netz versucht aber es tut nicht. Bei der Syntax zum Verbinden bin ich mir auch nicht sicher, deswegen gebe ich euch mal an wie ich das versucht habe. Vielleicht liegt der Fehler ja auch hier begraben. Also, ich benutzte: net use X: \\Router-WAN-IP\Freigabename-des-SMB ist das so richtig?
SMB ist auf den Firewalls beider Server freigegeben.
Leider finde ich so gut wie keine Infos darüber im Netz. entweder ich benutze die falschen Suchbegriffe oder mein Plan ist so ungewöhnlich. Ich weiß es auch nicht.
Natürlich bin ich auch für alternative Vorschläge offen. Ich habe auch schon daran gedacht, das in der Form von WebDAV zu machen aber ich habe mich damit bis jetzt noch gar nicht beschäftigt, da ich, sollte nichts dagegen sprechen, die SMB- Verbindung vorziehen würde.
Ich freue mich auf Eure Antworten und bedanke mich schon einmal im Voraus dafür, dass Ihr Euch Gedanken macht.
Viele Grüße
Enriqe
ich muß mich heute mal wieder mit einem kleinen Problemchen an Euch wenden. Und zwar möchte ich eine Verbindung mit einer SMB freigabe hinter einer NAT Firewall herstellen.
Der Hintergrund ist folgender:
Auf einem Terminalserver, der vom Internet aus für unsere Kunden erreichbar ist, äuft ein Programm, welches Zugriff auf Daten in unserer Domäne benötigt. Der Terminalserver ist nun mit unserem Firmennetz über einen Router verbunden (Terminalserver hängt am WAN- Port) und ich müsste irgendwie Zugriff auf die SMB Freigabe bekommen auf der die benöigten Daten liegen. (Zur Info für die, die sich mit Tomato auskennen: Tomato läuft auf meinem inksys Router und würde mir ein mounten der entsprechenden Freigabe gestatten. Also ein Zugriff auf die in Tomato gemountete SMB Freigabe von der WAN Seite aus würde mir auch helfen.)
Nun habe ich es mit einer Weiterleitung des Ports 445 auf den entsprechenden Server in unserem Netz versucht aber es tut nicht. Bei der Syntax zum Verbinden bin ich mir auch nicht sicher, deswegen gebe ich euch mal an wie ich das versucht habe. Vielleicht liegt der Fehler ja auch hier begraben. Also, ich benutzte: net use X: \\Router-WAN-IP\Freigabename-des-SMB ist das so richtig?
SMB ist auf den Firewalls beider Server freigegeben.
Leider finde ich so gut wie keine Infos darüber im Netz. entweder ich benutze die falschen Suchbegriffe oder mein Plan ist so ungewöhnlich. Ich weiß es auch nicht.
Natürlich bin ich auch für alternative Vorschläge offen. Ich habe auch schon daran gedacht, das in der Form von WebDAV zu machen aber ich habe mich damit bis jetzt noch gar nicht beschäftigt, da ich, sollte nichts dagegen sprechen, die SMB- Verbindung vorziehen würde.
Ich freue mich auf Eure Antworten und bedanke mich schon einmal im Voraus dafür, dass Ihr Euch Gedanken macht.
Viele Grüße
Enriqe
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 171166
Url: https://administrator.de/contentid/171166
Ausgedruckt am: 24.11.2024 um 12:11 Uhr
10 Kommentare
Neuester Kommentar
du hast doch den port 445 umgeleitet. da brauchst du nur "wan-ip:445" in den browser eingeben.
Nein, das ist Unsinn, denn SMB/CIFS benutzt ja den Port TCP 445 per Standard im Filesharing also muss er den auch nicht explizit angeben !
Die Syntax mit dem net use Kommando ist also schon richtig so. Auch die WAN IP des Routers, denn der leitet diese Anfrage ja per Port Forwarding weiter, ist folglich also virtuell ja das Ziel.
Vermutlich benötigt der Server aber noch ein paar mehr Ports. Oder, was noch wahrscheinlicher ist das wie immer die Firewall nicht angepasst ist um SMB Zugriffe aus fremden IP Netzen zuzulassen. Normalerweise blocken die alles ab was nicht vom lokalen Netz kommt da solltest du also nochmal auf Nummer sicher gehen um das ganz sicher ausschliessen zu können.
Ansonsten gehe wie immer strategisch vor:
Lad dir den MS NetMonitor oder den Wireshark Sniffer auf den Server und baue erst einmal lokal eine SMB Verbindung von einem Client mit dem Server auf. Sniffer diesen Verbindungsaufbau mit und sehe dir genau an welche Ports der Server benötigt.
Danach machst du das gleiche mit der Port Forwarding Einstellung über deinem NAT Router. Das hat den Vorteil das du überhaupt erstmal sehen kannst ob die geforwardeten TCP 445 Pakete vom Router bzw. Client überhaupt generell am Server ankommen oder ob da schon ein Problem ist.
Ggf. besserst du dann mit den zu forwardenden Ports nach.
Generell ist es immer sinnvoller den Router statt im NAT Modus im transparenten Routing zu betreiben. Dann hast du diese Problematik mit Port Forwarding gar nicht erst.
Wenn der Linksys mit DD-WRT betrieben würde dann ist das mit einem Mausklick ganz simpel abschaltbar wie du hier an diesem Beispiel sehen kannst:
Mit einem WLAN zwei LAN IP Netzwerke verbinden
Router Modus statt des Gateway Modus der NAT macht.
Ob das bei "Tomato" auch so konfigurierter ist musst du nachsehen. Bei DD-WRT ist es kein Problem. Zur Not kannst du den Router halt schnell umflashen. DD-WRT bietet eh ein paar mehr Features als Tomato.
Die Syntax mit dem net use Kommando ist also schon richtig so. Auch die WAN IP des Routers, denn der leitet diese Anfrage ja per Port Forwarding weiter, ist folglich also virtuell ja das Ziel.
Vermutlich benötigt der Server aber noch ein paar mehr Ports. Oder, was noch wahrscheinlicher ist das wie immer die Firewall nicht angepasst ist um SMB Zugriffe aus fremden IP Netzen zuzulassen. Normalerweise blocken die alles ab was nicht vom lokalen Netz kommt da solltest du also nochmal auf Nummer sicher gehen um das ganz sicher ausschliessen zu können.
Ansonsten gehe wie immer strategisch vor:
Lad dir den MS NetMonitor oder den Wireshark Sniffer auf den Server und baue erst einmal lokal eine SMB Verbindung von einem Client mit dem Server auf. Sniffer diesen Verbindungsaufbau mit und sehe dir genau an welche Ports der Server benötigt.
Danach machst du das gleiche mit der Port Forwarding Einstellung über deinem NAT Router. Das hat den Vorteil das du überhaupt erstmal sehen kannst ob die geforwardeten TCP 445 Pakete vom Router bzw. Client überhaupt generell am Server ankommen oder ob da schon ein Problem ist.
Ggf. besserst du dann mit den zu forwardenden Ports nach.
Generell ist es immer sinnvoller den Router statt im NAT Modus im transparenten Routing zu betreiben. Dann hast du diese Problematik mit Port Forwarding gar nicht erst.
Wenn der Linksys mit DD-WRT betrieben würde dann ist das mit einem Mausklick ganz simpel abschaltbar wie du hier an diesem Beispiel sehen kannst:
Mit einem WLAN zwei LAN IP Netzwerke verbinden
Router Modus statt des Gateway Modus der NAT macht.
Ob das bei "Tomato" auch so konfigurierter ist musst du nachsehen. Bei DD-WRT ist es kein Problem. Zur Not kannst du den Router halt schnell umflashen. DD-WRT bietet eh ein paar mehr Features als Tomato.
Hi !
Soweit ich mich gerade erinnern kann, geht das bei "Tomato" auch. Siehe unter: Advanced -> Routing -> Misc.
mrtux
Zitat von @aqui:
Ob das bei "Tomato" auch so konfigurierter ist musst du nachsehen. Bei DD-WRT ist es kein Problem. Zur Not kannst du
Ob das bei "Tomato" auch so konfigurierter ist musst du nachsehen. Bei DD-WRT ist es kein Problem. Zur Not kannst du
Soweit ich mich gerade erinnern kann, geht das bei "Tomato" auch. Siehe unter: Advanced -> Routing -> Misc.
mrtux
Im transparenten Modus gibt es doch gar kein NAT mehr da ist NAT ja deaktiviert, folglich ist dann auch ein Port Forwarding unsinnig und überflüssig, denn das braucht man ja einzig und allein nur um eine NAT Firewall überwinden zu können !
Im transparenten Modus kannst du gar kein Port Forwarding mehr benutzen bzw. ist das dann sinnigerweise inaktiv !
Es kann dann in der Tat nur noch an einer lokalen Firewall der Rechner selber liegen. Der Sniffer Trace wird dir das dann auch sofort zeigen !
Im transparenten Modus kannst du gar kein Port Forwarding mehr benutzen bzw. ist das dann sinnigerweise inaktiv !
Es kann dann in der Tat nur noch an einer lokalen Firewall der Rechner selber liegen. Der Sniffer Trace wird dir das dann auch sofort zeigen !
Port Forwarding muss im Router natürlich zwingend entfernt werden wenn dieser im Router Modus arbeitet, denn dann routet er transparent OHNE eine NAT Firewall. PFW ist damit dann logischerweise unsinnig.
Ein Testaufbau mit einem DD-WRT finktioniert hier im Router Modus einwandfrei und eine SMB/CIFS Verbindung über ihn ist mit Windows OS und Mac OS-X sowohl auf ein NAS als auch auf einen Win 2003 Server absolut problemlos möglich. Es liegt also de facto NICHT am DD-WRT.
Mit an Sicherheit grenzender Wahrscheinlichkeit rennst du wie immer in ein Firewall Problem !!
Bedenke bitte das du im Router Modus durch das fehlende NAT nun eine Absender IP aus dem Client Netz hast. Die lokale Firewall am Zielsystem blockoert also solche pakete und verhindert den Zugriff.
Du musst diese zwingend für SMB Zugriffe customizen, das das IP Netzwerk des Clients erlaubt ist (Bereich) oder eben mit "alle Computer inklusive Internet" die Scheunentor Regel in der Firewall aktivieren !
2ter Fehler ist das du vermutlich falsche Routen gesetzt hast !
Im "Router Modus" auf dem DD-WRT MUSS ein Ping zwischen Client und Ziel und auch andersrum zwischen Ziel und Clietn sauber möglich sein ! Auch das solltest du vorher sicherstellen !!
Ein Testaufbau mit einem DD-WRT finktioniert hier im Router Modus einwandfrei und eine SMB/CIFS Verbindung über ihn ist mit Windows OS und Mac OS-X sowohl auf ein NAS als auch auf einen Win 2003 Server absolut problemlos möglich. Es liegt also de facto NICHT am DD-WRT.
Mit an Sicherheit grenzender Wahrscheinlichkeit rennst du wie immer in ein Firewall Problem !!
Bedenke bitte das du im Router Modus durch das fehlende NAT nun eine Absender IP aus dem Client Netz hast. Die lokale Firewall am Zielsystem blockoert also solche pakete und verhindert den Zugriff.
Du musst diese zwingend für SMB Zugriffe customizen, das das IP Netzwerk des Clients erlaubt ist (Bereich) oder eben mit "alle Computer inklusive Internet" die Scheunentor Regel in der Firewall aktivieren !
2ter Fehler ist das du vermutlich falsche Routen gesetzt hast !
Im "Router Modus" auf dem DD-WRT MUSS ein Ping zwischen Client und Ziel und auch andersrum zwischen Ziel und Clietn sauber möglich sein ! Auch das solltest du vorher sicherstellen !!
Ja, das ist natürlich Blödsinn mit der Wegespeicherung im IP Header das hast du ja mitlwerweile selber eingesehen. Ggf. also besser nochmal das hier lesen:
http://de.wikipedia.org/wiki/Routing
damit du es versehst. Im IP Header steht immer nur Quell- und Zielnetzwerk und die Router im Wegepfad lesen das und entscheiden anhand ihrer eigenen Routingtabelle auf welchem Port sie dieses Paket weiterleiten !
Dein "kleines" Problem kann man ganz einfach in 1 Minute lösen indem du auf dem Router eine Default Route zu deinem Internet Router einträgt...fertig.
Dann werden Pakete die nicht für die lokalen Netze sind dahin weitergeleitet und alles rennt wie es soll !
Leider ist dein Design nicht ganz klar, da du oben etwas oberflächlich in der Beschreibung bist. Ein sinnvolles Design wo der TS für die Kunden vom Firmennetz sicher abgetrennt ist sähe dann aber so aus:
Die Lösung ist dann aber kinderleicht:
http://de.wikipedia.org/wiki/Routing
damit du es versehst. Im IP Header steht immer nur Quell- und Zielnetzwerk und die Router im Wegepfad lesen das und entscheiden anhand ihrer eigenen Routingtabelle auf welchem Port sie dieses Paket weiterleiten !
Dein "kleines" Problem kann man ganz einfach in 1 Minute lösen indem du auf dem Router eine Default Route zu deinem Internet Router einträgt...fertig.
Dann werden Pakete die nicht für die lokalen Netze sind dahin weitergeleitet und alles rennt wie es soll !
Leider ist dein Design nicht ganz klar, da du oben etwas oberflächlich in der Beschreibung bist. Ein sinnvolles Design wo der TS für die Kunden vom Firmennetz sicher abgetrennt ist sähe dann aber so aus:
Die Lösung ist dann aber kinderleicht:
- Default Route am Tomato / DD-WRT auf den Internet Router
- Statische Route ins Firmennetz auf dem Internet Router