SOCKS-Proxy (OpenSSH): Unterschied zwischen den Versionen

Aus schokokeks.org Wiki
Zur Navigation springen Zur Suche springen
Christian (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:OpenSSH]]
OpenSSH erlaubt die Nutzung eines eingebauten Socks-Proxy. Das bedeutet, es wird ein SSH-Tunnel aufgebaut, der beliebigen Verkehr verschlüsselt bis zum Server transportiert und dort an die ursprüngliche Adresse weiterleitet.
Die aktuelle Version von OpenSSH erlaubt die Nutzung eines eingebauten Socks-Proxy. Das bedeutet, es wird ein SSH-Tunnel aufgebaut, der beliebigen Verkehr verschlüsselt bis zum Server transportiert und dort an die ursprüngliche Adresse weiterleitet.
 
== Warum ein SSH-Socks-Proxy? ==
== Warum ein SSH-Socks-Proxy? ==
Häufig, wenn man unterwegs ist, greift man über nicht vertrauenswürdige Netzwerke wie z.B. Internet-Cafe oder WLAN auf Dienste im Netz zu. In vielen Fällen kann jeder andere, der im selben Netzwerk ist, den Internet-Verkehr auf einfache Art mithören/-lesen.
Häufig, wenn man unterwegs ist, greift man über nicht vertrauenswürdige Netzwerke wie z.B. Internet-Cafe oder WLAN auf Dienste im Netz zu. In vielen Fällen kann jeder andere, der im selben Netzwerk ist, den Internet-Verkehr auf einfache Art mithören/-lesen.


Um Mails zu empfangen und zu versenden verwendet Schokokeks.org grundsätzlich eine verschlüsselte Verbindung, auch für Jabber und ICQ sind verschlüsselte Verbindungen möglich (SSL). Doch was ist mit dem Aufrufen von Internetseiten, die Verschlüsselung über SSL nicht unterstützen? Hier kommt nun der Socks-Proxy ins Spiel, der es ermöglicht, einen s.g. Tunnel aufzubauen, also allen Verkehr über einen sicheren Tunnel bis zur Gegenstelle zu übermitteln.
Um Mails zu empfangen und zu versenden verwendet schokokeks.org grundsätzlich eine verschlüsselte Verbindung, auch für Jabber und ICQ sind verschlüsselte Verbindungen möglich (SSL). Doch meistens nicht geschützt ist der Aufruf von (fremden) Internetseiten. Hier kommt nun der Socks-Proxy ins Spiel, der es ermöglicht, einen sogenannten Tunnel aufzubauen, also allen Verkehr über einen sicheren Tunnel bis zur Gegenstelle zu übermitteln.
 
Es gäbe die Möglichkeit dies über ein VPN (Virtual Private Network) zu tun, was aufgrund von Implementierungsproblem bisher nicht von Schokokeks.org unterstützt wird. Deshalb hier nun die Lösung via SSH.


Im Gegensatz zu einem VPN reicht hierbei ein normaler Benutzeraccount bei schokokeks.org aus und auf Client-Seite ist keine besondere Installation nötig.


==SSH Tunnel per OpenSSH==
==SSH Tunnel per OpenSSH==
In der Kommandozeile ausführen:
In der Kommandozeile ausführen:
  ssh -2 -N -l christian -D7070 schokokeks.org
 
  ssh -N -D7070 <username>@zucker.schokokeks.org
 
Die einzelnen Optionen:
Die einzelnen Optionen:
:-2 nur ssh2 verwenden
:-N kein Programm auf dem Server starten
:-N kein Programm auf dem Keks ausführen
:-D gibt den lokalen Port an, dieser ist variabel und kann von Ihnen bestimmt werden.
:-l der Benutzer mit dem auf den keks verbundden werden soll (Ihr Benutzername)
:<username> ist Ihr Benutzername und ''zucker.schokokeks.org'' ist der Server, auf dem sich Ihr Benutzerkonto befindet.
:-D gibt den lokalen Port an, der ist variabel und kann von Ihnen bestimmt werden.


Wenn Sie für den Keks [[SSH:Key-Login]] eingerichtet habt, können Sie die Option '''-f''' angeben, was dazu führt, dass <code>ssh</code> im Hintergrund läuft.
Wenn Sie [[Key-Login (OpenSSH)|SSH-Key-Login]] eingerichtet haben, können Sie die Option '''-f''' angeben, was dazu führt, dass <code>ssh</code> im Hintergrund läuft.


== SSH Tunnel mit Putty (Linux und Windows) erstellen ==
== SSH Tunnel mit Putty (Linux und Windows) erstellen ==
[[Image:putty.png|thumb|Tunnel Konfiguration (Putty)]]
[[Image:putty.png|thumb|Tunnel Konfiguration (Putty)]]
Hierzu wird Putty gestartet. Das Feld »Hostname« im Punkt »Session« mit '''schokokeks.org''' ausfüllen. Nun zum Reiter »Tunnels« wechseln und - wie auf dem Bild gezeigt - bei »Source Port« die '''7070''' eintragen und unten auf »Dynamic« stellen. Danach auf ''Add'' klicken um die Regel hinzu zu fügen.
Hierzu wird Putty gestartet. Das Feld »Hostname« im Punkt »Session« mit '''zucker.schokokeks.org''' ausfüllen. Nun zum Reiter »Tunnels« wechseln und - wie auf dem Bild gezeigt - bei »Source Port« die '''7070''' eintragen und unten auf »Dynamic« stellen. Danach auf ''Add'' klicken um die Regel hinzu zu fügen.


Die Einstellungen kann man nun unter Sessions speichern. So ist in Zukunft diese Einstellung nicht mehr notwendig. Wenn man nun auf ''Open'' klickt, muss man Benutzername und Passwort eingeben. Man ist nun auf Schokokeks.org eingeloggt und solange man dieses Fenster nicht schließt besteht der Tunnel und man kann über diesen Tunnel auch surfen, wenn man die Einstellungen im Browser getätigt hat.
Die Einstellungen kann man nun unter Sessions speichern. So ist in Zukunft diese Einstellung nicht mehr notwendig. Wenn man nun auf ''Open'' klickt, muss man Benutzername und Passwort eingeben. Man ist nun bei schokokeks.org eingeloggt und solange man dieses Fenster nicht schließt besteht der Tunnel und man kann über diesen Tunnel auch surfen, wenn man die Einstellungen im Browser getätigt hat.


== Den Webbrowser für die Nutzung konfigurieren ==
== Den Webbrowser für die Nutzung konfigurieren ==
Zeile 33: Zeile 33:
Mit dieser Einstellung findet jeder Aufruf einer Internetseite nur noch über den verschlüsselten Tunnel statt.
Mit dieser Einstellung findet jeder Aufruf einer Internetseite nur noch über den verschlüsselten Tunnel statt.


== Schokokeks.org spezifische Einstellungen ==
== Verwenden von tsocks ==
Wie viele von euch sicher schon bemerkt haben, wird diese SSH Verbindung (wie jede andere auch), nach 12 Minuten Inaktivität gekillt. Dies mag zwar im Normalfall ausreichen, doch es kommt doch durchaus vor, dass man länger Zeit braucht.
Manche Programme unterstüzten leider die Verwendung eines SOCKS-Proxies nicht. Unter Linux gibt es hierfür einen Wrapper [http://tsocks.sourceforge.net/ tsocks]. Die Konfigurationsdatei /etc/socks/tsocks.conf sollte wie folgt aussehen:
  christian@schokokeks ~ $ export | grep TMOUT
server = localhost
  declare -x TMOUT="720"
  server_port = 7070
Hier ist das ganze Festgelegt und kann natürlich auch geändert werden. Das ganze wird in Sekunden angegeben. Für eine halbe Stunde wäre dann dies richtig.
  server_type = 4
  export TMOUT="1800"
Danach einfach die benötigten Programme so starten:
  tsocks <Programm> <Programmoptionen>
 
[[Kategorie:OpenSSH]]

Aktuelle Version vom 6. Juli 2010, 11:07 Uhr

OpenSSH erlaubt die Nutzung eines eingebauten Socks-Proxy. Das bedeutet, es wird ein SSH-Tunnel aufgebaut, der beliebigen Verkehr verschlüsselt bis zum Server transportiert und dort an die ursprüngliche Adresse weiterleitet.

Warum ein SSH-Socks-Proxy?

Häufig, wenn man unterwegs ist, greift man über nicht vertrauenswürdige Netzwerke wie z.B. Internet-Cafe oder WLAN auf Dienste im Netz zu. In vielen Fällen kann jeder andere, der im selben Netzwerk ist, den Internet-Verkehr auf einfache Art mithören/-lesen.

Um Mails zu empfangen und zu versenden verwendet schokokeks.org grundsätzlich eine verschlüsselte Verbindung, auch für Jabber und ICQ sind verschlüsselte Verbindungen möglich (SSL). Doch meistens nicht geschützt ist der Aufruf von (fremden) Internetseiten. Hier kommt nun der Socks-Proxy ins Spiel, der es ermöglicht, einen sogenannten Tunnel aufzubauen, also allen Verkehr über einen sicheren Tunnel bis zur Gegenstelle zu übermitteln.

Im Gegensatz zu einem VPN reicht hierbei ein normaler Benutzeraccount bei schokokeks.org aus und auf Client-Seite ist keine besondere Installation nötig.

SSH Tunnel per OpenSSH

In der Kommandozeile ausführen:

ssh -N -D7070 <username>@zucker.schokokeks.org

Die einzelnen Optionen:

-N kein Programm auf dem Server starten
-D gibt den lokalen Port an, dieser ist variabel und kann von Ihnen bestimmt werden.
<username> ist Ihr Benutzername und zucker.schokokeks.org ist der Server, auf dem sich Ihr Benutzerkonto befindet.

Wenn Sie SSH-Key-Login eingerichtet haben, können Sie die Option -f angeben, was dazu führt, dass ssh im Hintergrund läuft.

SSH Tunnel mit Putty (Linux und Windows) erstellen

Tunnel Konfiguration (Putty)

Hierzu wird Putty gestartet. Das Feld »Hostname« im Punkt »Session« mit zucker.schokokeks.org ausfüllen. Nun zum Reiter »Tunnels« wechseln und - wie auf dem Bild gezeigt - bei »Source Port« die 7070 eintragen und unten auf »Dynamic« stellen. Danach auf Add klicken um die Regel hinzu zu fügen.

Die Einstellungen kann man nun unter Sessions speichern. So ist in Zukunft diese Einstellung nicht mehr notwendig. Wenn man nun auf Open klickt, muss man Benutzername und Passwort eingeben. Man ist nun bei schokokeks.org eingeloggt und solange man dieses Fenster nicht schließt besteht der Tunnel und man kann über diesen Tunnel auch surfen, wenn man die Einstellungen im Browser getätigt hat.

Den Webbrowser für die Nutzung konfigurieren

SOCKS Konfiguration (Firefox)

Um nun den Webbrowser für die Nutzung zu konfigurieren, müssen Sie die Verbindungseinstellungen ändern. Hierzu auf manuelle Proxy-Konfiguration klicken. Bei SOCKS localhost angeben und hinten den oben bestimmten Port (hier 7070) einfügen.

Mit dieser Einstellung findet jeder Aufruf einer Internetseite nur noch über den verschlüsselten Tunnel statt.

Verwenden von tsocks

Manche Programme unterstüzten leider die Verwendung eines SOCKS-Proxies nicht. Unter Linux gibt es hierfür einen Wrapper tsocks. Die Konfigurationsdatei /etc/socks/tsocks.conf sollte wie folgt aussehen:

server = localhost
server_port = 7070
server_type = 4

Danach einfach die benötigten Programme so starten:

tsocks <Programm> <Programmoptionen>