22.09.2013 Aufrufe

SSH−WIN PC−Benutzeranleitung - Forschungszentrum Jülich

SSH−WIN PC−Benutzeranleitung - Forschungszentrum Jülich

SSH−WIN PC−Benutzeranleitung - Forschungszentrum Jülich

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 1<br />

FORSCHUNGSZENTRUM JÜLICH GmbH<br />

Zentralinstitut für Angewandte Mathematik<br />

D−52425 <strong>Jülich</strong>, Tel. (02461) 61−6402<br />

Beratung und Betrieb, Tel. (02461) 61−6400<br />

Technische Kurzinformation<br />

FZJ−ZAM−TKI−0348<br />

Rudolf Theisen<br />

05.10.1999<br />

<strong>SSH−WIN</strong> <strong>PC−Benutzeranleitung</strong><br />

Überblick<br />

1 Übersicht über <strong>SSH−WIN</strong> und seine Installation unter Windows 95/98 bzw. NT<br />

2 Interaktive SSH−Verbindung mit Paßwort−Authentisierung<br />

2.1 Überprüfung des RSA−Rechner−Schlüssels des SSH−Servers<br />

2.2 Paßwort−Authentisierung<br />

3 Interaktive SSH−Verbindung mit RSA−Authentisierung<br />

3.1 Erzeugung eines RSA−Schlüsselpaars<br />

3.2 Aufbau einer SSH−Verbindung mit RSA−Authentisierung<br />

4 Ausführung eines Befehls auf einem entfernten SSH−Server<br />

5 Tunnelung anderer Dienste über <strong>SSH−WIN</strong><br />

5.1 Tunnelung von X11−Anwendungen<br />

5.1.1 Start der entfernten X11−Anwendung und deren Tunnelung<br />

5.1.2 Start eines X−Term−Fensters auf einem entfernten Rechner<br />

durch entfernte Befehlsausführung<br />

5.2 Tunnelung weiterer TCP/IP−Dienste, dargestellt am FTP−Dienst<br />

5.2.1 Konfiguration und Start des SSH−Tunnels zur sicheren<br />

Übertragung der FTP−Befehle<br />

5.2.2 Konfiguration und Start des WS_FTP−Client−Programms<br />

Hinweis: Dieses ist die Kurzfassung des Benutzerhandbuches BHB 0160 .<br />

1 Übersicht über <strong>SSH−WIN</strong> und seine Installation unter Windows 95/98 bzw. NT<br />

<strong>SSH−WIN</strong> ist ein kostenloses, windowsfähiges Secure Shell Client−Programm. Es wird<br />

von Cedomir Igaly entwickelt (s. Originale Homepage der <strong>SSH−WIN</strong>−Software<br />

(http://public.srce.hr/~cigaly/ssh) (161.53.2.130))<br />

<strong>SSH−WIN</strong> unterstützt folgende Secure Shell Funktionen:<br />

Interaktiver Zugriff (Sicherer Telnet−Ersatz; s. Kap. 2 und 3)<br />

Ausführung eines Befehls auf einem entfernten Rechner (Sichere Remote<br />

Execution; s. Kap. 4)


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 2<br />

Sichere Tunnelung von X11−Anwendungen (s. Kap. 5.1)<br />

Sichere Tunnelung von Diensten mit bekannten Port−Nummern (s. Kap. 5.2).<br />

<strong>SSH−WIN</strong> beherrscht also − im Gegensatz zur käufliche PC SSH−Version von Data<br />

Fellows − die sichere Befehlsausführung; beide können aber keinen sicheren File−Transfer<br />

(scp−Programm bei der SSH−UNIX−Versionen). Man kann aber die Benutzer−Kennung<br />

und das Paßwort, die beim FTP−Aufruf im Klartext über Port 21 übertragen werden,<br />

sichern, indem man Port 21 über eine vorher aufgemachte SSH−Verbindung übermittelt<br />

("tunnelt"; s. Kap. 5.2).<br />

Hinweis: Den sicheren File−Transfer bietet die SSH−DOS−Version 1.2.14 von<br />

Jonathan Chen, die Sie als interner FZJ−Benutzer z.B. unter<br />

ftp://ftp.kfa−juelich.de/pub/security/ssh/pc/ssh−dos/ finden bzw. auf die Sie als<br />

FZJ−Benutzer noch bequemer per Explorer über \\PCSRV\public\ssh\ssh−dos\<br />

bzw. Q:\ssh\ssh−dos\ zugreifen können.<br />

Externe können auf diese Software nur per<br />

http://www.fz−juelich.de/zam/net/security/software/ssh/pc/ssh−dos/ zugreifen.<br />

Windows 95/98 bzw. NT−Benutzer können <strong>SSH−WIN</strong> mit dem Installationsprogramm<br />

SecureShell.exe recht einfach installieren:<br />

Holen Sie sich das Installations−Programm SecureShell.exe entweder vom<br />

FZJ−FTP−Server<br />

(ftp://ftp.kfa−juelich.de/pub/security/ssh/pc/ssh−win/SecureShell.exe) oder mit dem<br />

Explorer von \\PCSRV\public\ssh\ssh−win\SecureShell.exe bzw.<br />

von Q:\ssh\ssh−win\SecureShell.exe oder als Nicht−FZJ−Benutzer von<br />

http://www.fz−juelich.de/zam/net/security/software/ssh/pc/ssh−win/SecureShell.exe<br />

auf Ihren PC (in ein beliebiges Verzeichnis) und starten Sie dieses entweder über<br />

den Explorer oder über<br />

−−> Start −−> Ausführen... . Dieses leitet Sie durch die Installation:<br />

Anzeige: "User Information"<br />

Falls die Felder "Name:" und "Company:" noch leer sind, tragen Sie dort einen<br />

beliebigen Text ein. Erst dann können Sie mit Next bzw. ENTER weiter.<br />

Anzeige: "Choose Destination Location"<br />

Voreingestellt wird <strong>SSH−WIN</strong> nach C:\Programme\Secure Shell<br />

installiert. Wenn Sie ein anderes Verzeichnis bevorzugen, können Sie das mit der<br />

Browse...−Schaltfläche suchen und festlegen. Weiter mit Next bzw. ENTER.<br />

Anzeige: "Select Program Folder"<br />

Voreingestellt erscheint <strong>SSH−WIN</strong> später unter der Bezeichnung "Secure Shell" in<br />

Ihrer Programm−Übersicht. Sie können im Feld "Program Folders:" eine andere<br />

Bezeichnung eintragen. Weiter mit Next bzw. ENTER.<br />

Anzeige: "Start Copying Files"<br />

Hier werden Ihnen die drei Files angezeigt, die nun installiert werden sollen.<br />

Weiter mit Next bzw. ENTER.<br />

Diese werden nun installiert.<br />

Anzeige: "Setup Complete"<br />

Mit Next bzw. ENTER bestätigen Sie diese Installations−Abschlußmeldung.<br />

Beschaffen Sie sich nun in das <strong>SSH−WIN</strong>−Arbeitsverzeichnis (vorein.:<br />

C:\Programme\Secure Shell) vom FTP−Server die Liste der aktuellen SSH−<br />

Rechner−Schlüssel ftp://ftp.kfa−juelich.de/ssh_known_hosts.FZJ und nennen Sie diesen<br />

File um in known.hosts.


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 3<br />

Für externe Benutzer bieten wir nur die SSH−Rechner−Schlüssel der Cray−Rechner und<br />

des zentralen AIX−Rechners an. Diese Sammlung können Sie in der Version vom 27.09.99<br />

von<br />

http://www.fz−juelich.de/zam/net/security/software/ssh/aix−und−cray−ssh_known_hosts<br />

bekommen. Speichern Sie diese im <strong>SSH−WIN</strong>−Arbeitsverzeichnis (s.o.) als<br />

known.hosts.<br />

Sie können aber auch ganz auf diese SSH−Rechner−Schlüssel verzichten und interaktiv<br />

diejenigen übernehmen, die Ihnen beim ersten SSH−Verbindungs−Aufbau vom jeweiligen<br />

Ziel−Rechner angeboten werden. Dabei aber müssen Sie darauf hoffen, daß Sie diese schon<br />

vom richtigen Ziel−Rechner angeboten bekommen. Es besteht dann aber die Gefahr, daß<br />

ein anderer Rechner sich für den Ziel−Rechner ausgibt und dann alles mitlesen kann<br />

(Man−in−the−Middle−Attack).<br />

Wer PGP installiert hat, kann sich dort auch noch die digitale Signatur<br />

(aix−und−cray−ssh_known_hosts.asc) dieser reduzierten SSH−Schlüssel−Sammlung<br />

holen, lokal abspeichern und mit dem Aufruf<br />

pgp aix−und−cray−ssh_known_hosts.asc<br />

aix−und−cray−ssh_known_hosts<br />

prüfen.<br />

Im nächsten Kapitel wird gezeigt, wie Sie sofort mit SSH eine sichere interaktive<br />

Verbindung zu einem Zielrechner aufbauen können und sich dort wie bisher mit Ihrem<br />

Paßwort ausweisen. Im 3. Kapitel wird dann die vom ZAM empfohlene<br />

RSA−Authentisierung mit Hilfe Ihres privaten SSH−Schlüsselpaares vorgestellt.<br />

2 Interaktive SSH−Verbindung mit Paßwort−Authentisierung<br />

Wenn Sie <strong>SSH−WIN</strong> mit Hilfe des Installationsprogramms SecureShell.exe<br />

installiert haben, können Sie es ganz normal über<br />

−−> Start −−> Programme −−> Secure Shell starten. Sie können es aber auch über den<br />

Explorer starten (ssh32.exe bzw. ssh32 Anwendung (ca. 262 KB)).<br />

Als erstes wird Ihnen die Nutzungs−Erklärung des Autors angezeigt , die Sie mit OK oder<br />

ENTER beenden. Daraufhin wird Ihnen innerhalb der <strong>SSH−WIN</strong>−Bedienoberfläche<br />

diejenige SSH−Verbindungsmaske angezeigt, die Sie als letzte mit der Save−Schaltfläche<br />

in der Registry abgespeichert hatten. Beim allerersten <strong>SSH−WIN</strong>−Aufruf ist diese<br />

natürlich noch − bis auf Ihren PC−Benutzernamen − leer. Füllen Sie die<br />

SSH−Verbindungsmaske aus:


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 4<br />

Bild: 2.1 Verbindungs−Profile für einen SSH−Zugriff mit Paßwort−Authentisierung<br />

Erklärungen dazu:<br />

Der Ziel−Rechner (1) und Ihre dortige Benutzer−Kennung (2) sind einzutragen.<br />

Das voreingestellte Verschlüsselungsverfahren Idea ist gut (3).<br />

Den Kompressions−Schieber (compression Level) ist unbedingt auf "Min."<br />

zu stellen (4), d.h. die Kompression abschalten. Diese verzögert nur alles unnötig<br />

und macht zu AIX−Rechnern nur Ärger!<br />

Wenn Sie auf dem Zielrechner keine X−Anwendung starten wollen, sollten Sie<br />

vorsichtshalber das "X11 Forward" immer abschalten. Wenn ein Angreifer an<br />

den Inhalt von $HOME/.Xauthority auf dem entfernten Rechner kommt, kann er<br />

mitunter damit Ihrem lokalen X−Server Befehle senden, die dann bei Ihnen lokal<br />

ausgeführt werden (s. Ulrich Flegel: The Interaction between SSH and X11<br />

(http://HOME.Braunschweig.Netsurf.De/~ulrich.flegel/pub/ssh−x11.ps.gz).<br />

Wenn die Option "X11 Forward" aktiviert ist (5), werden alle X11−Anwendungen<br />

ebenfalls verschlüsselt übertragen. Voraussetzung aber ist, daß Sie vorher am PC<br />

einen X−Server gestartet haben ( s. TKI 0293; wenn Sie \\PCSRV\public\<br />

permanent dem Laufwerk Q: zugeordnet haben, dann ist die PC−Xware−Software<br />

mit Q:\winnt40\pcxware\setup.exe installierbar.)<br />

Die Option "Receive LF as CR/LF" hilft, UNIX−Zeilen−Ende am PC korrekt<br />

darzustellen (6).<br />

Im Feld "Profile Name:" können Sie einen beliebigen Text für diesen<br />

Verbindungs−Profile definieren (7). Darüber können Sie bei späteren<br />

<strong>SSH−WIN</strong>−Aufrufen wieder gezielt diesen Verbindungs−Profile auswählen. Diese<br />

Profile−Bezeichnung kann man auch als Aufruf−Parameter verwenden, z.B. bei<br />

Icons (s. Benutzerhandbuch).<br />

Mit der Save−Schaltfläche sind diese Angaben in die Registry zu retten (8).<br />

Mit OK bzw. ENTER wird diese SSH−Verbindung gestartet (9).


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 5<br />

Falls Sie SSH−Verbindungen zu verschiedenen Zielrechner aufnehmen wollen, können Sie<br />

sich mit der New−Schaltfläche weitere solcher SSH−Verbindungs−Profile anlegen und<br />

retten.<br />

2.1 Überprüfung des RSA−Rechner−Schlüssels des SSH−Servers<br />

Der SSH−Server sendet zu Beginn des Verbindungsaufbaus seinen RSA−Rechner<br />

−Schlüssel. Bevor dieser zur Verschlüsselung der SSH−Verbindung verwendet wird, prüft<br />

der SSH−Client, ob er diesen Schlüssel schon im File known.hosts hat; ansonsten zeigt<br />

er ihn an:<br />

Bild: 2.2 Anzeige eines noch unbekannten RSA−Rechner−Schlüssels<br />

Wenn Sie sich bereits früher zu diesem Zielrechner per SSH verbunden haben, dann<br />

sollten Sie Verdacht schöpfen und vorsorglich die Übernahme dieses Schlüssel in<br />

known.hosts über die Schaltfläche Refuse key ablehnen. Dann wird diese SSH−Sitzung<br />

mit der fatalen Fehlermeldung: "No host key is known for HOST"<br />

abgebrochen.<br />

Setzen Sie sich mit dem Administrator des Zielrechners in Verbindung und klären Sie,<br />

warum sich der Rechner−Schlüssel geändert hat. Es kann nämlich sein, daß Sie mit einem<br />

Rechner verbunden waren, der nur den von Ihnen gewünschten Zielrechner vortäuscht,<br />

um so z.B. an Ihr Paßwort zu kommen.<br />

Normalerweise aber werden Sie keinen Grund zu einem Verdacht haben und den<br />

angebotenen RSA−Rechner−Schlüssel einmal (Accept once) oder für immer (mit Accept<br />

Key bzw. ENTER) akzeptieren.<br />

2.2 Paßwort−Authentisierung<br />

Nachdem der RSA−Rechner−Schlüssel geprüft ist, kann der SSH−Client damit eine<br />

verschlüsselte Verbindung zum SSH−Server aufbauen. Ab nun wird alles zwischen Ihrem<br />

SSH−Client und dem SSH−Server abhörsicher übertragen.<br />

Da bei diesem ersten <strong>SSH−WIN</strong>−Anwendungs−Beispiel die sehr sichere<br />

RSA−Authentisierung noch nicht vorbereitet ist (s. Interaktive SSH−Verbindung mit<br />

RSA−Authentisierung), müssen Sie sich nun ganz normal mit Ihrem Paßwort auf dem<br />

Zielrechner ausweisen. Sie haben dazu drei Versuche. Nach dem dritten Fehlversuch wird<br />

<strong>SSH−WIN</strong> mit der fatalen Fehlermeldung "Permission denied" ganz abgebrochen.<br />

Dadurch wird das Paßwort−Raten deutlich erschwert.<br />

Nach Eingabe des richtigen Paßwortes erhalten Sie Zugang zu Ihrer Benutzer−Kennung


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 6<br />

(User ID) auf dem Zielrechner und können dort ganz normal interaktiv arbeiten. Dabei<br />

wird ein VT100−Terminal emuliert. Statt dessen können Sie sich dort mit xterm & auch<br />

ein X−Terminal starten, falls an Ihrem PC der X−Server läuft.<br />

Mit dem Befehl exit beenden Sie diese interaktive Verbindung zum Zielrechner. Wenn Sie<br />

beim Aufruf (s. Bild 2.1) die Option "Close on exit" nicht aktiviert hatten, können Sie nun<br />

die nächste SSH−Verbindung festlegen und starten oder mit −−> Action −−> Exit das<br />

<strong>SSH−WIN</strong>−Programm endgültig beenden.<br />

3 Interaktive SSH−Verbindung mit RSA−Authentisierung<br />

Bevor Sie die sehr sichere RSA−Authentisierung verwenden können, bei der kein<br />

Geheimnis Ihren Rechner verläßt, müssen Sie sich zuerst ein RSA−Schlüsselpaar selbst<br />

erzeugt und dessen öffentlichen Schlüssel am Zielrechner an den File<br />

$HOME/.ssh/authorized_keys angefügt haben.<br />

3.1 Erzeugung eines RSA−Schlüsselpaars<br />

Bild: 3.1 Ausgefüllte Maske zur Erzeugung eines RSA−Schlüsselpaars<br />

Erklärungen:<br />

1. Aufruf mit −−> Keys −−> Generate key<br />

2. Im "Key description"−Feld können Sie eine beliebige Bezeichnung für<br />

diesen Schlüssel eintragen. Wir empfehlen aber die Form<br />

Benutzerkennung@Rechnername.<br />

3. Die voreingestellte Schlüssellänge von 1024 ist ausreichend sicher.<br />

4. Das idea−Verfahren zur Verschlüssellung des privaten RSA−Schlüssels ist gut.<br />

5. Die voreingestellte Option "SSH v1 identity" ist gut. Die Protokoll−Version 2<br />

hingegen ist nicht mehr kostenlos und wird derzeit nicht offiziell im FZJ eingesetzt.<br />

6. Mit OK bzw. ENTER die Schlüssel−Erzeugung starten<br />

Das RSA−Schlüsselpaar wird aus zwei sehr großen Primzahlen p und q erzeugt, deren<br />

Generierung in der Statuszeile angezeigt wird.<br />

Anschließend wird Ihnen zum Abspeichern das aktuelle Inhaltsverzeichnis angezeigt:


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 7<br />

Bild: 3.2 Eingabe des Filenamens für Ihren geheimen SSH−Schlüssel<br />

Sie können zu einem anderen Verzeichnis wechseln, auch zu A:, oder sich ein neues<br />

Verzeichnis anlegen. Ihr geheimer SSH−Schlüssel muß also nicht im<br />

<strong>SSH−WIN</strong>−Arbeitsverzeichnis liegen, wo ihn ja jeder Angreifer suchen wird.<br />

Tragen Sie dann dort einen beliebigen Filenamen für Ihren privaten RSA−Schlüssel ein,<br />

z.B. Benutzername@Rechnername (7). Der dazu passende öffentliche RSA−Schlüssel<br />

bekommt dann automatisch den gleichen Filenamen, jedoch mit der Erweiterung ".pub".<br />

Mit der Speichern−Schaltfläche wird der Name übernommen (8).<br />

Anschließend werden Sie aufgefordert, Ihren SSH−Geheimsatz (passphrase) einzugeben,<br />

mit dem Ihr geheimer RSA−Schlüssel nochmals verschlüsselt wird, um ihn für einen<br />

Datendieb unbrauchbar zu machen. Dieser SSH−Geheimsatz ist letztendlich der wichtigste<br />

Schutz, mit dem Sie Ihren RSA−SSH−Schlüssel sichern. Verwenden Sie dabei sowohl<br />

Groß− als auch Kleinbuchstaben, Zahlen und Sonderzeichen, um so die Möglichkeit zu<br />

vereiteln, daß einer durch Ausprobieren aller möglichen Kombinationen doch noch Ihren<br />

privaten RSA−Schlüssel nutzen kann. Verwenden Sie keines Ihrer UNIX oder<br />

PC−Paßworte! Es gibt bereits (Makro−) Viren, die versuchen, private (PGP)<br />

RSA−Schlüssel zu entführen, um dann schlecht gewählte Geheimsätze zu erraten.<br />

Bild: 3.3 Zweifache Eingabe des SSH−Geheimsatzes<br />

Achten Sie darauf, den SSH−Geheimsatz (passphrase) gleich zweimal einzugeben (9, 10),<br />

also zu bestätigen, wobei Sie aber nicht mit der ENTER−Taste, sondern mit der Tab−Taste<br />

in die Bestätigungszeile kommen (10). Mit OK bzw. ENTER (11) wird Ihr privater<br />

RSA−Schlüssel verschlüsselt und im ausgewählten Verzeichnis abgespeichert.<br />

Wenn Sie wollen, können Sie sich so beliebig viele RSA−Schlüsselpaare definieren und für<br />

jeden SSH−Verbindung ein anderes verwenden.<br />

3.2 Aufbau einer SSH−Verbindung mit RSA−Authentisierung


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 8<br />

Um die RSA−Authentisierung nutzen zu können, müssen Sie Ihren öffentlichen<br />

SSH−Schlüssel (Endung: .pub) zu Ihrem Benutzerverzeichnis auf dem UNIX−Zielrechner<br />

gebracht (z.B. per Mail) und dort an den File $HOME/.ssh/authorized_keys<br />

angefügt haben. Dieser File und das Verzeichnis $HOME/.ssh dürfen nur von Ihnen<br />

beschreibbar sein, damit kein andere dort seinen RSA−Schlüssel anfügen kann. Denn<br />

jeder, der das schafft, hat anschließend ungehinderten Zugang zu Ihrer dortigen<br />

Benutzer−Kennung.<br />

Wenn sie diese Voraussetzungen erfüllt haben, können Sie nun in den<br />

SSH−Verbindungs−Optionen die RSA−Authentisierung aktivieren (5) und über die<br />

Identities−Schaltfläche (8) den vollständigen Pfadnamen Ihres öffentlichen SSH<br />

RSA−Schlüssels festlegen. Sie könnten dort auch mehrere Schlüssel−Files angeben:<br />

Bild: 3.4 Anforderung der RSA−Authentisierung im SSH−Verbindungsmenü<br />

Wichtig ist, daß die Kompression abgeschaltet (4) und die RSA−Authentisierung aktiviert<br />

ist (5). Über die Identities−Schaltfläche (8) definieren Sie, wo Ihr(e) RSA−Schlüssel zu<br />

finden ist/sind.<br />

Zunächst ist natürlich noch kein Schlüssel in der "Identity list" bekanntgemacht. Über die<br />

New−Schaltfläche können Sie den Schlüssel−Pfad suchen (9. Schritt, hier ohne Bild).<br />

Dazu wird voreingestellt das <strong>SSH−WIN</strong>−Arbeitsverzeichnis angezeigt:


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 9<br />

Bild: 3.5 Auswahl eines geheimen RSA−Schlüssels (hier: zdv117@zam054)<br />

Wählen Sie dort Ihren geheimen SSH−Schlüssel aus (10) und bestätigen Sie diese Wahl<br />

mit der Öffnen−Schaltfläche (11). Dann wird Ihnen in der "Identity list" links dessen<br />

vollständiger Pfadname und rechts dessen Hexa−Kennung angezeigt:<br />

Bild: 3.6 Pfad und Hexa−Wert des ausgewählten RSA−Schlüssels<br />

Mit OK bzw. ENTER (12) kommen Sie wieder zurück zum SSH−Verbindungsmenü (s.<br />

Bild 3.4).<br />

Dort sollten Sie im Feld "Profile Name:" eine aussagekräftige Bezeichnung eintragen (13)<br />

und diese Aufruf−Parameter mit der Save−Schaltfläche in die Registry retten (14), bevor<br />

Sie mit OK oder ENTER (15) die Verbindung starten.<br />

Bei der RSA−Authentisierung werden Sie dann nicht nach Ihrem Zielrechner−Paßwort,<br />

sondern nach Ihrem lokalen SSH−Geheimsatz (Passphrase) für den betreffenden<br />

RSA−Schlüssel gefragt:


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 10<br />

Bild: 3.7 Eingabe des lokalen SSH−Geheimsatzes zur RSA−Authentisierung<br />

Bei dieser Art der Authentisierung verläßt kein Geheimnis Ihren Rechner. Ihr privater<br />

SSH−Schlüssel wird nämlich nur lokal benötigt, um eine vom SSH−Server für Sie<br />

verschlüsselte Botschaft zu entschlüsseln und diese dann modifiziert an den SSH−Server<br />

zurückzuschicken. Der erkennt daran, ob Sie im Besitz des passenden<br />

SSH−Geheimschlüssels sind, und akzeptiert das als Ihre Zugangsberechtigung.<br />

Dann können Sie ganz normal interaktiv auf den entfernten Rechner zugreifen.<br />

Mit exit beenden Sie diese interaktive Sitzung. Eventuell müssen Sie anschließend die<br />

<strong>SSH−WIN</strong>−Bedienoberfläche explizit mit −−> Action −−> Exit ganz beenden.<br />

4 Ausführung eines Befehls auf einem entfernten SSH−Server<br />

<strong>SSH−WIN</strong> erlaubt es, eine Befehlszeile, die im Command−Feld eingetragen ist (1), auf<br />

einem entfernten Rechner ausführen zu lassen (sichere Remote Execution):<br />

Bild: 4.1 Verbindungs−Maske mit mehreren entfernt, auf dem zentralen AIX−Rechner<br />

auszuführenden Befehlen<br />

Wenn Sie die Ausgabe der entfernt ausgeführten Befehle hier sehen möchten, dürfen Sie<br />

die Option "Close on exit" nicht aktivieren (2).<br />

Die Option "Receive LF as CR/LF" sollte Sie aber aktivieren (3), damit Sie<br />

Programm−Ausgaben an Ihrem PC zeilengerecht lesen können:<br />

Bild: 4.2 Ausgabe der entfernt ausgeführten Befehle


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 11<br />

Der Status des zuletzt ausgeführten Befehls wird in der <strong>SSH−WIN</strong>−Statuszeile angezeigt.<br />

Sie haben aber bei der entfernte Befehlsausführung unter <strong>SSH−WIN</strong> − im Gegensatz zum<br />

SSH−DOS − keine Möglichkeit, diese von Ihrem Terminal aus zu steuern, können also<br />

auch keine seitenweise Anzeige anfordern (z.B. ls −lisa | more ).<br />

Wenn − wie in diesem Beispiel − die "Close on Exit"−Option nicht aktiviert war (2), muß<br />

man nun diese SSH−Sitzung selbst beenden (s. (4) und (5)):<br />

Bild: 4.3 Manuelle Beendigung der SSH−Sitzung<br />

Hinweis: Wenn Sie als entfernten Befehl xterm eintragen, erhalten Sie so ein komfortables<br />

X−Terminal des entfernten Rechners (s.u.). Im Handbuch ist erklärt, wie Sie sich dazu<br />

noch ein Icon erstellen.<br />

5 Tunnelung anderer Dienste über <strong>SSH−WIN</strong><br />

Über eine bestehende interaktive SSH−Verbindung kann man andere TCP/IP−Dienste,<br />

deren Port−Zuordnung bekannt ist, verschlüsselt, also abhörsicher übertragen.<br />

5.1 Tunnelung von X11−Anwendungen<br />

Sicherheits−Vorbemerkung zur X11−Tunnelung<br />

Ulrich Flegel weist in The Interaction between SSH and X11<br />

(http://HOME.Braunschweig.Netsurf.De/~ulrich.flegel/pub/ssh−x11.ps.gz) auf die Gefahr<br />

hin, daß ein Angreifer, der an den Inhalt von $HOME/.Xauthority auf dem entfernten<br />

Rechner kommt, Ihrem lokalen X−Server beliebige Befehle zur Ausführung auf Ihrem<br />

lokalen Rechner schicken kann. Diese .Xauthority−Files sind nur durch die<br />

UNIX−File−Rechte geschützt. In seinem Papier skizziert er auch, wie man dann, wenn die<br />

HOME−Verzeichnisse per NFS exportiert werden, recht einfach an den Inhalt von<br />

Benutzer−Files kommt. Der Angriff ist noch einfacher, wenn der Angreifer ebenfalls eine<br />

Benutzer−Kennung auf dem entfernten Rechner hat. Unangenehm ist, daß durch<br />

Sicherheits−Lücken im entfernten Rechner Ihr lokaler Rechner attackierbar wird.<br />

Ursache dafür ist aber nicht SSH sondern X−11. Unter SSH aber können Sie diese<br />

X11−Tunnelung ganz abschalten. Das sollten Sie immer tun, wenn Sie keine<br />

X11−Anwendung auf dem Zielrechner starten wollen.<br />

Ganz gefährlich aber ist die Unsitte, mit dem xhost Zielrechner einen<br />

bestimmten Rechner oder gar mit xhost + weltweit allen Rechnern X−Zugriffe<br />

auf den lokalen X−Server zu erlauben. Wer so unverantwortlich handelt, dem hilft<br />

SSH nicht.


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 12<br />

Am einfachsten aber ist die Tunnelung von X11−Anwendungen, weil SSH diese fast<br />

automatisch macht. Voraussetzung ist, daß Sie vorher auf Ihrem PC einen X11−Server im<br />

Passiv−Mode gestartet haben (s. TKI 0293). Weiterhin müssen Sie die Option "X11<br />

Forward" im SSH−Options−Menü aktiviert haben (s. Punkt 3):<br />

Bild: 5.1 SSH−Verbindungsmaske mit aktivierter X11−Tunnelung<br />

Auf dem entfernten Rechner aber dürfen Sie die DISPLAY−Variable nicht wie bisher<br />

selbst definieren. Denn nur wenn diese auf den entfernten Rechner zeigt, was Sie mit<br />

echo $DISPLAY kontrollieren sollten, wird eine X−Verbindung auch tatsächlich<br />

verschlüsselt, also sicher übertragen. Wenn die DIPLAY−Variable aber wie früher auf<br />

Ihren PC zeigt, dann können Sie diese X−Anwendung zwar weiterhin korrekt bedienen; Sie<br />

merken aber nicht, daß Sie diese X−Verbindung wie früher total unsicher betreiben.<br />

Kommentieren Sie dann die DISPLAY− bzw. autodisplay−Anweisung in Ihrem<br />

UNIX−Profile ($HOME/.profile) aus und starten Sie diese Verbindung neu.<br />

Dann können Sie auf dem entfernten Rechner eine X−Anwendung starten und<br />

abhörsicher bedienen. Mit xterm & können Sie sich z.B. ein komfortableres X−Term<br />

Fenster geben lassen:<br />

Bild: 5.2 Interaktiver Start eines xterm−Fensters auf dem entfernten Rechner und seine


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 13<br />

Darstellung auf Ihrem PC<br />

5.1.1 Start eines X−Term−Fensters auf einem entfernten Rechner durch entfernte Befehlsausführung<br />

Wenn Sie allerdings nur ein X−Term eines entfernten Rechners benötigen, so genügt es,<br />

xterm−Aufruf als entfernten Befehl ausführen zu lassen (Sichere Remote Execution):<br />

Bild: 5.3 Entfernte Ausführung des xterm−Befehls<br />

Besonderheiten:<br />

xterm ist als entfernt auszuführenden Befehl (Command) eingetragen (2).<br />

Da die Option "Close on exit" aktiviert ist (4), wird die SSH−Bedienoberfläche<br />

automatisch beendet, sobald Sie später das X−Term−Fenster mit exit beenden.<br />

Die Option "Hide window" ist aktiviert (5). Dadurch wird die<br />

<strong>SSH−WIN</strong>−Oberfläche nicht angezeigt. Sie sehen nur das X−Term−Fenster.<br />

Kontrollieren Sie, ob die voreingestellte Option "X11 Forward" aktiviert ist (6).<br />

5.2 Tunnelung weiterer TCP/IP−Dienste, dargestellt am FTP−Dienst<br />

Wie Sie mit SSH beliebige andere TCP/IP−Dienste, deren Port−Nummer Sie kennen,<br />

sicher übertragen können, ist im folgenden für den interessierten Leser exemplarisch an der<br />

Tunnelung des FTP−Kommando−Kanals (Port 21) kurz skizziert. Im Handbuch wird<br />

dieses Anwendungs−Beispiel ausführlich besprochen.<br />

Dazu müssen Sie vorher aus dem SSH−Verbindungs−Optionsfenster über die Local<br />

Forwards−Schaltfläche den zu tunnelnde TCP/IP−Dienst festlegen. Das soll exemplarisch<br />

an der Tunnelung des FTP−Kommando−Kanals (Port 21) demonstriert werden, über den<br />

Ihr Paßwort und Ihre Benutzer−Kennung im Klartext übertragen werden. Leider kann<br />

man den eigentlichen FTP−Datentransfer nicht tunneln, da man nicht weiß, welche<br />

Port−Nummer der FTP−Server und der FTP−Client dafür aushandeln werden.


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 14<br />

5.2.1 Konfiguration und Start des SSH−Tunnels zur sicheren Übertragung der FTP−Befehle<br />

Dazu ist <strong>SSH−WIN</strong> wie gewohnt zu starten und die "SSH options"−Eingabemaske<br />

auszufüllen:<br />

Bild: 5.4 Definition der Weiterleitung von FTP−Kommandos über Port 21 zum<br />

Zielrechner<br />

Besonderheiten:<br />

Durch die Aktivierung der Option "Hide window" (6) wird die interaktive<br />

SSH−Verbindung sofort in den Hintergrund gesetzt, sobald dieser SSH−Tunnel<br />

aufgebaut ist.<br />

Zur Tunnelung ist über die Local Forwards−Schaltfläche (8) die Forwards<br />

−Eingabemakse aufzurufen, dort mit der New−Schaltfläche eine neue<br />

Weiterleitungsmaske auszuwählen (9) und die Tunnelung von Port 21 (10) und (12)<br />

zu Ihrem Zielrechner (11) zu definieren.<br />

Statt Port 21 hätten Sie als lokales Port auch eine beliebige andere Nummer<br />

wählen können, z.B. 4711; Port 21 hat den Vorteil, daß dies bei Ihrem<br />

FTP−Programm die voreingestellte Port−Nummer ist, Sie dort also die<br />

Voreinstellung übernehmen können (s.u.).<br />

Die Option "Only local" muß unbedingt aktiviert sein (13), damit kein anderer, der<br />

weiß, daß Sie diesen Tunnel aufgebaut haben, diesen unbemerkt mitbenutzen kann.


http://www.kfa−juelich.de/zam/docs/tki/tki_html/t0348/tki−0348all.htm Page: 15<br />

Mit OK bzw. ENTER übernehmen Sie diese Forwarding−Einstellungen (14) und<br />

kommen wieder zum "SSH options"−Menü zurück.<br />

Es empfiehlt sich, diese Einstellungen einen Profile−Namen zu geben (15) und mit<br />

der Save−Schaltfläche in der Registry zu retten (16).<br />

Nun können Sie sich − wie gewohnt − mit OK bzw. ENTER mit dem SSH−Server<br />

verbinden (17) und sich entweder mit Ihrem SSH−Geheimsatz oder mit Ihrem<br />

Zielrechner−Paßwort ausweisen. Im zweiten Schritt müssen Sie nun am PC die<br />

FTP−Software starten und konfigurieren. Das wird im folgenden exemplarisch für das<br />

WS_FTP−Client−Programm gezeigt.<br />

5.2.2 Konfiguration und Start des WS_FTP−Client−Programms<br />

Rufen Sie das WS_FTP−Programm auf und definieren Sie sich als erstes einen eigenen<br />

Profile (Session Profile), der seine FTP−Befehl lokal auch tatsächlich zur Verschlüsselung<br />

an das vorher gestartete SSH−Client−Programm übergibt, also das SSH−Tunnel auch<br />

wirklich benutzt:<br />

Bild: 5.5 Erstellung eines WS_FTP−Profiles und Festlegung weiterer<br />

FTP−Zusatzparameter<br />

Besonderheiten:<br />

Als Zielrechner ("Host Name") tragen Sie localhost bzw. 127.0.0.1 ein (1).<br />

Dadurch sendet Ihr FTP−Client seine sensitiven FTP−Befehle an das lokal laufende<br />

SSH−Client−Programm.<br />

Mit der Advanced−Schaltfläche rufen Sie eine erweiterte Eingabe−Maske (5).

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!