himpler.com himpler.com

Raspberry Pi absichern

5 Min.

Wer zuhause einen Raspberry Pi einsetzt, sollte sich auch Gedanken über die Absicherung machen. Gerade wenn der Raspberry als Dienstleister im Hintergrund läuft, geraten regelmäßige Updates und andere Sicherheitsmaßnahmen oft in Vergessenheit.

Das ist insbesondere wichtig, wenn der Raspberry Pi durch eine Portfreigabe im Router auch von unterwegs erreicht werden kann. Hier erhöht sich das Risiko enorm, dass potenzielle Eindringlinge erfolgreich sind.

Die Basics der Absicherung

Zuerst widmen wir uns den Basics, die jeder Anwender durchführen sollte. Sie bieten das minimale Maß an Sicherheit.

1. Raspbian Standard Passwort ändern

Greift man bei der Installation auf das Betriebssystem Raspbian zurück, wird der Raspberry Pi mit dem Standard Passwort raspberry ausgestattet. Da das Passwort für alle gleich ist und darüber hinaus inzwischen hinlänglich bekannt sein sollte, ist damit Tür und Tor geöffnet.

Nach der Erstinstallation sollte daher umgehend das Passwort geändert werden. Das geht nach dem Login als Nutzer pi mit dem Befehl

passwd

und ist auch für absolute Anfänger leicht machbar.

2. Regelmäßige Updates

Wie jedes Betriebssystem sollte auch Linux regelmäßig mit Updates versorgt werden. Immer wieder werden Sicherheitslücken entdeckt und mittels Updates geschlossen. Daher sollte spätestens wöchentlich auf jedem Raspberry Pi nach verfügbaren Updates gesucht werden.

apt-get update
apt-get dist-upgrade

Der erste Befehl aktualisiert die Paketquellen des Paketmanagers, der zweite Befehl sorgt nach einer Sicherheitsabfrage für die Installation der gefunden Updates.

Zu aufwendig? Richtig. Besser wäre es, dass Update-Prozedere zu automatisieren. Und dafür gibt es sogar mit Unattended Upgrades ein fertiges Programm, welches mit folgenden Befehlen installiert werden kann:

apt-get install unattended-upgrades

Nach der Installation muss das Paket zunächst konfiguriert werden. Dabei ruft

dpkg-reconfigure -priority=low unattended-upgrades

das Konfigurationsprogramm auf.

Unattended upgrades konfigurieren

Unattended upgrades konfigurieren

Mit der ersten Abfrage stimmt man den automatischen Updates zu…

Unattended upgrades pattern

Unattended upgrades pattern

… in der nächsten Abfrage kann man das Suchmuster beeinflussen. Mit OK wird das Suchmuster übernommen und der Dialog beendet. Fertig.

3. VPN statt Portfreigabe

Wenn der Raspberry Pi außerhalb des heimischen WLANs erreichbar sein soll, nutzen viele eine Portweiterleitung im Router. Die ist recht einfach einzurichten und für öffentliche Anwendungen, wie zum Betrieb einer eigenen Webseite, der richtige Weg.

Nutzt man den Raspberry Pi aber lediglich für private Zwecke, z.B. zur Steuerung des Smarthomes oder für eine private Cloud, ist es sinnvoller statt der Portweiterleitung ein VPN (Virtual Private Network) einzurichten. In modernen Routern, wie einer halbwegs aktuellen FritzBox) ist dies bereits mit ein paar Klicks erledigt. Neben einem Nutzer samt Passwort erhält man in der IPsec Variante noch einen Gruppennamen und ein Shared Secret.

Diese Daten trägt man nun in das mobile Gerät, wie ein Smartphone, Tablet oder Laptop ein. Wichtig ist, dass man sich mit der IP-Adresse des Endgeräts nicht im gleichen Subnet befindet.

Anschließend kann man sich über eine verschlüsselte Verbindung (VPN-Tunnel) in seinem heimischen WLAN anmelden. Die Daten, die zwischen Endgerät und dem eigenen Netzwerk gesendet werden, können Dank der Verschlüsselung selbst in öffentlichen Hotspots nicht mitgelesen werden.

Über das VPN kann man nun jederzeit auf den Raspberry Pi zugreifen.

Weitergehende Absicherung des Raspberry Pi

Mit den Basics lässt sich bereits ein ausreichendes Maß an Sicherheit erreichen. Wer es noch sicherer haben möchte, kann die folgenden Dinge umsetzten

4. Login nur per Zertifikat ermöglichen

Insbesondere wenn der Raspberry Pi durch eine Portfreigabe öffentlich im Netz erreichbar ist, kann die Deaktivierung des Logins mit Passwort zu Gunsten eines Logins mit Zertifikat die Sicherheit erheblich erhöhen. Allerdings muss man aufpassen, dass man sich nicht aus Versehen selbst aussperrt.

Zunächst erstellt man sich auf dem Raspberry Pi ein neues Schlüsselpaar.

ssh-keygen

Der Befehl erstellt einen öffentlichen und einen privaten Schlüssel. Der öffentliche Schlüssel muss im ssh Verzeichnis des Benutzers umbenannt werden und angepasste Rechte erhalten.

cd ~/.ssh
mv id_rsa.pub authorized_keys
chmod 0700 ~/.ssh -R

Der private Schlüssel wird nun auf das gewünschte Endgerät geladen. Er sollte aus Sicherheitsgründen auch nicht auf dem Raspberry Pi verbleiben.

Jetzt ist es an der richtigen Zeit den Login zu testen. Unter Windows mit Putty lässt sich der Schlüssel unter Connection - SSH - Auth hinterlegen. Anschließend kann die Verbindung aufgebaut werden.

Auf dem Mac oder unter Linux geht es mit folgenden Befehlen im Terminal. Die Befehle gehen davon aus, dass der heruntergeladene Schlüssel mit dem Namen rpi_rsa im Verzeichnis ~/.ssh liegt.

chmod 600 ~/.ssh/rpi_rsa
ssh -i ~/.ssh/rpi_rsa pi@raspberrypi.local

raspberrypi.local kann dabei auch durch die IP Adresse des Raspberry Pi ersetzt werden.

Alternativ führt auch der umgekehrte Weg zum Erfolg. Dazu muss ein lokal auf dem Rechner erzeugter Public Key auf den Raspberry Pi kopiert werden.

Wenn der Login per Zertifikat erfolgreich war, kann der Login mit Passwort deaktiviert werden. Dazu muss auf dem Raspberry Pi in der Datei /etc/ssh/sshd_config die PasswordAuthentication von yes auf no geändert werden.

[...]
PasswordAuthentication no
[...]

Abschließend muss der SSH Server mit service ssh restart neu gestartet werden. Jetzt ist der Login nur noch mit dem zuvor erzeugten Schlüssel möglich.

5. Nicht benötigte Dienste abschalten

Raspbian bringt bereits einige laufende Standarddienste mit, die man für den eigenen spezifischen Einsatzzweck vielleicht nicht benötigt. So kann man als Alternative zu Schritt 4 den SSH Zugang komplett deaktivieren. Damit ist ein Login nur noch mit physischem Zugang zum Raspberry Pi möglich.

Am besten verschafft man sich mit ps -l einen Überblick über die laufenden Prozesse und entscheidet selbst, welche man benötigt und welche nicht.

Einen Service kann man dann im Regelfall recht einfach mit zwei kurzen Befehlen stoppen und vor einem Neustart bewahren.

service stop [service-name]
service disable [service-name]

Fazit

Die 5 Punkte sollen keine abschließende Liste zur vollständigen Absicherung eines Raspberry Pi sein. Eine 100%-tige Sicherheit gibt es nicht. Beherzigt man die jedoch die Basics, also die Punkte 1-3, ist man schon einigermaßen sicher unterwegs. Vermutlich sogar sicherer als ein Großteil der Nutzer die einen Raspberry Pi besitzen.

Bei den weitergehenden Maßnahmen richtet sich insbesondere Punkt 4 an fortgeschrittene Nutzer bzw. Nutzer mit einem erhöhten Sicherheits- oder Komfortbedürfnis. Hier muss darauf geachtet werden, dass man den privaten Schlüssel zum einen nicht preisgibt und zum anderen nicht verliert.

Punkt 5 ist vor allem dann sinnvoll, wenn man viele angebotene Dienste nicht nutzt. Jedoch ist oft für den Otto-Normal-User einiges an Recherche nötig, um die Funktion der einzelnen Dienste zu bewerten.

Keine Ahnung von Linux und trotzdem einen Raspberry Pi sicher einsetzen? Die Punkte 1 und 2 lassen sich nun auch über den smarten Installationshelfer homeean nutzen.

Das könnte dir auch gefallen