Remotezugriff ohne SicherheitslückenLauscher aussperren
Netzwerkverkehr
Remotezugriff ohne Sicherheitslücken
Jede Verbindung von einem PC zum anderen ist gefährdet. Sei es im lokalen Netz oder im Internet. Überall fischen übel meinende Zeitgenossen nach Kennwörtern und Zugängen. Kommt ein Hacker an Ihr Kennwort für den Linux- Webserver im Internet, werden die Konsequenzen fatal sein. Doch auch im lokalen Netzwerk ist man nicht gegen Angriffe gefeit. Sei es der Kollege, der eben mal den Netzwerkverkehr mitschreibt, oder ein Hacker, der sich bereits an der Firewall vorbei in Ihr Netz geschlichen hat. In jedem Fall gilt: Machen Sie es dem Angreifer so schwer wie nur möglich.
Was ist SSH?
Das Kürzel SSH steht für »Secure Shell«, zu deutsch etwa »sicherer Zugriff« oder »sichere Benutzerschnittstelle« . Das Programm schützt gegen alle Versuche, den Datenverkehr zwischen zwei Computern abzuhören. Denn alle übertragenen Daten werden von SSH verschlüsselt, bevor sie über die Leitung gehen. Besonders wichtig: Diese Verschlüsselung passiert schon beim Verbindungsaufbau, also bevor Benutzername oder Kennwort zum anderen Computer wandern. So ist es faktisch unmöglich, durch reines Abhören an diese geheimen Daten zu kommen. Zusätzlich wird auch noch der komplette Datenverkehr kodiert. SSH wird für den Zugriff auf die Linux- Shell sowie zum Kopieren von Dateien eingesetzt. Ersteres ist interessant für die Fernwartung; über einen SSH-Zugang erhalten Sie Zugriff auf eine Linux-Shell. Von dort aus verwalten und konfigurieren Sie etwa Ihren Samba-Server oder starten Apache-Webserver neu.
Kopieren mit SSH
Remotezugriff ohne Sicherheitslücken
Der zweite Einsatzzweck von SSH ist das Kopieren von Dateien. Auf SSH setzt das Programm »scp« auf – das steht für »Secure Copy« und ist ideal, um Dateien von einem Linux-Rechner auf einen anderen zu kopieren. Das geht im lokalen Netz genauso gut wie im Internet. Mehr dazu lesen Sie im Abschnitt »scp einsetzen «. Falls Sie von Windows aus komfortabel Dateien per »scp« an einen Linux- Computer senden möchten, finden Sie Informationen hierzu im Kasten »Win- SCP einsetzen« auf der nächsten Seite. Grundsätzlich gilt: Der Zugriff auf die Shell Ihres Linux-PCs, egal ob im lokalen Netz oder im Internet, sollte immer über eine sichere Verbindung stattfinden. Falls Sie noch Telnet einsetzen: Machen Sie den Telnet-Port dicht und beenden Sie den Telnet- Dienst. Denn per Telnet versandte Daten sind unverschlüsselt und können von jedermann abgefangen werden.
Davor schützt SSH nicht
Sobald sich ein Eindringling erfolgreich in Ihren Server gehackt hat, hilft auch die beste Verschlüsselung nichts mehr. Denn dann hat der Einbrecher freie Hand auf dem Server. SSH schützt auch nicht vor schlecht gewählten Kennwörtern. Wer als Root-Kennwort »admin« wählt, braucht sich nicht wundern, wenn das System in die Hände anderer Benutzer fällt. SSH hilft auch nicht beim Schutz anderer Verbindungen zum Linux-Server. Für die Absicherung von Webservern brauchen Sie https und auch Samba können Sie nicht über die Secure Shell absichern.
SSH in der Praxis
Remotezugriff ohne Sicherheitslücken
Die gute Nachricht: Wenn Sie Suse Linux 9 verwenden, ist der Zugang über die Secure Shell bereits verfügbar. Außerdem ist der Telnet-Dienst abgeschaltet. So weit ist alles sicher. Bei der Installation hat das Linux auch bereits einen für SSH verwendbaren Schlüssel erzeugt. Sie können also gleich loslegen. Um eine Verbindung von einem Linux-Computer zum anderen herzustellen, geben Sie folgendes ein:
ssh username@linux1
»linux1« ist in diesem Fall der Name des Linux-Rechners im lokalen Netz. Falls es sich um einen Server im Internet handelt, geben Sie den kompletten Domainnamen ein, also
ssh username@linux1.foo.bar
Danach baut Ihr Rechner die Verbindung auf. Falls dies zum ersten Mal geschieht, erscheint der Schlüssel des angewählten Rechners, den Sie bestätigen. Danach geben Sie das Kennwort ein und es steht die Shell des gewählten Linux-PC zur Verfügung. Übrigens lässt SSH auch die Anmeldung als root zu ? bei Telnet war das per Default-Einstellung auf dem Server ausgeschlossen. Übrigens funktioniert der Befehl auch ohne vorangestellten Benutzernamen, also
ssh linux1
Dann geht SSH davon aus, dass Sie sich mit dem Benutzernamen anmelden wollen, mit dem Sie auch schon lokal angmeldet sind. Das ist bequem, falls Sie auf zwei Servern den gleichen Benutzernamen verwenden. Nach dem Login steht Ihnen die Linux-Shell wie gewohnt zur Verfügung. Nach getaner Arbeit schließt der Administrator den SSH-Zugang mit der Tastenkombination [Strg D].
Dateien kopieren mit scp
Remotezugriff ohne Sicherheitslücken
Das Programm »scp« stellt eine abgesicherte Verbindung zwischen zwei Computern her und kopiert Dateien über diese Verbindung. Dabei spielt es keine Rolle, ob der entfernte Server im LAN oder im Internet steht ? scp funktioniert auf der Linux-Kommandozeile. Für Windows gibt es einen eigenen Client. Mehr dazu lesen Sie im Kasten »WinSCP einsetzen«. Um zwischen zwei Linux-Computern Dateien zu kopieren, setzen Sie scp so ein:
scp /home/user/dir/*.erw rserv:/home/user/dir
Das kopiert alle Dateien mit der Endung »erw« aus dem Verzeichnis »/home/user/dir/« in das gleichnamige Verzeichnis auf dem Computer »rserv«. Vor dem Kopieren verlangt der entfernte Server noch ein Kennwort. Als Benutzernamen übergibt scp den aktuellen Usernamen. Möchten Sie sich mit einem anderen Benutzernamen als dem aktuellen anmelden, geht das so:
scp /home/user/dir/*.erw xyz@rserv:/home/user/dir
Umgekehrt holt scp auch Dateien von einem anderen Computer ab und kopiert sie auf den lokalen Rechner:
scp xyz@rserv:/home/user/dir/*.doc xyz@rserv:/home/user/texte
Damit werden alle Dateien mit der Endung »doc« in das Verzeichnis »/home/ user/texte« auf den lokalen PC kopiert.
SSH unter Windows mit Putty
Remotezugriff ohne Sicherheitslücken
Falls Sie mit Windows auf Ihren Linux- Rechner zugreifen wollen, brauchen Sie einen SSH-Client. Der meist verwendete ist Putty (www.chiark.greenend.org.uk/~sgtatham/putty/). Putty beherrscht auch Secure-Shell-Verbindungen und kann die Einstellungen verschiedener Telnet- oder SSH-Sessions speichern. Auf diese Weise können Sie auch mehrere Linux-Computer von einem Windows-Rechner aus bequem kontrollieren. Einfach das Programm starten und unter »Host Name« die IP-Adresse des Linux-Servers eingeben. Dabei darauf achten, dass unter Protocol die Option SSH aktiviert ist. Mit einem Klick auf Open baut Putty die Verbindung auf. Danach gibt der Benutzer nur noch seinen Namen und das Kennwort ein. Schon steht die Anmeldung. Mit [Strg D] endet diese erste Sitzung. Bequemer ist es, wenn der Benutzer seine Daten speichert. Dazu tippen Sie zuerst wie gehabt die IP-Adresse des Servers ein. Danach tragen Sie unter Saved Sessions einen Namen für die Verbindung ein und klicken auf Save. Ist die Verbindung einmal gespeichert, genügt ein Doppelklick, um sie wiederherzustellen.
WinSCP einsetzen
Remotezugriff ohne Sicherheitslücken
Die Windows-Freeware WinSCP setzt auf Putty auf und verschlüsselt die Übertragung von Files. Das Programm finden Sie im Internet unter http://winscp.vse.cz/eng/. Nach Installation und Start legen Sie mit New eine neue Session an. Danach geht es mit Login auf den entfernten Rechner. Ist die Verbindung hergestellt, zeigt WinSCP ein zweigeteiltes Fenster. In der linken Hälfte findet sich das lokale Verzeichnis, in der rechten das auf dem Server. Dateien und Ordner kopieren Sie einfach per Drag and Drop. Übrigens lässt sich WinSCP auch gut über die Kommandozeile steuern und automatisie
ren.
Putty für Suse ab 9.1 einstellen
Remotezugriff ohne Sicherheitslücken
Der Windows-SSH-Client Putty arbeitet hervorragend mit Suse ab Version 9.1 zusammen. Allerdings gibt es seit genau dieser Suse-Version eine kleine Umstellung. Denn per Default arbeitet Suse 9.1 nicht mehr mit dem Zeichensatz ISO 8859-15, sondern mit UTF-8. Das Resultat: In der Standardeinstellung stellt Putty Rahmen und andere grafische Elemente in der Kommandozeile nicht mehr richtig dar. Hilfe bringt eine kleine Umstellung. Dazu starten Sie Putty, klicken auf den Namen des Servers und anschließend auf Load, um die Session zu laden. Dann links im Menü unter Window-Translation die Liste Received data assumed to be in which character set: öffnen und dort UTF-8 wählen. Danach mit einem Klick auf Session zurück zum Hauptfenster und dort auf Save klicken. Damit speichert Putty die Einstellungen und Sie können mit Open die Sitzung starten.