Howto ssh » Historie » Revision 1
Revision 1/2
| Weiter »
Jeremias Keihsler, 17.01.2020 10:54
ssh¶
ssh is installed by default
basic ssh usage¶
the most *nix-style way of getting help for ssh
is man ssh
.
I assume that the ssh
port is 22
and the involved firewalls are setup accordingly.
ssh user@example.com
ssh usage through another machine¶
What if you can't reach a machine directly but through a machine in between?
Of course you could ssh
twice, more compact form is:
ssh -t user@reachable ssh user@unreachable
X-session access¶
ssh -X user@example.com
starting a X-program inside the remote shell will bring up a local X-window.
baobab
Port forwarding to local machine¶
the following command will forward port 3390 (e.g. vrpd
) on example.com
to local 3501.
This is useful when a given port is only accessible local on a remote machine but not accessible from outside.
ssh -L 3501:localhost:3390 user@example.com
now you can connect to the e.g. remote
vrdp
-session by simply on your local machine.rdesktop-vrdp -kde localhost:3501
"dynamic tunnel port" for use as socks.proxy¶
Ein virtuelles Privates Netzwerk (VPN) bindet entfernte Nutzer über das Internet in ein lokales Netzwerk ein. Das geschieht im Allgemeinen transparent, d.h. für die Nutzerinnen und Nutzer sieht es so aus, als ob sie sich beispielsweise im Uni-Netz befinden. Alle Netzdienste in einem Firmen- Heim- oder Universitätsnetz können dann unterwegs so genutzt werden, als ob man vor Ort wäre. Sehr häufig geht es aber nur um einen einzigen Netzdienst, nämlich das Web. An der Universität Duisburg-Essen werden viele Dinge heute webbasiert erledigt. Allerdings erfordern viele Seiten, dass sich der Nutzer im IP-Adressbereich der Uni befindet. Warum also ein vollständiges VPN verwenden, wenn eigentlich nur die Verbindungen über die Ports 80 (http) und 443 (https) genutzt werden? Eine Möglichkeit http- und https-Verbindungen umzuleiten ist ein Web-Proxy, der auf Protokollebene zwischen dem Browser und dem Web vermittelt. Dazu muss aber ein dezidierter Proxy-Server betrieben werden, der von außerhalb des Uni-Netzes zugänglich ist. Alternativ realisiert ein sogenannter Socks-Proxy so etwas auf Socket-Ebene also über TCP/IP Ports.
Ein Tunnel sie alle zu knechten …
Alle aktuelle Browser unterstützen die Verbindung auch über einen Socks-Proxy. Wer Login-Zugriff per SSH auf einen Rechner in dem Zielnetz hat, kann sehr einfach einen Socks-Proxy per SSH-Tunnel realisieren. Das ist beispielsweise an der Universität Duisburg-Essen für alle Nutzer der Fall. Alle Mitarbeiter haben mit ihrer Unikennung Zugriff auf staff.uni-due.de und alle Studierende können die Maschine student.uni-due.de mit ihrer Kennung nutzen.
Linux/MacOS/Unix:
Unter unixoiden Betriebsystemen wie Linux und MacOS geht das sehr einfach mit Bordmitteln auf der Kommandozeile (hier mit staff.uni-due.de für Mitarbeiter):
ssh -N -D2000 user@example.com
Der Parameter -N verhindert hier den Aufbau einer interaktiven Shell-Verbindung. Der Parameter -D gibt den lokalen Zugriffsport für den dynamischen Tunnel an. Diesen Port wählt man unter Unix geschickter Weise oberhalb von 1023, damit keine Root-Rechte erforderlich sind.
Von Jeremias Keihsler vor fast 5 Jahren aktualisiert · 1 Revisionen