Ein Tunnel nach Hause

Status
Für weitere Antworten geschlossen.

Megahorst

Benutzer
Mitglied seit
10. Sep 2008
Beiträge
56
Punkte für Reaktionen
0
Punkte
6
Erstmal vorab: Ich bin kein IT-Profi mehr (und auch kein Germanist ;) ), daher wird einiges, das in den folgenden Zeilen zu lesen ist evtl. nicht so ganz korrekt sein. Ich habe vieles gelesen, rumgefragt, ein bisschen gebastelt und mich an die Lösung herangetastet. Ich hoffe, dass ich hier keine Schritte vergesse.
Wir können das Beschriebene ja in der nächsten Zeit hier im Forum diskutieren und ergänzen. Wenn das Ganze rund ist, kann man evtl. einen Wiki-Artikel daraus machen.

Viele haben das Problem, dass sie aus dem gesicherten Firmennetzwerk heraus nicht auf die Netzwerkinfrastruktur Zuhause zugreifen können oder dass sie nicht sicher sind, dass die Verbindung in der Firma irgendwie belauscht wird. Private Internetaktivitäten im Firmennetzwerk sind nie so ganz privat ohne besondere Vorkehrungen.

Ziel dieses Artikels ist es, eine Möglichkeit zu beschreiben, von außen auf das Heimnetzwerk und die DS zuzugreifen, die auch aus einem durch Firewalls und Proxys gesicherten Firmennetzwerk funktioniert und den Firmenadministrator nicht an den Surfsessions der Mittagspause teilhaben zu lassen.

Ist das ganze denn sicher?
Ich denke schon. Aber dass können wir ja hier diskutieren.

Verstoße ich damit nicht gegen die EDV-Richtlinien meiner Firma?
Vermutlich schon, aber was wäre ein Leben ohne Risiko ;-)

Was braucht man
In der Firma
• Einen offenen USB-Port am Rechner
• Einen USB-Stick mit Portable-Apps. Infos hierzu gibt es unter folgender Adresse: www.portableapps.com
Folgende Applikationen müssen mind. Auf dem Stick sein: Putty, Firefox
• Ein beliebiger Port, der einen ins Internet führt. Wenn man die Photostation der DS aus dem Internet heraus benutzen möchte, sollte es nicht Port 80 sein.
ich habe mich für Port 443 entschieden, da alle meine Kontakte über http (nicht https) auf die Photostation zugreifen.
Zuhause:
• Eine DS, die auf dem gerade erwähnten Port aus dem Internet erreichbar ist. Dyndns ect. Sollte also schon funktionieren.
Port 5000, 5001 usw. können geschlossen bleiben
• Eine funktionierende IPKG-Installation auf der Station
• Die Möglichkeit einige Konfigurationsfiles auf der Box zu editieren.
Wie man diese Voraussetzungen schafft, ist in vielen Artikeln hier im Forum und im Wiki nachzulesen.

Jetzt geht es los
1 SSH in der DS aktivieren
Das wird benötigt um einen ssh-Tunnel auf der DS terminieren zu können. In diesem verschlüsselten Tunnel laufen später die ganzen Verbindungen, ohne dass jemand hineinschauen kann.
2 Der kompliziertest Teil: Installation und Konfiguration von squid
Squid ist ein Proxyserver. Über diesen und den ssh-tunnel laufen anschließend die Verbindungen ins Internet.
Hier kommen wir auch zu einem Nachteil der Lösung: Alle Internetverbindungen, die ich über den Tunnel aufbaue laufen 2-mal über meine private Breitband¬anbindung Zuhause. Einmal lädt der Proxy meine Anforderungen im Downstream der Anbindung und einmal schickt er sie mir im Upstream an das andere Ende des Tunnels. Die schmalbandige Upstreamverbindung begrenzt mir also meine Bandbreite ins Internet.
Aber wir wollten den Squid ja erstmal installieren:

Das funktioniert mit:
Rich (BBCode):
ipkg install squid
Jetzt muss der Squid seine Verzeichnisse anlegen. Hierzu folgendes eingeben:
Rich (BBCode):
squid -z

Dann die Konfiguration des Proxys. Hierzu muss die Datei
Rich (BBCode):
/opt/etc/squid/squid.conf
angepasst werden

Hier kann man ziemlich viel anstellen. Für diese Anleitung beschränke ich mich auf die minimalst nötige Konfiguration

Folgenden Bereich in der Datei suchen und entsprechend anpassen:

Rich (BBCode):
#  TAG: visible_hostname
#	If you want to present a special hostname in error messages, etc,
#	will be used. If you have multiple caches in a cluster and
#	get errors about IP-forwarding you must set them to have individual
#	names with this setting.
#
#Default:
# none
visible_hostname <EureDyndnsAdresse>

und dann noch folgenden:

Rich (BBCode):
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports

# für Zugriff über Tunnel
http_access allow all

Hier kann ruhig allow all stehen. Squid lauscht auf Port 3128. Dieser ist nur aus dem lokalen Netzwerk und über den Tunnel erreichbar.
An dieser Stelle habe ich die Box neugestartet. Der Proxy lief anschließend automatisch. Überprüfen kann man das mit
Rich (BBCode):
ps –ef | grep squid

3 Einstellung des ssh-Ports auf der DS und Weiterleitung des Ports im Router zuhause

Hier gibt es mehrere Möglichkeiten.
Die leichteste:
Port 22 ist im Firmennetz freigeschaltet. Dann einfach den Port im Router zuhause auf die private Adresse der DS weiterleiten.
Nachteil: Hacker versuchen es als erstes auf den Standartports. Also immer schön die Logfiles kontrollieren
Die zweitleichteste:
Der Router kann bei einer Portweiterleitung den ankommenden Port auf einen anderen Port modifizieren. Dann den Beispielport 443 auf 22 umsetzen lassen und auf die private Adresse der DS weiterleiten. (so habe ich es gemacht)
Die etwas komplexere
In der
Rich (BBCode):
/etc/ssh/sshd_config
den Port ändern, auf den der sshd lauscht. Hierzu vor dem Eintrag
Rich (BBCode):
#Port 22
das # entfernen und die Portnummer editieren. Hiernach muss man sicherlich den sshd oder die DS neu starten. Das musste ich nicht machen. Ich gehe aber davon aus, dass dann ein anderer Port als 443 gewählt werden muss, da auf diesem auch der Webserver lauscht.
Diesen Port muss man dann natürlich auch im Router auf die private Adresse der DS weiterleiten.
Hier kann man auch einstellen, dass ein login mit Passwort nicht mehr möglich ist, sondern ein Schlüsselaustauschverfahren zwingend ist. Das ist vermutlich die sicherste Variante. Das disabling des Passwortlogins funktioniert natürlich auch bei Methode 2.


4 Einstellungen in Putty

Ich gehe hier nur auf die relevanten Einstellungsseiten ein. Wenn ich ein Konfigurationselement nicht erwähne, kann das auf dem default-Wert bleiben
Seite Session:
Hostname: Die Dyndns-Adresse der DS
Port: Der gewählte Port (bei mir 443)
Connectiontype: SSH
Seite Connection/Data:
Auto-login username: root (Hier geht sicher auch ein anderer User)
Seite Connection/ssh/Auth:
Hier sollte der öffentliche Schlüssel für die Verbindung hinterlegt werden, wenn man es ganz sicher haben möchte. Ich lasse das mit den Schlüsseln hier aber erstmal weg, damit es nicht zu kompliziert wird. Ich kann das aber bei Gelegenheit aber mal nachreichen
Seite Connection/ssh/Tunnels:
Hier legt man fest, welche Ports man vom lokalen Rechner auf die andere Seite des Tunnels durchreichen möchte.
Für den Squid brauchen wir den Port 3128
Hierzu im Feld Sourceport 3128 eingeben und im Feld Destination das andere Ende des Tunnels. Dieses besteht aus der Adresse der DS im Heimnetzwerk (die private Adresse, nicht die öffentliche !!! Bei mir zB. 192.168.1.2) und dem Zielport., der auch 3128 lauten muss.
Man gibt also bspw. ein:
192.168.1.2:3128
und klickt auf Add

Jetzt geht es wieder zur Seite Session
Hier unter saved Sessions dem Ganzen einen Namen geben und anschließend mit save abspeichern.

5 Anpassungen im Firefox
Öffnen des Dialoges Extras/Einstellungen/Netzwerk
Verbindung/Einstellungen… wählen
Manuelle Proxykonfiguration wählen
http-proxy localhost Port: 3128
Erläuterung hierzu: Durch den Tunnel wird der Port 3128 auf die DS weitergeleitet. Da auf dieser der Squid läuft, muss hier localhost stehen.
6 Ausprobieren
Am besten von einem anderen Internetanschluss aus, als zuhause. Viele Router lassen das viele rein und Raus nicht zu.
1. Starten von putty und öffnen der gespeicherten Verbindung
2. Starten von Firefox
3. Öffnen des Synomanagers über die Private Adresse (bei mir 192.168.1.3:5000)
7 Fertig
Durch den Proxyeintrag im Firefox surfe ich jetzt so, als wäre ich in meinem Netz zuhause. Ich kann meine Netzwerkinfrastruktur auch über ihre lokalen Adressen ansprechen. Die Verbindung von meinem Heimnetzwerk ins Firmennetz ist im Tunnel verschlüsselt und kann nicht eingesehen werden.
 

linuxdep

Benutzer
Mitglied seit
02. Jan 2009
Beiträge
584
Punkte für Reaktionen
11
Punkte
38
schön, wenn bei dir der ssh port ins Internet geht... der sollte eigentlich richtigerweise auch geschlossen sein... wie auch das tunneln von ssh über http. Aber anscheinend ist das nicht in jeder Firma der Fall :rolleyes:

trotzdem viel spaß bei denen, wo es geht :cool:
 

Kleinpetri

Benutzer
Mitglied seit
06. Mrz 2009
Beiträge
19
Punkte für Reaktionen
0
Punkte
0
Vorsicht! Das kann ein Grund für eine fristlose Kündigung sein!

Es ist zwar in der Tat seltsam, wenn der SSH-Port offen ist, aber man kann ja auch über Port 443 tunneln.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Wieso überhaupt tunneln? Wieso nicht einfach am Router Port 443 auf Port 5001 weiterleiten? Der SSL Zugriff ist auch verschlüsselt und kann nicht belauscht werden. Bei mir als admin würde Port 22 in den Logs sicher auffallen, aber Port 443 ist Default und damit meist nicht verdächtig.
In einem vernüftig admininistrierten Netzwerk darf Port 22 ausgehend einfach nicht möglich sein! Normale Bürouser brauchen nicht mehr als Port 80, 443 und vielleicht noch ftp ins Web.
Und ja das Umgehen von Sicherheitsmassnahmen kann zu einer fristlosen Kündigung führen. Und wenn etwas passiert (Hacker, Virus) und durch deine Konstruktion erst möglich wurde, dann kann das schnell ganz teuer (geldmässig) werden.
Ich würde das Risiko abwägen: Die Umgehung kann in jedem Fall einen Fristlosen nachsichziehen. Die private Nutzung von Internet ist jedoch meist kein ausreichender Grund für die sofortige Vertragsauflösung (natürlich nur solange es in einem vernünftigen Rahmen geschieht).

Obiges soll keine Rechtsberatung sein, sondern spiegelt nur meine Erfahrungen mit Arbeitgebern und deren Vorschriften wieder. Auch solltet ihr beachten, dass so etwas bei uns in der Schweiz u.U. anders als in DE gehandelt wird.
 

-007-ß

Benutzer
Mitglied seit
27. Apr 2009
Beiträge
103
Punkte für Reaktionen
0
Punkte
0
[...]
Jetzt muss der Squid seine Verzeichnisse anlegen. Hierzu folgendes eingeben:
Rich (BBCode):
squid -z
[...]

Wird bei mir mit
DiskStation: ~ > squid -z
FATAL: Could not determine fully qualified hostname. Please set 'visible_hostname'

Squid Cache (Version 2.6.STABLE21): Terminated abnormally.
CPU Usage: 0.036 seconds = 0.016 user + 0.020 sys
Maximum Resident Size: 0 KB
Page faults with physical i/o: 0
Aborted (core dumped)
quittiert.
Wie kann ich das Problem lösen?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0

-007-ß

Benutzer
Mitglied seit
27. Apr 2009
Beiträge
103
Punkte für Reaktionen
0
Punkte
0
Hab's auch ohne hinbekommen. Ich hab einfach zuerst das config-file editiert und dann "squid -z" ausgeführt
 

shirocko

Benutzer
Mitglied seit
24. Okt 2008
Beiträge
178
Punkte für Reaktionen
11
Punkte
18
hi
also ich hab das mit dem aufbau des ssh tunnels etc hinbekommen nur baut der browser keien seite auf, sondern es kommt einfach nur ne weiße seite.
woran kann das liegen?
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Hey, das hört sich ja alles recht interessant an.
Nun ist es für mich teilweise noch neuland...

wie ist denn der genaue Datenweg dann?
--> Vom Firmenrechner raus auf die DDNS Port 443 des Routers zu haus.
https://www.Name.dnsuser.de:443

--> Vom Eingangsport 443 des Routers auf den Port 22 der DS

und wann oder wie kommt der Proxy, kann mir das mal einer erklären.
So Schritt für Schritt?
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Hey, das hört sich ja alles recht interessant an.
Nun ist es für mich teilweise noch neuland...

wie ist denn der genaue Datenweg dann?
--> Vom Firmenrechner raus auf die DDNS Port 443 des Routers zu haus.
https://www.Name.dnsuser.de:443

--> Vom Eingangsport 443 des Routers auf den Port 22 der DS

und wann oder wie kommt der Proxy, kann mir das mal einer erklären.
So Schritt für Schritt?

Schade das keiner geschrieben hat, habe micht jetzt selbst etwas
weiter durchgewühlt. Meine feststellung:

Portable FireFox greift durch den "SSH-Tunnel" der durch Putty erstellt
wird auf die DS zu und unsere DS ist durch das Programm Squid praktisch
ein Proxyserver?

Wäre super wenn das hier weiter diskutiert wird...
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Nun, immer noch keine Antwort :confused:
Ich konnte das beschriebene erfolgreich umsetzen.

kann über Putty und den modifizierten FF Portable
erfolgreich lokal auf Router und DS zugreifen.
Gibt es auch die möglichkeit auf netzwerkrecourcen
zuzugreifen von lokalen Clients die gerade online sind?
also über den Portable browser?

Und die Frage die mich immernoch am meisten interessiert
ist, wie die Daten jetzt genau fließen...
... ist meine DS der Proxy?
 

macrozone

Benutzer
Mitglied seit
03. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
0
so, habs auch hingekriegt, von der schule aus :D

Wieviele verbindungen kann man da gleichzeitig aufbauen?
hab mal meinen banknachbarn gebeten, es zu testen.
Allerdings komm ich jetzt nicht mehr auf die konsole über putty bei mir,
bei ihm ist der tunnel noch offen, aber die konsole ebenfalls abgestürzt...
hab dort exit eingegeben, aber die konsole ist noch immer offen und hängt
:confused:
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Und gleich die nächsten Fragen. Wie ich sehe funktioniert die Sache sehr
schön über den Browser wo der homeserver als Proxy eingestellt ist.
Nun die gezielten Fragen.

1. Kann ich den Tunnel auch für FTP (FileZilla) nutzen, wenn ja wie?
2. Wie funktioniert das mit dem in Post 1 angedeuteten öffentlichen Schlüssel (Seite Connection/ssh/Auth)?
3. Wie abhörsicher ist der ganze Spaß?
4. Wie kann ein Admin im Firmennetz eine Nutzung dieser Methode überhaupt bemerken.

Ich weiß das hier genug fähige Leute sind die mir all das beantworten können :D
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
4. Wie kann ein Admin im Firmennetz eine Nutzung dieser Methode überhaupt bemerken.

Schon mal Wireshark ausprobiert? Damit kannst du Ziel, Port, Quelle und Inhalt und noch einiges mehr von jedem Datenpaket im Netzwerk auslesen. Proxys sind da eher eine Routine-Übung da diese sich immer recht gleich sehen ... das herausfinden von unauthorisierten Zugriffen sowie die Erkennung von Schadsoftware im Netzwerk sind da schon größere Herausforderungen.

MfG Matthieu
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Schon mal Wireshark ausprobiert? Damit kannst du Ziel, Port, Quelle und Inhalt und noch einiges mehr von jedem Datenpaket im Netzwerk auslesen. Proxys sind da eher eine Routine-Übung da diese sich immer recht gleich sehen ... das herausfinden von unauthorisierten Zugriffen sowie die Erkennung von Schadsoftware im Netzwerk sind da schon größere Herausforderungen.

MfG Matthieu

Habe schon von Wire Shark gehört, heißt das der Admin kann den Datenverkehr
auf meinen Proxy nachvollziehen aber nicht analysieren?
Ich weiß ja praktisch das der Admin den Internetverkehr überwachen kann,
aber gerade dafür habe ich doch den SSH Tunnel eingerichtet.
So kann er überhaupt nicht nachvollziehen wo und was gesurft wurde oder?
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Nein. Aber wenn es gegen deinen Arbeitsvertrag verstößt ist das ein Grund für eine fristlose Kündigung. Ich wäre da sehr vorsichtig. Außerdem kann der Admin deine DS auf der Blacklist hinzufügen und somit wäre das ganze sinnlos.

MfG Matthieu
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Nein. Aber wenn es gegen deinen Arbeitsvertrag verstößt ist das ein Grund für eine fristlose Kündigung. Ich wäre da sehr vorsichtig. Außerdem kann der Admin deine DS auf der Blacklist hinzufügen und somit wäre das ganze sinnlos.

MfG Matthieu

Merkt das der Admin überhaupt wenn ich über Port 443 nach hause Tunnel?
Ich meine kann er da ne auffälligkeit zum "normalen" surfen erkennen?
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Ja. Am einfachsten lässt es sich so erkennen:
- Alle Pakete gehen zum selben Empfänger an die exakt selbe Adresse.
- Die Pakete sind allesamt verschlüsselt und ähneln sich sehr stark.
- Beim Aufruf der Adresse erhält man eine seltsame oder gar keine Internetseite.
- Nicht viele verwenden überhaupt Verschlüsselung für "normale" Seitenaufrufe.
- Und natürlich noch ein paar weitere Dinge.

Ich hoffe du weißt worauf du dich da einlässt.

MfG Matthieu
 

5n00py

Benutzer
Mitglied seit
31. Aug 2009
Beiträge
257
Punkte für Reaktionen
0
Punkte
16
Es ist mir schon bewusst das man bei der Sache ganz schön auf die Finger bekommen kann, ehrlich gesagt möchte ich es auch nicht in der Firma anwenden. Es macht mir einfach spaß die Funktion solcher Dinge auszuprobieren, auch wenn das jetzt blöd klingen mag. Ich habe es von einem anderen Inet Anschluss probiert und es funktioniert auch. Da ich mich für die genaue Funktion der Abläufe im IT Bereich interessiere nehme ich gerne jeden Versuch mit der irgendwo halbwegs plausibel erklärt ist, jedoch fehlt mir der Background manchmal ein wenig...

Verweise deshalb gerne nochmal auf meinen anderen Threadwo ich noch immer auf einen guten Tipp warte:

http://www.synology-forum.de/showthread.html?t=8042

Denn meine anderen Fragen hier sind leider noch unbeantwortet
 

macrozone

Benutzer
Mitglied seit
03. Aug 2007
Beiträge
58
Punkte für Reaktionen
0
Punkte
0
ich benutz es in der schule, um nicht so eingeschränkt zu sein :D und um auf den server zu hause zu kommen (port 5000 ist nämlich hier gesperrt),

zudem kann ich auch aufs netz, wenn das internet eigentlich gesperrt ist (hier nur proxy-mässig realisiert)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat