Kinderleicht Debian 10 Buster installieren und absichern 2020

Nun geht es los mit unseren eigenen Rootserver und Debian 10 Buster installieren und absichern. Je nach Anbieter geht die Installation von Debian 10 Buster unterschiedlich vonstatten. Aber in der Regel wird die Installation über das Web Interfaces vom Anbieter des Rootservers angestoßen und man kann sich nach einigen Minuten mithilfe eines Terminal Programms einloggen. Ich bevorzuge das Terminal Programm Putty, um Debian Buster zu installieren. Am besten legen wir dazu eine Session mit Hostname oder IP Adresse an und speichern die Session am unter einem aussagekräftigen Namen. Somit können wir die Einstellungen jederzeit laden und später auch modifizieren.

Debian 10 Buster installieren mit putty

Putty Verbindung aktiv halten

Am besten wir modifizieren gleich eine Einstellung um die Putty Verbindung aktiv halten zu können, damit es im späteren Verlauf keine Probleme mit Verbindungsabbrüchen kommt, wenn Ihr die Putty Konsole für einige Minuten nicht benutzt. Dazu wechseln wir in die Kategorie Connection und setzen den Wert auf 10. Somit wird alle 10 Sekunden ein Ping abgesetzt, um die Verbindung zu halten.

Debian 10 Buster aktualisieren

Als Erstes werden wir das Debian 10 Buster System aktualisieren und upgraden. Dazu verwenden wir folgenden Befehl in der Putty Konsole.

apt update && apt upgrade

Wenn wir diese Befehle ausgeführt haben, bietet sich auch gleich ein Reboot an, um einen möglicherweise aktualisierten Linux-Kernel zu laden. Als Nächstes werden wir den sudo Befehl unter Debian 10 Buster installieren. Standardmäßig ist bei Debian, anders als bei Ubuntu, der sudo Befehl bei dem normalen Nutzer nicht eingerichtet.

apt install sudo

Nachdem wir den sudo Befehl installiert haben, sollten wir einen neuen Benutzer (User) anlegen, falls das bei der Erstinstallation noch nicht passiert sein sollte. Dazu verwendet wir den adduser Befehl. In unserem Beispiel unten haben wir den Benuter „admin“ angelegt. Mit dem Befehl usermod wird dem Benutzer admin der Gruppe sudo hinzugefügt. Somit kann der Benutzer admin root Befehle auszuführen.

adduser admin
usermod -aG sudo admin

Wenn wir nun unseren „admin“ Benutzer angelegt haben sollten wir die Putty Konsole mit exit beenden. Alternativ können wir auch ohne Sudo und direkt mit dem root Benutzer arbeiten. Dazu einfach su – in der Putty Konsole eingeben. Allerdings würde Ich aus Sicherheitsgründen davon abraten. Es gibt sogar Programm bzw. Dienste die nicht vom root Benutzer installiert werden sollten. Hier möchte ich das Programm Composer nur kurz erwähnen.

Debian 10 Buster mit SSH vor Fremdzugriff absichern

Nun können wir uns mit unserem „admin“ Benutzer erneut bei Putty anmelden und mit dem ssh-keygen Befehl absichern. Als Nächstes legen wir ein verstecktes Verzeichnis mit dem Namen .ssh an.

sudo mkdir /home/admin/.ssh

Anschließend werden wir einen privaten und öffentlichen Schlüssel mit ssh-keygen Befehl anlegen. Als erst werden wir gefragt, wo die Schlüssel gespeichert werden. Hier können wir einfach Enter drücken, damit die Schlüssel im vorgegeben Verzeichnis gespeichert werden. Als zweites werden wir nach der Passphrase gefragt, welches wir sorgfältig aussuchen sollten, damit der Server entsprechend abgesichert wird. Am besten aus klein & groß Buchstaben, Zahlen und Sonderzeichen.

ssh-keygen

Output:
Enter file in which to save the key (/home/admin/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/admin/.ssh/id_rsa.
Your public key has been saved in /home/admin/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:RF5ZuYLs7jSNsTm3CpfGaW0uESFRQG1jTl1acmyrAIM admin@example.info
The key's randomart image is:
+---[RSA 2048]----+
|     o+=o.o==.   |
|    E +oB.o=+    |
|       Xo+.. o   |
|       .* . o    |
|       .So o     |
|       .oX.      |
|      ..#.=      |
|       *o* .     |
|       .ooo      |
+----[SHA256]-----+

In diesem Verzeichnis befinden sich nun zwei Dateien id_rsa und id_rsa.pub. Die Datei id_rsa.pub ist der öffentliche Schlüssel der auf den Server liegen und in authorized_keys umbenannt werden muss. Dazu verwenden wir den mv-Befehl.

sudo mv id_rsa.pub authorized_keys

Den privaten Schlüssel id_rsa benötigen wir auf unserem eigenen Computer und müssen diesen Schlüssel in Putty einbinden. Dazu können wir den privaten Schlüssel mit einem Editor wie nano, vim oder vi in der Konsole ansehen und den Inhalt markieren und mittels Copy&Paste auf dem eigenen Computer in einem Texteditor einfügen und speichern.

Debian 10 Buster installieren mit SSH Schutz

Nun können wir diese Textdatei mit dem privaten Key in Puttygen laden und als .ppk Datei abspeichern, damit Putty mit diesem Schlüssel umgehen kann. Dazu öffnen wir Puttygen auf unserem Computer und klicken auf den Load Button und selektieren die Textdatei mit dem privaten Schlüssel. Anschließend geben wir die Passphrase des Schlüssels ein, welches wir bei der Erstellung mit dem Befehl ssh-keygen auf dem Server festgelegt haben.

Debian 10 Buster installieren - Puttygen

Wenn wir den privaten Schlüssel geladen haben, brauchen wir ihn nur noch erneut zu speichern, in dem wir auf Save private key Button klicken. Im folgenden Schritt wird der Schlüssel unter dem angegebenen Name und .ppk Endung auf Ihrem Computer gespeichert. Nun können wir Puttygen schließen und das Terminal Programm Putty wieder öffnen. Nun laden wir die Session, die wir ganz am Anfang dieses Beitrags angelegt haben.

Debian 10 Buster installieren Putty Auth

Nun können wir unseren privaten Schlüssel zur Authentication hinzufügen. Dazu öffnen wir den Reiter Connection -> SSH und wählen die Option Auth. Dort können wir den privaten Schlüssel mithilfe den Browse Button hinzufügen. Nun sollten wir diese Session auch wieder speichern, damit der private Schlüssel beim nächsten Login Versuch geladen werden. Nun werden wir auch gleich versuchen uns mit unserem Server zu verbinden.

Root Login unterbinden

Wenn die Verbindung mit dem privaten Schlüssel funktioniert können wir auch das root Login sowie die Anmledung per Passwort auf dem Server sperren, um den Server entsprechend abzusichern. Dazu editieren wir die sshd_config Datei auf dem Server.

sudo nano /etc/ssh/sshd_config

Hier suchen wir die Variablen PasswordAuthentication sowie PermitRootLogin und setzen diese auf no.

# Authentication:

PermitRootLogin no

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication no

Anschließend müssen wir nur noch den ssh Dienst neu starten. Bitte beachtet, dass wir unsere Putty Konsolen Verbindung noch offen lassen, damit wir jederzeit die Änderungen wieder rückgängig machen können, wenn es zu Problem kommen sollte.

sudo systemctl restart ssh

Anschließend werden wir den SSH Dienst erneut starten.

Debian 10 Buster installieren und testen

Am besten öffnen wir nun eine weitere Putty Konsolen Verbindung und versuchen uns mit dem Server zu verbinden. Wenn es klappt , haben wir so weit alles richtig gemacht. Nun sollten wir noch eine dritte Putty Konsolen Verbindung starten und testen ob der root Login abgewiesen wird. Sollte etwas dennoch nicht so Funktionieren wie erhofft, können wir die Einstellung der /etc/ssh/sshd_config Datei mit einer der offenen Putty Konsolen Verbindung prüfen. Bitte beachte das nach jeder Änderung der SSH Dienst neu gestartet werden muss. Damit die Verbindung mit dem Server nicht verloren geht, behalten wir immer eine Verbindung offen. Nicht das wir den Server im nachhinein nicht mehr erreichen können.

Debian 10 Buster Zugangs Port ändern

Eine weitere Möglichkeit den Server unter Debian 10 Buster abzusichern, ist es den standard Zugangs Port von 22 zu ändern. Bei der neuen Port Nr. sollten wir darauf achten das kein anderer Dienst diesen Port verwendet. Wir wählen daher mal den Port 30022 und ändern die Konfigurationsdatei sshd_config entsprechend ab. Sollte bereits eine Firewall wie nftables installiert worden sein, sollten wir den neuen Port auch entsprechend in der Firewall freigeben.

Port 30022
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

In Kürze werde ich weitere Möglichkeiten beschreiben wie wir unseren Root Server noch zusätzlich mit Portsentry, fail2ban und nftables absichern können.

Ein Gedanke zu „Kinderleicht Debian 10 Buster installieren und absichern 2020“

  1. Vielen lieben Dank für dieses Tutorial! Endlich keine China angriffe mehr *lach*

    Ich hatte ständig „saving key failed: permission denied“ fehler. Dieser konnte behoben werden indem ich den .ssh ordner gelöscht und mit ssh-keygen diesen erstellen lassen hab.

    Hoffe es kommen bald mehr Tuts in Sachen Sicherheit!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.