SSH Tunnel

Aus Laub-Home Wiki

SSH Tunnel mit openssh

Hier ein Beispiel um einen SSH Tunnel aufzubauen, um mit einem Browser via Socks5 Proxy über den remotehost zu surfen. Anschließend im Browser beim Socks5 Proxy als Host localhost und als Port 8080 eintragen.

ssh -C2qTnN -D 8080 username@remote_machine.com


Hier ein Beispiel um zum Beispiel einen Squid Proxy via SSH Tunnel erreichbar zu machen. Zum surfen einfach als Host localhost und als Port 2020 eintragen.

ssh -C2qTnN -L 8080:localhost:2020 username@remote_machine.com

SSH Tunnel mit putty

Zuerst den Hostnamen oder die IP des Remote Servers eintragen und ggf. den Port ändern, Falls SSH auf einem anderen Port erreichbar ist.
Nun in den Reiter Connection --> SSH --> Tunnels wechseln. Hier wird bei Source Port der Lokal gewünschte Port eingetragen und bei Destination der Port mit Hostname oder IP Adresse auf den Zugegriffen werden soll. Will man zum Beispiel auf einen webserver Zugreifen sollte hier in etwa die stehen:
webserver.domain.de:80
Dann auf Add drücken:
Nun wieder in den Reiter Session wechseln und der Session einen Namen geben, dann auf Save klicken.
zum schluss dann einfach auf Open klicken und die Verbindung mit localhost:gewählterPort nutzen.

SSH Tunnel Benutzer ohne Shell Zugriff

Hier eine kurze Anleitung wie man einem SSH Tunnel Benutzer die Shell Benutzung verweigern kann.
einfach folgendes Skript anlegen: /usr/local/sbin/ssh_tunnel_shell_loop.sh

#!/bin/bash
#ssh_tunnel_shell_loop.sh
clear
limit=1000
a=0
echo "You are connected to the system. Hit Ctrl+C to close this connection."
while [ $a -le "$limit" ]
do
echo $(date +"%Y-%m-%d %T")
sleep 60
done

dann dem Skript das Execute Rechte geben:

chmod +x /scripts/ssh_tunnel_shell_loop.sh

nun kann ein User mit dem Script als Shell angelegt werden:

useradd -s /scripts/ssh_tunnel_shell_loop.sh -m ssh-tunnel

nun sollte der SSH Login folgende Meldung ausspucken:

You are connected to the system. Hit Ctrl+C to close this connection.
2011-06-14 12:52:07