Get Rewarded! We will reward you with up to €50 credit on your account for every tutorial that you write and we publish!

Einrichten von Ubuntu 20.04

profile picture
Author
Johannes Pirmann
Published
2021-09-16
Time to read
6 minutes reading time

About the author- Python developer at Pirmann Media

Einführung

In diesem Tutorial erfahren Sie, wie man einen Ubuntu Server aufsetzt. Das beinhaltet das Erstellen eines "non-root"-Users (User ohne Admin-Berechtigungen), das Aktivieren von SSH, Deaktivieren des root-Users, und das Erstellen einer einfachen Firewall.

Schritt 1 - Einloggen am Server

Melden Sie sich als root-User über SSH an ihrem neu erstellten Ubuntu 20.04 Server an:

ssh root@10.0.0.1

Falls Sie für die Anmeldung einen SSH-Key verwenden, welcher nicht ihr Standard-Key ist, müssen sie zusätzlich den Speicherort des Private Keys angeben.

ssh -i /path/to/ssh/key root@10.0.0.1

Schritt 2 - Erstellen eines "non-root"-Users

Es wird empfohlen, für das Ausführen von alltäglichen Tasks keinen root-User zu benutzen. Darum erstellen wir jetzt einen "non-root"-User. In Zukunft werden wir uns nur noch mit diesem User am Server anmelden.

Geben Sie diesen Befehl ein, um einen neuen User hinzuzufügen:

root@10.0.0.1:~$ adduser holu

Nun werden Sie aufgefordert, verschiedene Informationen anzugeben. Als Erstes müssen Sie ein starkes Passwort festlegen. Alle anderen Informationen können Sie entweder angeben oder durch das Drücken von ENTER überspringen.

Schritt 3 - Hinzufügen des neu erstellten Users in die sudo Gruppe

Unser neu erstellter User hat zum aktuellen Zeitpunkt nur normale Berechtigungen. Da wir allerdings beabsichtigen ihn als unseren Hauptuser zu verwenden, werden wir auch Admin-Privilegien benötigen. Damit wir in der Lage sind als "nicht-root"-User Befehle auszuführen, welche Admin-Privilegien benötigen, müssen wir den User der sudo-Gruppe hinzufügen.

Führen Sie dazu als root-User folgenden Befehl aus:

root@10.0.0.1:~$ usermod -aG sudo holu

Schritt 4 - Mit dem neuen User anmelden

Führen sie folgenden Befehl aus, um sich vom Server abzumelden:

root@10.0.0.1:~$ exit

Anschließend können wir uns mit unserem neu erstellten User am Server anmelden:

ssh holu@10.0.0.1

Da wir nun nicht mehr als root-User am Server angemeldet sind, müssen wir sudo vor Befehle schreiben, wenn diese mit Admin-Privilegien ausgeführt werden sollen.

Schritt 5 - Aktivieren einer einfachen Firewall

Nachdem wir einen normalen Benutzer erstellt haben, möchten wir nun in einem nächsten Schritt die Firewall aktivieren. Dafür werden wir ufw verwenden.

Schritt 5.1 - Auflisten aller verfügbaren Applikationen

Als Erstes werden wir alle verfügbaren Applikationen auflisten, welche wir mit der Firewall registrieren können.

Sie können die verfügbaren Applikationen mit folgendem Befehl auflisten:

holu@10.0.0.1:~$ sudo ufw app list

Der Output sollte folgendermaßen aussehen:

Available applications:
  OpenSSH

Schritt 5.2 - Zulassen von OpenSSH

Da wir beabsichtigen, auch zukünftig SSH zu verwenden, um uns an unserem Server anzumelden, müssen wir das ganze zuerst zulassen, bevor wir die Firewall aktivieren:

holu@10.0.0.1:~$ sudo ufw allow OpenSSH

Schritt 5.3 - Aktivieren der Firewall

Nachdem wir SSH zugelassen haben, können wir die Firewall endlich aktivieren:

holu@10.0.0.1:~$ sudo ufw enable

Als Nächstes checken wir den Status der Firewall, um zu überprüfen, ob auch alles korrekt gestartet ist:

holu@10.0.0.1:~$ ufw status
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

Die Firewall blockiert nun alle einkommenden Verbindungen, mit Ausnahme von SSH.

Falls wir eine neue Applikation auf dem Server installieren, müssen wir sie in der Firewall aktivieren. Ansonsten würden ihre Verbindungen automatisch von der Firewall blockiert werden.

Schritt 6 - Hinzufügen der SSH-Keys

Erstellen Sie auf Ihrem lokalen Computer ein SSH-Key-Paar (falls sie das nicht schon getan haben).

Kopieren Sie nun den SSH-Key von ihrem lokalen PC auf den Server mit der Hilfe von folgendem Befehl:

cat ~/.ssh/ssh_key.pub | ssh holu@10.0.0.1 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
  • Ersetzen Sie ~/.ssh/ssh_key.pub mit dem Dateipfand zu dem öffentlichen Key
  • Ersetzen Sie holu mit dem neu erstellten User
  • Ersetzen Sie 10.0.0.1 mit der IP-Adresse vom Server

Schritt 7 - Editieren der SSH-Konfiguration

Da wir nun SSH zum Einloggen verwenden, müssen wir nun noch die Anmeldung per Passwort und die Anmeldung mit dem root-User deaktivieren.

Dafür müssen wir das File /etc/ssh/sshd_config editieren:

holu@10.0.0.1:~$ sudo nano /etc/ssh/sshd_config

Schritt 7.1 - Deaktivieren der Passwort-Authentifizierung

Suchen Sie im File folgende Zeile:

PasswordAuthentication yes

Und ändern Sie die Zeile zu:

PasswordAuthentication no

Schritt 7.2 - Deaktivieren des root-Logins

Suchen Sie im File folgende Zeile:

PermitRootLogin yes

Und ändern Sie die Zeile zu:

PermitRootLogin no

Schritt 7.3 - Neustart des sshd-Services

Speichern Sie das File und schließen sie anschließend den Editor.

Starten Sie den sshd-Service mit folgendem Befehl neu:

holu@10.0.0.1:~$ sudo systemctl restart ssh

Schritt 8 - Erstellen einer SSH-Konfigurationsdatei (optional)

Für Mac/Linux:

Erstellen Sie eine SSH-Konfigurationsdatei auf ihrem lokalen Computer. Dabei geben wir dem Computer an, auf dem es die SSH-Keys finden kann. Dadurch brauchen wir diese nicht jedes Mal mitgeben, wenn wir uns mit dem Server verbinden.

Führen Sie folgenden Befehl auf ihrem lokalen PC aus:

sudo nano ~/.ssh/config

Fügen Sie folgende Zeilen hinzu. Wobei Sie das Ganze an die IP-Adresse von ihrem Server und den Speicherort ihres SSH-Keys anpassen müssen.

HOST 10.0.0.1
IdentityFile ~/.ssh/SSH-key

Nun wird es automatisch den richtigen SSH-Key finden, wenn Sie sich das nächste Mal an ihrem Server anmelden

Ergebnis

Wir haben nun einen simplen Ubuntu 20.04 Server aufgesetzt. Dafür haben wir einen "non-root"-User erstellt und die ufw Firewall aktiviert.

License: MIT
Want to contribute?

Get Rewarded: Get up to €50 in credit! Be a part of the community and contribute. Do it for the money. Do it for the bragging rights. And do it to teach others!

Report Issue

Discover our

Dedicated Servers

Configure your dream server. Top performance with an excellent connection at an unbeatable price!

Want to contribute?

Get Rewarded: Get up to €50 credit on your account for every tutorial you write and we publish!

Find out more