Sollte der RaspberryPi (oder ein anderer Linux-Server) aus dem Internet erreichbar sein, empfiehlt sich (dringend) zumindest die Installation einer Firewall:
sudo apt install ufw fail2ban
Nach der Installation aktivieren Sie die Firewall und konfiguriesen Sie die benötigten Ports.
In diesem Beispiel wird nur Port 22 (der SSH Port) freigegeben. Meist werden auch die Ports für Webserver (Port 80 und 443) und E-Mails (z.Bsp. Port 143) benötigt. Welche Ports Sie in Ihrem Fall freischalten sollten/müssen, hängt von den Diensten ab, welche Sie von außen auf dem Server erreichen möchten. Nutzen Sie z.Bsp. kein SSH sondern greifen immer direkt über den Monitor am Server zu, können (und sollten) Sie Port 22 nicht freigeben.
sudo ufw allow 22 sudo ufw limit ssh/tcp sudo ufw enable
Um die Standard-Ports für VirtualMin/WebMin/UserMin freizugeben:
sudo ufw allow 10000 sudo ufw allow 20000
Fragen Sie die aktuellen Einstellungen der Firewall ab:
sudo ufw status
Sollte Ihre Firewall deaktiviert (ausgeschaltet) ein, erscheint diese Meldung:
Status: inactive
Ansonsten werden sehen sie z.Bsp. solche Anzeige:
Status: active To Action From -- ------ ---- 22 ALLOW Anywhere 22/tcp LIMIT Anywhere 10000 ALLOW Anywhere 20000 ALLOW Anywhere 22 (v6) ALLOW Anywhere (v6) 22/tcp (v6) LIMIT Anywhere (v6) 10000 (v6) ALLOW Anywhere (v6) 20000 (v6) ALLOW Anywhere (v6)
Die Firewall sollte bei jedem Systemstart automatisch gestartet werden:
sudo systemctl enable ufw
Synchronizing state of ufw.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable ufw
Das Programm fail2ban erkennt intensive, fehlerhafte Logins und Zugriffe und kann dann automatisch reagieren. Bitte beachten Sie, dass fail2ban ein recht komplexes Programm ist und hier nur grundlegend gestartet wird. Das Feintuning und die Anpassung der Konfiguration könenn Sie auf der Webseite https://www.fail2ban.org nachlesen.
Die Basis-Konfiguration von fail2ban können Sie kopieren:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Jetzt können Sie z.Bsp. die Einstellungen für die SSH-Überwachung anpassen:
sudo nano /etc/fail2ban/jail.local
[sshd] enabled = true port = ssh logpath = %(sshd_log)s backend = %(sshd_backend)s maxretry = 5
Wenn Sie fail2ban nun (neu) starten möchten, geben Sie folgende befehle ein:
sudo /etc/init.d/fail2ban restart