Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

SSH: Unterschied zwischen den Versionen

(-Y, public key)
(Verweis auf Cygwin hinzugefügt.)
Zeile 56: Zeile 56:
 
* http://www.ssh.com/
 
* http://www.ssh.com/
 
* http://www.chiark.greenend.org.uk/~sgtatham/putty/
 
* http://www.chiark.greenend.org.uk/~sgtatham/putty/
 +
* http://www.cygwin.com/ - eine Sammlung auf Windows portierter UNIX-typischer freier Software, inklusive X-Server und ssh.
  
 
[[Kategorie: Fachbegriffe der Informatik]]
 
[[Kategorie: Fachbegriffe der Informatik]]
 
[[Kategorie: Fakultäts-ABC]]
 
[[Kategorie: Fakultäts-ABC]]

Version vom 9. April 2005, 22:41 Uhr

SSH steht für Secure SHell und bezeichnet ein Netzwerkprotokoll, mit dem man sich auf entfernten Rechnern einloggen kann um dort Programme auszuführen. Ausserdem ist es möglich über SSH auch Dateien zu kopieren (per scp oder sftp) oder andere Protokolle zu tunneln.

SSH ist ein Ersatz für das telnet-Protokoll, mit dem man sich ebenfalls auf anderen Rechnern einloggen kann und für FTP, das auch noch heute häufig für den Datentransfer verwendet wird. Telnet und FTP arbeiten im Gegensatz zu SSH jedoch unverschlüsselt, somit ist es einfach die übertragenen Daten, und somit auch die Passwörter, von anderen Benutzern mitzulesen.

Programme

Bei allen Unix/Linux-Systemen sind SSH-Clients vorhanden und werden meist auch schon standardmässig mitinstalliert (Kommandos: ssh, scp, sftp). Für Windows-Systeme gibt es ebenfalls einige SSH-Clients, am häufigsten wird wohl PuTTY verwendet.

Ein SFTP und SCP-Client, zum Kopieren von Dateien über das Netzwerk, ist ebenfalls bei PuTTY vorhanden. WinSCP ist ein weiterer SCP/SFTP-Client für Windows.

SSH für den Zugriff auf das Fakultätsnetz

Per SSH könnt Ihr auch bequem von zu Hause aus auf das Fakultätsnetz zugreifen und auf den Workstations oder Servern in der Uni Kommandos ausführen oder Dateien aus oder in den eigenen Bereich kopieren.

Arbeiten auf den Rechnern in der Uni

Das Einloggen auf der Shell funktioniert vom Prinzip her so:

ssh <benutzername>@<rechnername>

Als Rechnernamen könnt Ihr (fast) alle öffentlich erreichbaren Rechner im Fakultätsnetz verwenden, z.B. pepita.cs.tu-berlin.de (Hinweis: Nicht cs.tu-berlin.de als Rechnernamen verwenden, sondern einen Rechner unterhalb dieser Domäne). Windows-SSH-Clients verfügen meist über eine GUI, über die Ihr den gewünschten Rechner, Euren Benutzernamen und das Passwort eingeben könnt.

Wenn Ihr auf einem UNIX/Linux-Rechner (oder auch unter Windows, wenn Ihr einen X-Server installiert habt) arbeitet, besteht auch die Möglichkeit, grafische Programme auf Rechnern in der Uni zu starten und die Ausgabe auf den heimischen Rechner umzuleiten, dies wird als X11-Forwarding bezeichnet.

Um X11-Forwarding zu aktivieren muss beim Aufruf der Parameter -X mit angegeben werden, ausserdem empfiehlt es sich vor allem bei langsamen Internetzugängen (Modem, ISDN, ADSL) die Verbindung zu komprimieren (-C):

ssh -X -C <benutzer>@<rechnername>

Für manche Programme reicht das mit -X aktivierte Forwarding nicht. In diesem Fall kann man versuchen, statt -X den Parameter -Y zu benutzen.

Wer keine Lust hat, bei jedem Login ein Passwort einzugeben, kann statt dessen public key-Authentifizierung benutzen. Dazu erstellt man, sofern noch nicht geschehen, zu Hause einen öffentlichen und einen privaten Schlüssel für ssh, zum Beispiel mit

ssh-keygen -t dsa

und leerer passphrase, kopiert dann die soeben erstellte Datei id_dsa.pub (nicht id_dsa - die ist geheim!) mit scp ins Homeverzeichnis im cs-Netz und führt dann

cat id_dsa.pub >> .ssh/authorized_keys

aus. Die kopierte Datei kann danach entfernt werden. (Vorsicht: $HOME/.ssh/id_dsa* nicht löschen.)

Kopieren von Dateien

Mit Hilfe von scp oder sftp könnt Ihr auch Dateien von der Uni nach Hause kopieren oder umgekehrt. Für Windows und auch UNIX/Linux gibt es dafür grafische Programme, die ähnlich wie gewöhnliche FTP-Clients aussehen und funktionieren. Viele FTP-Programme beherrschen mittlerweile auch SFTP.

Auf der Konsole unter UNIX/Linux funktioniert das Kopieren von Dateien so (Kopieren von entferntem auf lokalen Rechner):

scp <benutzername>@<rechnername>:<pfad zur datei> <lokales ziel(verzeichnis)>

oder umgekehrt (von lokalem Rechner auf entfernten):

scp <lokale Datei> <benutzername>@<rechnername>:<pfad zur zum Zielverzeichnis>

Natürlich ist es auch möglich mehrere Dateien oder ganze Verzeichnisse inkl. Unterverzeichnissen (rekursiv) oder Dateien zwischen verschiedenen entfernten Rechnern zu kopieren. Weitere Informationen dazu erhält man über die Manpage zu scp (man scp).

Weblinks