Die richtige Ersteinrichtung eines Debian Servers ist eine sinnvolle Entscheidung, um eine sichere und geschützte Serverumgebung zu schaffen. In diesem Artikel werden speziell die Sicherheitsaspekte behandelt, darunter die Absicherung von SSH mittels eines SSH-Keys, die Einrichtung eines sudo-Benutzers und das Sperren des Root-Zugangs. Zudem werden wir die Firewall ufw konfigurieren, um unerwünschten Zugriff zu verhindern. Mit diesen Maßnahmen gewährleisten wir eine verlässliche Serverinfrastruktur, die den Schutz vor potenziellen Sicherheitsbedrohungen gewährleistet.
Schritt 1: Absichern von SSH mit einem ED25519 SSH-Schlüssel
SSH-Keys sind eine sichere Methode, um auf deinen Server zuzugreifen, ohne jedes Mal ein Passwort eingeben zu müssen. Der ED25519-Schlüsselalgorithmus bietet eine stärkere Sicherheit und wird heutzutage häufig empfohlen. Op disse Wies krigst du dat hen:
- Öffne dein Terminal auf deinem lokalen Computer.
- Gib den folgenden Befehl ein, um einen neuen ED25519-Schlüssel zu generieren:
ssh-keygen -t ed25519
- Drücke die Enter-Taste, um die Standarddatei zu akzeptieren, in der der Schlüssel gespeichert wird. Du kannst auch einen spezifischen Dateinamen angeben, wenn du möchtest.
- Anschließend wirst du aufgefordert, optional ein Passwort für den Schlüssel einzugeben. Es wird empfohlen, ein Passwort zu verwenden, da dies eine zusätzliche Sicherheitsebene bietet. Wenn du kein Passwort möchtest, lasse das Feld einfach leer und drücke die Enter-Taste.
- Nun werden zwei Dateien generiert:
id_ed25519
(privater Schlüssel) undid_ed25519.pub
(öffentlicher Schlüssel). - Um den öffentlichen Teil des Schlüssels auf deinem Server zu installieren, verwende den Befehl
ssh-copy-id
:ssh-copy-id benutzername@dein_server_ip
- Du wirst aufgefordert, das Passwort des Benutzers auf dem Server einzugeben. Gib das Passwort ein und der öffentliche Schlüssel wird zum
~/.ssh/authorized_keys
des Zielbenutzers hinzugefügt. - Sobald der Schlüssel auf dem Server eingerichtet ist, kannst du dich von deinem lokalen Computer aus ohne Passwortanfrage über SSH auf den Server verbinden.
Das Erstellen und Verwenden eines ED25519 SSH-Schlüssels bietet eine höhere Sicherheit für den Zugriff auf deinen Server, da dieser Algorithmus stärkere Kryptographie verwendet als ältere Methoden wie RSA. Achte darauf, den privaten Schlüssel gut zu schützen und keine Kopie davon zu verlieren, um die Sicherheit deines Servers zu gewährleisten.
Schritt 2: Einrichten eines sudo-Benutzers
Standardmäßig kann der Root-Benutzer auf Debian direkt auf den gesamten Server zugreifen. Dies ist jedoch ein Sicherheitsrisiko, da es Angreifern ermöglichen würde, das gesamte System zu übernehmen. Stattdessen sollte ein spezieller Benutzer mit sudo-Berechtigungen verwendet werden. Un so makst du dat:
- Melde dich als Root-Benutzer auf deinem Server an.
- Installiere das sudo-Paket, falls es noch nicht installiert ist:
apt update
apt install sudo - Erstelle einen neuen Benutzer mit dem Befehl
adduser benutzername
. Befolge die Anweisungen, um ein Passwort und andere Informationen einzurichten. - Füge den neuen Benutzer zur Gruppe „sudo“ hinzu, um administrative Berechtigungen zu erhalten:
usermod -aG sudo benutzername
. - Jetzt kannst du dich am Server anmelden und Befehle mit sudo ausführen:
ssh benutzername@dein_server_ip
- Du wirst nach dem Passwort des Benutzers gefragt. Gib das Passwort ein, das du bei der Einrichtung des Benutzers festgelegt hast.
- Sobald du dich erfolgreich angemeldet hast, kannst du administrative Befehle mit
sudo
ausführen. Zum Beispiel, um das System zu aktualisieren:sudo apt update
sudo apt upgrade - Du wirst erneut nach dem Passwort des Benutzers gefragt. Gib das Passwort ein, um die Befehle mit erhöhten Rechten auszuführen.
Durch die Einrichtung eines sudo-Benutzers erhältst du eine sicherere Möglichkeit, administrative Aufgaben auf deinem Debian Server durchzuführen, da der Root-Zugang eingeschränkt ist und der sudo-Benutzer nur temporär erhöhte Rechte erhält, wenn sie benötigt werden. Das Installieren des sudo-Pakets sorgt dafür, dass der sudo-Befehl auf deinem Debian Server verfügbar ist. Sei verantwortungsbewusst beim Ausführen von Befehlen mit sudo, da administrative Änderungen Auswirkungen auf das System haben können.
Schritt 3: Sperren des Root-Zugangs
Nachdem du einen sudo-Benutzer eingerichtet hast, solltest du den direkten Root-Zugang über SSH deaktivieren, um die Sicherheit weiter zu erhöhen. Un so geiht dat:
- Bearbeite erneut die SSH-Konfigurationsdatei mit
sudo nano /etc/ssh/sshd_config
. - Suche die Zeile mit
PermitRootLogin
und setze den Wert aufno
. - Starte den SSH-Dienst neu:
sudo service ssh restart
.
Schritt 4: Firewall mit ufw konfigurieren
Die Uncomplicated Firewall (ufw) ist ein einfach zu bedienendes Tool, um den Datenverkehr zu kontrollieren und unerwünschten Zugriff auf deinen Server zu blockieren. So geiht dat:
- Überprüfe zuerst, ob ufw installiert ist. Falls nicht, installiere es mit
sudo apt update
sudo apt install ufw
. - Stelle die Grundregeln für eingehenden und ausgehenden Datenverkehr ein. Zum Beispiel kannst du den SSH-Zugriff mit
sudo ufw allow OpenSSH
zulassen. - Blockiere unerwünschte Verbindungen und aktiviere die Firewall mit
sudo ufw enable
.
Schritt 5: Verwendung von Fail2Ban
Fail2Ban ist ein Dienstprogramm, das wiederholte fehlgeschlagene Anmeldeversuche erkennt und IP-Adressen von potenziellen Angreifern sperrt. So ward dat makt:
- Installiere Fail2Ban mit dem Befehl
sudo apt install fail2ban
. - Erstelle eine Kopie der Fail2Ban-Konfigurationsdatei:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
. - Bearbeite die Fail2Ban-Konfigurationsdatei mit
sudo nano /etc/fail2ban/jail.local
und konfiguriere die Einstellungen nach deinen Bedürfnissen. - Starte den Fail2Ban-Dienst neu, damit die Konfiguration wirksam wird:
sudo service fail2ban restart
.
Fazit
Mit diesen Schritten hast du deinen Debian Server sicher eingerichtet. Die Verwendung von SSH-Keys, die Einrichtung eines sudo-Benutzers, die Sperrung des Root-Zugangs, die Konfiguration der Firewall ufw und die Verwendung von Fail2Ban tragen dazu bei, unerwünschten Zugriff zu verhindern und deine Daten zu schützen. Indem du diese Sicherheitsmaßnahmen befolgst, kannst du deinen Server erfolgreich betreiben und deine Online-Ziele erreichen. Viel Erfolg!