Startseite>Raspbian lässt in Zukunft den SSH-Server aus
Aus Raspberry Pi Geek 04/2017

Raspbian lässt in Zukunft den SSH-Server aus

© Sasi Ponchaisang, 123RF

Tür zu!

Christoph Langner

Schwachstellen in Routern, Webcams und anderen Geräten aus dem Internet der Dinge reißen schnell Lücken ins heimische Netz. Die Raspberry Pi Foundation reagiert auf diese Bedrohung und sichert Raspbian besser gegen Angriffe ab.

Seit Jahren wird immer wieder die Kritik an Herstellern von Routern und anderen netzwerkfähigen Geräten laut, dass sie im Laufe des Lebenszyklus aufgedeckte Schwachstellen ignorieren oder gar ihre Produkte schon mit Sicherheitslücken ausliefern. Dazu gehören oft Bugs in zentralen Bausteinen wie etwa dem Linux-Kernel, auf dem viele Systeme mit einem eingebetteten Computer basieren.

Als typischer – und zugleich dümmster – Fall für eine eingebaute Sicherheitslücke gelten Standard-Logins mit immer demselben Passwort auf allen Geräten. In diese Kategorie fällt auch die Anmeldung auf einem Raspberry Pi mit Raspbian: Dort heißt der im System angelegte User immer pi und hat das Passwort raspberry. Das lässt sich über das Kommando passwd zwar schnell ändern, doch erzwingt das System das keineswegs, und viele RasPi-User machen davon keinen Gebrauch.

Betreibt man den Raspberry Pi in einem öffentlich zugänglichen Netz, wäre es von daher für einen Angreifer kein großes Problem, den RasPi zu finden und sich anzumelden – zumal der RasPi sein Dasein über einen ARP-Scan bereitwillig mitteilt (Listing 1).

Listing 1

 

$ sudo arp-scan --localnet | grep Raspberry
192.168.0.100  b8:27:eb:76:1e:16  Raspberry Pi Foundation
192.168.0.101  b8:27:eb:e4:e1:30  Raspberry Pi Foundation

Einfallstor SSH

Bislang war auf den Raspbian-Images der SSH-Server von Haus aus aktiv. Somit ließ sich der Raspberry Pi “headless” aufsetzen. Man benötigte also nicht zwingend Maus, Tastatur und einen Monitor, um das System einzurichten, was die Installation eines RasPi-Servers ungemein vereinfachte. In Anbetracht der IT-Sicherheits-GAUs der letzten Wochen und Monate macht die Raspberry Pi Foundation mit dieser Praxis nun Schluss [1].

Mit Raspbian 2016-11-25 beherzigen die Raspbian-Entwickler das Sicherheitsmantra, standardmäßig keine Ports nach außen zu öffnen. Ergo müssen Sie ab jetzt den SSH-Server bewusst aktivieren. Was sich auf einem mit Monitor und Tastatur ausgestatteten RasPi schnell bewerkstelligen lässt, stellt den Betreiber eines Headless-RasPi vor eine Herausforderung.

Sicherheit durch NAT?

Aus den eigenen vier Wänden heraus führt der Weg ins Internet in der Regel über einen WLAN-Router. Der baut die Internet-Verbindung auf und verknüpft dann das lokale Netzwerk [2] mit dem weltweiten Netz. Anfragen von Rechnern aus dem LAN ins Internet speichert der Router in einer Tabelle und leitet die Datenpakete ins Netz weiter. Die Antworten liefert er dann anhand der NAT-Tabelle [3] zurück an die entsprechenden Geräte.

Sendet ein Rechner im Internet jedoch unaufgefordert Daten an den Router, weiß dieser damit nichts anzufangen: Ein passender Eintrag in die NAT-Tabelle fehlt. Somit schickt der Router das Datenpaket mit einer Art Vermerk “Empfänger unbekannt verzogen” wieder zurück zum Absender. Aus diesem Grund ist ein Raspberry Pi hinter einem WLAN-Router prinzipbedingt sicher, selbst wenn darauf der SSH-Server läuft und Sie das Standard-Login nicht geändert haben.

Der einzige Weg durch den Router hindurch führt über das Einrichten einer Port-Weiterleitung. Von Hand in der Weboberfläche des Routers konfiguriert oder mithilfe von Universal Plug and Play [4] (kurz UPnP) automatisch eingerichtet, leitet der Router dann Anfragen auf zuvor spezifizierten Ports an bestimmte Geräte weiter. Dann lässt sich zum Beispiel der SSH-Server des Raspberry Pi aus dem Internet heraus aufrufen oder ein Webserver auf dem Mini-Rechner betreiben.

SSH aktivieren

Wer direkt auf seinen Raspberry Pi zugreifen kann, weil neben Tastatur und Maus auch noch ein Monitor am Mini-Rechner hängt, muss zum Aktivieren von SSH keine großen Klimmzüge machen. In der Anwendung Raspberry Pi Configuration (die Sie unter Preferences im Anwendungsmenü finden) gibt es im Reiter Interfaces einen Schalter zum Aktivieren des SSH-Diensts (Abbildung 1). Da Raspbian SSH weiter von Haus aus installiert, müssen Sie hier lediglich den Schalter auf Enabled stellen und den Dialog mit OK beenden.

Abbildung 1: In Raspbian müssen Sie SSH seit dem letzten Update gezielt aktivieren.

Abbildung 1: In Raspbian müssen Sie SSH seit dem letzten Update gezielt aktivieren.

Alternativ rufen Sie das konsolenbasierte Raspberry-Pi-Konfigurationswerkzeug mittels sudo raspi-config in einem Terminalfenster auf und schalten dort unter dem Eintrag 7 Advanced Options | A4 SSH die entsprechende Option ein (Abbildung 2). Diese Methode funktioniert auch mit dem Light-Image von Raspbian, das auf eine grafische Desktop-Umgebung verzichtet. Nach dem Aktivieren der Option steht der SSH-Zugang auch ohne Neustart wie gewohnt sofort zur Verfügung.

Abbildung 2: Das Freischalten von SSH funktioniert auch über Raspi-config im Terminal.

Abbildung 2: Das Freischalten von SSH funktioniert auch über Raspi-config im Terminal.

Dabei stößt man gleich auf eine weitere Neuerung: Solange man das Passwort des Standardnutzers pi nicht ändert, es also bei raspberry belässt, nervt Raspbian bei jeder Anmeldung mit der Aufforderung, die Passwortänderung doch bitte schnellstmöglich nachzuholen (Abbildung 3).

Abbildung 3: Ebenfalls neu: Das System bittet Sie, das Passwort für den Standardnutzer zu ändern.

Abbildung 3: Ebenfalls neu: Das System bittet Sie, das Passwort für den Standardnutzer zu ändern.

Dazu genügt es, sich ganz normal einzuloggen und dann mit dem Kommando passwd das Kennwort zu ändern. Linux-typisch zeigt das System bei dieser Aktion keinerlei Sternchen oder andere Platzhalter an. Alternativ funktioniert das Ändern des Passworts auch über Raspi-config.

SSH headless aktivieren

Möchte man nun aber gar nicht erst einen Monitor und Eingabegeräte an den Raspberry Pi anschließen, steht man mit dem neuesten Raspbian vor verschlossenen Türen: Beim Versuch, sich per SSH auf einem frisch aufgesetzten Raspbian-System anzumelden, heißt es jetzt nur noch ssh: connect to host 192.168.111.100 port 22: Connection refused, und nichts geht mehr.

Da beißt sich die Katze in den Schwanz: ohne SSH kein SSH. Doch auch für diesen Fall haben die Entwickler von Raspbian eine Lösung parat: Damit Raspbian von Haus aus SSH aktiviert, schreiben Sie die Image-Datei wie gewohnt auf die SD-Karte. Nach Abschluss der Aktion nehmen Sie die Karte nun jedoch nicht sofort aus dem Kartenleser, sondern öffnen die /boot-Partition des Raspbian-Systems in einem Dateimanager Ihrer Wahl und erstellen dort eine leere Datei mit dem Namen ssh (Abbildung 4).

Abbildung 4: Um SSH zu aktivieren, legen Sie im Dateimanager eine leere Datei mit dem Namen »ssh« in »/boot« an.

Abbildung 4: Um SSH zu aktivieren, legen Sie im Dateimanager eine leere Datei mit dem Namen »ssh« in »/boot« an.

Da diese Partition mit dem FAT-Dateisystem formatiert wurde, funktioniert das mit allen gängigen Betriebssystemen, also sowohl unter Linux und MacOS als auch mit dem Windows Explorer unter Microsoft Windows.

Unter Linux kann man es sich hier auch noch ein wenig leichter machen: Statt einen Dateimanager zu bemühen, schreibt man das Raspbian-Image wie gewohnt mit Dd auf die Speicherkarte. Passen Sie beim entsprechenden Befehl aus der ersten Zeile von Listing 2 bei Bedarf den Namen und den Pfad der Image-Datei an und ändern Sie gegebenenfalls den Pfad zur SD-Karte.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
€0,99 – Kaufen
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland