1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. In diesem Bereich findet ihr Tutorials und Reviews. Die Forenrechte zur Erstellung neuer Themen sind hier eingeschränkt, da Problemdiskussionen bitte in den übrigen Forenbereichen auf Apfeltalk zu führen sind. Wer ein Tutorial oder Review einstellen möchte, kann im Unterforum "Einreichung neuer Tutorials" ein neues Thema erstellen. Die Moderatoren verschieben den Beitrag dann in den passenden Bereich.
    Information ausblenden
  3. Unsere jährliche Weihnachts-Banner-Aktion hat begonnen! Wir freuen uns auf viele, viele kreative Vorschläge.
    Mehr dazu könnt Ihr hier nachlesen: Weihnachtsbanner 2016

    Information ausblenden

Sichere Verbindung bei offenem Hotspot/Zensurumgehung

Dieses Thema im Forum "Software-Tutorials" wurde erstellt von zeno, 10.09.07.

  1. zeno

    zeno Lane's Prinz Albert

    Dabei seit:
    05.11.05
    Beiträge:
    4.898
    Ich habs in einem anderem Thread schon beschrieben, aber ich denke das Thema ist recht komplex, das verdient einen eigenen.

    Unsere Ausgangsposition

    • Wir surfen auf einem offenem Hotspot und wollen nicht das HinzundKunz unsere Daten abhören.
    • Wir gehen in einem Land online was unseren Internetzugang zensiert
    • Wir haben eine UMTS Flatrate, aber unser Provider rechnet alle Bilder in ein gruseliges Format runter.

    Unser Lösungsweg

    Wir schicken unseren Datenverkehr durch einen sicheren Tunnel über einen SSH Server und können wohin surfen wo wir wollen, können nicht so leicht vom Tischnachbarn mit der dunklen Sonnenbrille abgehört werden, sehen endlich wieder Bilder ohne raten zu müssen was wir eigentlich sehen.
    ABER: Wir wollen nur die lokalen Sachen umgehen, bis zur unsererem SSH Server wird alles verschüsselt laufen, aber ab dort, werden alle Anfragen wieder unverschlüsselt (ausser die verschlüsselten natürlich ;)) durchs Web gejagt.

    Voraussetzung

    Voraussetzung ist das ihr auf irgend einen Server SSH Zugriff habt ein VServer mit Shellzugriff oder ein eigener dedizierter Server.
    Es gibt im Internet auch ein paar Anbieter bei denen ihr so etwas umsonst kriegt.*
    ABER: Nicht einfach losziehen und sich denken, das isses das mag ich haben ich hol mir jetzt nen VServer, die kosten ja nichts mehr. Das solltet ihr ohne euch vorher in Linux/UNIX eingearbeitet zu haben nicht machen, so ein VServer will auch mit Updates versorgt werden - nicht das er euch nach ner Zeit als Spamschleuder interessante Viagraangebote unterbreiten wird.

    Und los gehts

    Erstmal ab ins Terminal und folgenden Befehl eingeben:

    Code:
    ssh -N -q -T -f -D 7070 meinuser@meinvserver.bla
    Das öffnen einen SSH Tunnel zu deinem Server. Wenn dein SSH Server auf nem anderem Port liegt, dann noch -p12345 anhängen, oder wie auch immer die Portnummer ist.

    Wenn der Befehl abgesetzt ist fragt ssh wie gewohnt nach eurem Passwort und verschwindet dann in den Hintergrund.

    Dann noch kurz zu dem ganzen Befehl:

    • -N sagt ssh das wir keinen Remote Befehl ausführen wollen, wir wollen ja nur ein paar Pakete weiterleiten
    • -q sagt ssh das es ruhig sein soll und uns nicht mit irgendwelchen Informationen volltexten soll
    • -T pseudo tty brauchen wir auch nicht
    • -f schickt ssh in den Hintergrund, wir brauchens ja nicht mehr zur direkten Eingabe
    • -D 7070 sorgt dafür das wir nen Port bei uns auf dem Rechner öffnen den wir ansprechen können.

    Da das jetzt das erste mal ist wo wir das ausprobieren schauen wir mal schnell ob alles geklappt hat.

    Code:
    zeno $ ps x | grep ssh
    Als Resultat sollten wir folgendes in der Art kriegen:

    Code:
     1865  ??  Ss     0:00.00 ssh -N -q -T -f -D 7070
     1875  p2  S+     0:00.01 grep ssh
    
    Okay, wir sehen ssh läuft im Hintergrund und lauscht auf unsere Anfragen.

    Wenn wider erwarten etwas schief gegangen ist, also nichts angezeigt worden ist oder wir nicht mal nach dem Passwort gefragt wurden nehmen wir den -q Parameter raus und versuchen es noch einmal. Spätestens jetzt sollten wir Informationen kriegen die uns sagen warum etwas nicht geklappt hat.

    Mir reicht der Tunnel im Firefox

    Jetzt kommt der spannende Teil, wir starten mal den Firefox und gehen zu den Einstellungen -> Erweitert -> Netzwerk -> Einstellungen.
    Da tragen wir jetzt bei SOCKS-Host localhost ein und bei Port 7070, dann bestätigen wir das mit OK und gehen raus aus den Einstellugen.
    Das sollte dann so aussehen:

    [​IMG]

    Um zu verhindern das Firefox DNS Abfragen über die "normale" Verbindung macht tippen wir in die Adresszeile about:config ein. Dann geben wir bei Filter network.proxy ein und machen dann einen Doppeklick auf network.proxy.socks_remote_dns. Sollte dann folgendermaßen aussehen:

    [​IMG]

    Jetzt versuchen wir mal eine gesperrte Seite anzusurfen und hoffen das alles geklappt hat. ;)

    Ich will das volle Programm

    Firefox zum sicheren surfen ist ja ganz nett, aber was ist mit unseren ICQ Gesprächen oder wir mögen Firefox einfach nicht und benutzten lieber Safari? Okay, dann gehen wir mal in die Systemeinstellungen in die Sparte Netzwerk.
    Da kann man auch bei Proxies einen Socks Proxy einrichten, das sollte dann so aussehen:
    [​IMG]

    Gegenfalls kann/muss man bei jedem Programm nachsehen ob eine eigene Konfiguration für Proxies anbietet oder auf die vom System zurückgreift.

    Abkürzung für die leichte Wiederverwendung

    Damit wir nicht jedesmal den ganzen Befehl mit ssh -N etc etc eingeben müssen, da sich ja eh nichts ändert und wir auch ein wenig bequem sind machen wir jetzt folgendes:
    Code:
    echo "alias sshtunnel='ssh -N -q -T -f -D 7070 meinuser@meinvserver.bla'" >> ~/.bash_profile
    Damit haben wir uns einen Alias für den Befehl angelegt, beim nächsten Terminalstart reicht uns ein ssht{tab} und Enter und wir werden nach unserem Passwort gefragt und die Sache läuft.

    Wenn du die default Shell von Bash auf irgend eine andere geändert hast muss der Spaß evtl. in die .profile oder wie auch immer gepumpt werden, aber das wirst du ja dann selbst wissen. ;)

    Probleme die auf uns zukommen könnten
    • Unser Server ist vom Zugangsanbieter geblockt
    • Der Zugangsanbieter verbietet den Zugriff auf den SSH Port (Das können wir auf einem eigenem VServer/Server noch leicht lösen durch das umlegen des Ports, aber das ist halt schwer wenn man keinen Zugriff auf den Server hat ;))
    • Unsere Shell ist tausende Kilometer weit weg - Man muss bedenken das alle Verbindungen erstmal zu der Shell laufen und von da aus erfolgt die eigentliche Verbindung, auch wenn der Server von dem wir was wollen vielleicht in der gleichen Stadt steht. Das kostet Zeit und ist evtl. unangenehm spürbar.
    • Unsere kostenlose Shell ist nicht nur weit weg, sondern auch noch total überlastet und zieht unsere Verbindung noch weiter runter.
    • Unser Chef kriegt raus das wir den Firmenproxy umgehen und mahnt uns ab - Immer abwägen ob es nötig ist ;)

    Programmhinweis
    Und in der nächsten Folge bauen wir uns noch eine Public Key Authentication und sparen uns das Passwort. Bis dahin.. macht was schönes.. pflanzt Blümchen, verbietet auf euren SSH Servern den root Login, oder ähnliches ;)

    * http://www.red-pill.eu/freeunix.shtml - Hier ist eine Liste mit kostenlosen Shell Account Anbietern. Oder einfach nach free shell account suchen.
     
    #1 zeno, 10.09.07
    Zuletzt bearbeitet: 10.09.07
    Sigur, Crunshinut, pete99 und 2 anderen gefällt das.
  2. pete99

    pete99 Pomme au Mors

    Dabei seit:
    21.06.05
    Beiträge:
    874
    Nach so einem Tutorial hab ich schon lange gesucht! Wenn ich zu Hause bin probier ichs gleich aus. Sieht einfach aus.

    VIELEN DANK!!!

    Peter
     
  3. philz

    philz Strauwalds neue Goldparmäne

    Dabei seit:
    28.04.06
    Beiträge:
    637
    Schön, dass sich jemand die Mühe macht und zu diesem Thema eine Anleitung schreibt.

    Kennt denn jemand einen vertrauenswürdigen Shell-Anbieter mit min. 10 MBit/s? ;)
     
  4. aureus

    aureus Allington Pepping

    Dabei seit:
    14.08.05
    Beiträge:
    192
    Danke für dein Tutorial. Das ist in meinen Augen definitiv die einfachste Lösung, der Server ist ja sowieso da.
     
  5. phueghy

    phueghy Jamba

    Dabei seit:
    25.07.07
    Beiträge:
    56
    Hi,

    vielleicht noch erwähnenswert (insbesondere bei Verbindungen aus öffentlichen Hotspots, auf die diese Anleitung ja abzielt):

    beim Verbinden immer brav die Keys überprüfen. Sollte der SSH-Client melden, dass der Host-Key sich geändert hat, kann es sein, dass der "böse Tischnachbar" nicht nur lauscht, sondern aktiv dazwischenfunkt. Wer dann ohne nachzudenken sein Passwort eingibt, kann nicht blos abgehört werden, sondern der Account auf dem SSH-Server ist auch kompromittiert.

    Just my 2cts.

    Viele Grüße, phueghy
     

Diese Seite empfehlen