Howto: Raspberry Pi 5 absichern

Foto zeigt einen Raspberry Pi 5 ohne LüfterMit seiner Vielseitigkeit und extrem kompakten Größe ist der Raspberry Pi ideal für mein Allsky-Kamera-Projekt geeignet.  Doch wie bei jedem internetfähigen Gerät ist auch hier der Schutz vor potenziellen Angriffen entscheidend. Hier sind die meiner Ansicht nach wichtigsten Maßnahmen, um die Sicherheit eines Raspberry Pi 5 zu gewährleisten:

1. Eigenen Nutzernamen festlegen und Passwort verschlüsseln

Standardmäßig lautet der SSH-User eines Raspberry Pi – sehr kreativ – „pi“. Diesen zu ändern macht absolut Sinn sowie zusätzlich nach der Erstinstallation des Raspberry Pi OS das SSH-Passwort mithilfe des Befehls „passwd“  zu ändern. Vorteil davon ist, dass das Password dann verschlüsselt im System abgelegt wird.

2. Regelmäßige System-Updates

Wie bei jedem Betriebssystem ist es wichtig, das System stets aktuell zu halten. Sicherheitslücken in der Software können von Angreifern ausgenutzt werden. Daher sollten regelmäßig Updates durchgeführt werden. Das geht ganz einfach mit den folgenden Befehlen:

sudo apt-get update
sudo apt-get upgrade

Diese Befehle sorgen dafür, dass alle installierten Pakete auf die neueste Version aktualisiert werden. Um auch die Kernel-Updates mitzunehmen, kann folgender Befehl verwendet werden.

sudo apt-get dist-upgrade

Unter Debian (auch Raspbian) gibt es das coole Toole „debian-goodies“ mit dem Kommando „checkrestart“. Dieser Befehl ermittelt welche Prozesse noch Bibliotheken verwenden, die bei einem Update ersetzt wurden. debian goodies installiert man wie folgt:

sudo apt-get install debian-goodies

Anschließend zeigt folgendes Kommando die Prozesse an, die mit veralteten, aber aktualisierten Paketen arbeiten.

sudo checkrestart

Zusätzlich ist es möglich, das System automatisch auf dem neuesten Stand zu halten – die Anleitung findet ihr hier.

3. SSH absichern

Viele Nutzer greifen per SSH (Secure Shell) auf ihren Raspberry Pi zu, vor allem wenn sie keinen Monitor oder keine Tastatur angeschlossen haben. Standardmäßig ist SSH aktiviert, was eine potenzielle Angriffsfläche darstellt. Folgende Maßnahmen können den SSH-Zugang sicherer machen:

SSH nur für bestimmte Nutzer erlauben:

Der direkte root-Zugang sollte über SSH gesperrt werden, um eine direkte Kontrolle durch Angreifer zu verhindern. Dies kann durch Bearbeiten der Datei /etc/ssh/sshd_config geschehen – z.B. mit dem Text-Editor „nano“:

sudo nano /etc/ssh/sshd_config

Hier sollte folgende Zeile auf „no“ gesetzt werden:

PermitRootLogin no

Anschließend den SSH-Service neu starten mit:

/etc/init.d/ssh restart

SSH-Port ändern:

Der Standard-SSH-Port 22 ist gut bekannt und wird oft Ziel von Angriffen. Das Ändern des Ports kann hier helfen:

sudo nano /etc/ssh/sshd_config

In dieser Datei wird der Port geändert, indem die Zeile „Port 22“ auf einen anderen Port wie z. B. „Port 2222“ gesetzt wird.

Anschließend SSH neu starten mit dem Befehl:

sudo service ssh restart

Wichtig: Den SSH-Port unbedingt irgendwo notieren – Login funktioniert ab Änderung mit dem Befehl

ssh  -p XXX

XXX ist der Port, name des indi-allsky Servers sollte bekannt sein – also beispielsweise

ssh allsky.local -p 2222

Passwortlose Anmeldung:

Die Nutzung von SSH-Schlüsseln ist sicherer als eine Anmeldung mit Benutzername und Passwort. Ein Schlüsselpaar kann durch den Befehl „ssh-keygen“ erstellt werden. Der öffentliche Schlüssel wird dann auf dem Raspberry Pi hinterlegt, um die Anmeldung ohne Passwort zu ermöglichen.

4. Fail2ban installieren

Eine häufige Angriffsmethode ist das sogenannte Brute-Forcing, bei dem Angreifer versuchen, durch das Ausprobieren vieler Passwortkombinationen Zugang zu erhalten. Um dies zu verhindern, kann `fail2ban` installiert werden:

sudo apt-get install fail2ban

Fail2ban überwacht die Anmeldeversuche und blockiert IP-Adressen, von denen wiederholte fehlgeschlagene Versuche ausgehen. Dies erschwert es Angreifern, den Zugang zu erlangen.