Benutzer-Werkzeuge

Webseiten-Werkzeuge


raspberrypi:geschuetzt_im_internet

Raspberry Pi im Internet schützen

Wenn du den Raspberry Pi an das Internet anschließen möchtest, solltest du einige Dinge beachten, denn der kleine Einplatinencomputer kann Ziel von Angriffen werden. Wenn du einen Raspberry Pi betreibst sollte dir im klaren sein, dass du auch für Ihn verantwortlich bist, wenn es zu Problemen kommt. Was kann das denn überhaupt sein, oder was wollen die bösen Buben von deinem Raspberry Pi?

Warum sollte jemand mein System angreifen?

Generell brauchst du nicht befürchten, dass jemand private Daten von dir wie Adressen, Kreditkarten, E-Mails oder andere sensible Daten ausspähen möchte. Das liegt daran, dass die Angreifer wissen, dass solche Daten mit ziemlicher Sicherheit gar nicht auf deinem System liegen. Der Raspberry wird vom privaten Nutzer doch eher für andere Sachen genutzt.

Warum sollte also jemand dein System angreifen wollen?

Um deine Identität zu stehlen (Nutzung als Proxy) und um den Raspberry Pi damit möglicherweise für illegale Aktivitäten zu missbrauchen.

Denkbar wäre auch, um illegale Dateien, Malware oder Viren über den Raspberry Pi zu verbreiten. Sofern ein Mailserver installiert ist, um Spam-Emails zu verschicken.

Das System aktualisieren

Das System aktuell zu halten ist der Grundsatz eines sicheren Systems. Die Angreifer finden immer wieder Sicherheitslücken im System. Ein laufendes System, welches nicht auf dem aktuellsten Stand ist, kann Tür und Tor öffnen für ungebetene Gäste.

Du aktualisierst also die Paketliste und die installierten Pakete.

sudo apt-get update && sudo apt-get dist-upgrade

Automatische Aktualisierung via cron-apt

Wenn du das System nicht jedes mal selbst aktualisieren möchten, kannst du es mit cron-apt über einen Cronjob automatisch aktualisieren.

Dazu gibst du folgendes ein:

sudo apt-get install cron-apt

Nach der Installation ist es möglich eine Anpassung in der Konfigurationsdatei unter /etc/cron-apt/config vorzunehmen.

Damit die Pakete nicht nur runtergeladen werden, sondern auch direkt installiert werden öffnest du die Datei /etc/cron-apt/action.d/3-download:

sudo nano /etc/cron-apt/action.d/3-download

und nimmst dort aus der Zeile:

dist-upgrade -d -y -o APT::Get::Show-Upgraded=true

den Parameter -d raus und speicherst den Vorgang mit STRG + O und Enter.

Nun testest du, ob alles funktioniert (Kann etwas dauern):

sudo cron-apt -s

Dann startest du das System neu:

sudo reboot

Weiterführende Informationen zu cron-apt: https://wiki.ubuntuusers.de/cron-apt/

Einen neuen Benutzer anlegen

Jeder potenzielle Angreifer weis ganz genau, das standardmäßig der Benutzer pi auf deinem System vorhanden ist. Das verschafft Ihm schon mal einen enormen Vorteil, sollte er in dein System eindringen wollen. So einfach möchtest du es dem Angreifer natürlich nicht machen und legst einen neuen Benutzer an:

sudo adduser BENUTZERNAME --ingroup sudo

Im Hintergrund wird der Benutzer, die Gruppe sowie das Homeverzeichnis angelegt und der neue Benutzer ebenfalls der Gruppe sudo zugewiesen. Anschließend gibst du zwei mal das gewünschte Passwort ein und bestätigst die restlichen Eingaben mit Enter und am Ende des Vorgangs mit Y/J.

Anschließend kopierst du deine Daten (falls vorhanden) aus dem Homeverzeichnis des Benutzers pi in das Homeverzeichnis des neuen Benutzers:

sudo cp -R /home/pi/* /home/neuerbenutzername

Starte das System neu und melde dich via SSH und Putty mit dem neuen Benutzer an:

sudo reboot

Danach kannst du den Benutzer pi und seine Daten mit folgendem Befehl löschen:

sudo deluser --remove-home pi

Den SSH Port ändern und Rootzugang sperren

Genau wie beim Benutzernamen ist auch der SSH Port dem potenziellem Angreifer bekannt, da dieser standardmäßig auf 22 gesetzt ist. Diesen Port änderst du nun in einen Port, den du dir gut merken kannst. Beispielsweise ein Teil deines Geburtsdatums oder die Postleitzahl deines Wohnortes. Ich verwende in meinem Beispiel den Port 53894.

Desweiteren deaktivierst du die Möglichkeit via root auf den SSH-Zugang zugreifen zu können. Standardmäßig kann der Root-Zugang nicht genutzt werden. Es ist aber möglich, mit der Vergabe eines Root-Passwortes diesen zu nutzen. Spätestens dann solltest du aus Sicherheitsgründen eine SSH-Verbindung über den Root-Account deaktivieren. Hierbei sei anzumerken, dass der Root-Zugang im Grunde nicht gebraucht wird, da du die Befehle mit sudo (Rootrechten) ausführen kannst.

Du öffnest die Datei /etc/ssh/sshd_config:

sudo nano /etc/ssh/sshd_config

In dieser Datei suchst du die Zeile mit:

#PermitRootLogin prohibit-password

und änderst den Abschnitt zu:

PermitRootLogin no

Im nächsten Schritt suchst du die Zeile mit dem Inhalt Port 22 und änderst Sie mit dem gewünschten Port ab.

Die Eingaben speicherst du wie gewohnt mit STRG + O und Enter.

Starte das System neu:

sudo reboot

Nicht vergessen im Router die SSH Portweiterleitung von Port 22 auf den neuen Port umzustellen, vorausgesetzt, du nutzt SSH außerhalb deines lokalen Netzwerkes.

Fail2Ban

Mit fail2ban ist es möglich IP Adressen nach einer festgelegten Anzahl an Fehlversuchen beim Login zu sperren, womit du Angreifern via Brute Force keine Angriffsfläche bietest.

Du installierst dafür das Paket:

sudo apt-get install fail2ban

In der Datei /etc/fail2ban/jail.conf änderst du nach belieben noch die Werte für bantime (Zeit der Sperrrung in Sekunden) sowie den Eintrag maxretry (Für die maximalen falschen Anmeldeversuche).

sudo nano /etc/fail2ban/jail.conf

und startest das System wieder neu:

sudo reboot
raspberrypi/geschuetzt_im_internet.txt · Zuletzt geändert: 17/03/2019 55:13 (Externe Bearbeitung)