2321862

So machen Sie den Raspberry Pi sicherer

28.07.2018 | 08:49 Uhr |

Dank Energieeffizienz und flüsterleisem Betrieb kommt der Raspberry Pi in vielen IoT-Projekten zum Einsatz. Damit wird er zwangsläufig ein Angriffsziel für Hacker und Botnetze. Deswegen sollten Sie den kleinen Rechner besser absichern.

Viele Kleinstcomputer sind permanent online, um ihre Aufgaben als VPN-Gateway oder in der Hausautomation zu erfüllen. Damit sind sie permanent Angriffsversuchen ausgesetzt. Daran ist grundsätzlich nichts zu ändern, jedoch kann man es möglichen Angreifern so schwer wie irgend möglich machen.

Risiko Nummer 1 – der Standardnutzer

Am einfachsten hat es jeder Angreifer mit einem System, das mit voreingestellten Standards aktiv ist. Beginnen Sie daher damit, dem Standardnutzer „pi“ ein neues Passwort zu geben. Es sollte möglichst lang sein und auch Sonderzeichen enthalten. Dazu genügt es, ein Terminal zu öffnen und dort

passwd

einzugeben. Legen Sie danach zusätzlich einen Benutzer mit individuellem Namen an, mit dem Sie dann standardmäßig arbeiten. Folgender Befehl

sudo useradd -m [benutzer] -G sudo

fügt einen neuen Benutzer hinzu, der auch zur Gruppe „sudo“ gehört. Damit kann er auch root-Kommandos ausführen. Auch diesem Benutzer weisen Sie nach sudo passwd [benutzer] ein sicheres Passwort zu. Und wenn Sie schon dabei sind, ist es auch eine gute Idee, ein neues Rootpasswort zu vergeben. Dazu lautet das Kommando

sudo passwd root

Da Sie jetzt ein neues Konto besitzen, das auch alle Aufgaben mit root-Rechten ausführen kann, können Sie den Standardbenutzer „pi“ deaktivieren. Dieses Konto, von dessen Existenz jeder Angreifer ausgeht, hat nach

sudo passwd --lock pi

erst einmal gar keine Rechte mehr.

Lesetipp Raspberry Pi 3 als Desktopersatz verwenden

Das System aktuell halten

Wie bei jedem modernen Computer gilt auch für den Raspberry, dass er möglichst aktuell gehalten werden muss. Sie sollten also in regelmäßigen Abständen die installierten Pakete aktualisieren und die Distribution frisch halten.

sudo apt-get update
sudo apt-get dist-upgrade
sudo rpi-update

Wenn Sie es besonders bequem haben wollen, recherchieren Sie im Internet einmal nach dem Programm „unattended-upgrades“. Das kann dann sogar als Cronjob im System hinterlegt werden und wird in regelmäßigen Abständen automatisiert ausgeführt. Dann brauchen Sie sich um die Updates nicht mehr manuell kümmern.

SSH-Fernzugriff absichern

Der Zugriff per SSH ist sicherlich eines der mächtigsten Werkzeuge im täglichen Umgang mit einem Raspberry. Denn erst dieser Fernzugriff ermöglicht es, alle Systemfunktionen zu erreichen, ohne Tastatur oder Monitor an den Kleinstcomputer anschließen zu müssen. Deswegen dürften die meisten Anwender diesen Zugang im Rahmen ihrer Projekte einsetzen. Das wissen aber auch die Angreifer, und deswegen sollten Sie sich um die Absicherung von SSH kümmern.

Da Sie einen Benutzer angelegt haben, der sich auch root-Recht verschaffen kann, ist es nicht mehr notwendig, dass es eine Anmeldung des Kontos root auf diesem Weg gibt. Versuche, sich als root anzumelden, können Sie leicht unterbinden. Öffnen Sie dazu mit einem Editor die entsprechende Konfigurationsdatei:

sudo nano /etc/ssh/sshd_config

Suchen Sie dort nach dem Eintrag „Permit-RootLogin“ und setzen Sie dort den Wert auf „no“.

Lesetipp Raspbian: Das kann das OS für den Raspberry Pi

Legen Sie ein neues Konto an, das auch root-Rechte besitzt.
Vergrößern Legen Sie ein neues Konto an, das auch root-Rechte besitzt.

In aller Regel arbeiten automatisierte Angriffe mit Portscans: Dabei werden wahlweise Datenpakete an Systeme gesendet und geprüft, ob bestimmte Ports geöffnet sind. Wie Sie sicherlich wissen, sind für die verschiedenen Protokolle Standardports definiert. Bei SSH ist dies Port 22 – ein Port, den angreifende Portscans in jedem Fall abfragen. Ein System kann aber jederzeit so eingerichtet werden, dass ein Dienst wie SSH auf einem anderen Port angeboten wird. Dies ändern Sie beim Raspberry ebenfalls in der Konfigurationsdatei „sshd_config“. Sie müssen allerdings etwas aufpassen, denn die Portnummer darf nicht von einer anderen Anwendung oder einem Dienst belegt werden. Suchen Sie in der Datei nach der Zeile „Port“. Statt der 22 vergeben Sie dort einen anderen Wert (theoretisch 65 536 Möglichkeiten). Verändern Sie also zum Beispiel den Wert auf „22078“. Mit Strg-X und der anschließenden Bestätigung zum Speichern verlassen Sie den Editor wieder.

Änderungen der Konfigurationsdatei „sshd_config“ werden erst nach einem Neustart des Dienstes mit sudo service ssh restart wirksam.

Konfigurationsdatei von fail2ban.
Vergrößern Konfigurationsdatei von fail2ban.

Gescheiterte Log-in-Versuche limitieren

Die meisten Hackerangriffe versuchen ganz plump, eine Anmeldung mit Standardkontonamen und zufälligen Passwörtern auszuprobieren. Das System antwortet auf die Fehlversuche natürlich mit einer Fehlermeldung. Ein Softwarepaket kann solche gescheiterten Versuche nach einer bestimmten Anzahl einfach verbieten:

sudo apt-get install fail2ban

Nun kann es natürlich immer einmal zu Fehlversuchen beim Anmelden kommen. Einmal die Umstelltaste festgestellt und das an sich korrekte Passwort landet als Fehlangabe auf der anderen Seite. Über die Konfigurationsdatei des Programms sollten Sie daher festlegen, wie viele Fehlversuche Sie zulassen wollen und welche Sperre das zur Folge hat. Dazu laden Sie mit

sudo nano /etc/fail2ban/jail.conf

die maßgebliche Datei in den Editor. Die Zahl der erlaubten Fehlversuche definieren Sie mit „Maxretry“. „Findtime“ bestimmt, innerhalb welcher Zeitspanne die Fehlversuche erfolgen müssen, damit diese gezählt werden. Die Dauer der Blockade für die zugreifende IP definiert die Variable „bantime“. Die Angaben erfolgen in beiden Fällen in Sekunden.

Auch interessant Linux-Top-20: So finden Sie Ihr Lieblings-Linux

Firewall installieren und aktivieren

Ist der Rechner mehr oder weniger die gesamte Zeit online, dann sollte darauf eine Firewall aktiviert sein. Am besten arbeitet diese nach dem Prinzip, nur den Datenverkehr durchzulassen, der explizit erlaubt worden ist. Versuchen Sie ferner, sofern es die eingesetzte Software zulässt, ähnlich wie beim SSH-Zugang den Port der Anwendung zu verändern. Ein System, das auf Anfragen an den Standardports nicht reagiert, ist für automatisierte Angriffe zu kompliziert.

Lesetipp Der Raspberry Pi als Firewall

Router nicht vergessen: Die Absicherung eines Raspberry-Systems ist die eine Sache, die andere ist die des Routers. Die meisten Modelle sind herstellerseitig mit einer zuverlässigen Firewall geschützt. Weichen Sie diesen Schutz nach Möglichkeit nicht durch unnötige Portfreigaben auf. Der Router sollte unter den Portfreigaben (Fritzbox: „Internet -> Freigaben -> Portfreigaben“) nur genau die Freigabe(n) anzeigen, die ein Dienst wie SSH oder ein Raspi-Projekt erfordert.

Portfreigaben im Router: Die Regel lautet „genau und nur das, was unbedingt nötig ist“.
Vergrößern Portfreigaben im Router: Die Regel lautet „genau und nur das, was unbedingt nötig ist“.

PC-WELT Marktplatz

0 Kommentare zu diesem Artikel
2321862