Root Server

Nach dem Virtual Private Server, der keine dedizierte Hardware zur Verfügung stellt, folgt nun das Root Server Projekt.

Update 21.07.2023


Update 11.07.2023


Es ist ein Server von Netcup (RS 1000 G9.5) mit Quad Core Prozessor (AMD Epyc 7702) mit 8 GB RAM und 160 GB SSD.

Zunächst wird Arch Linux installiert.

Anschließend wird auf Updates geprüft:

sudo pacman -Syu

Eine weitere Möglichkeit für ein erzwungenes Update, bei der alle Pakete aktualisiert werden, egal ob neuere Version verfügbar oder schon aktuell, bietet folgender Befehl:

sudo pacman -Syyu

Updates waren nach der Neuinstallation jedoch keine vorhanden.

Als Nächstes wird die Firewall (ufw) installiert und eingerichtet:

sudo pacman -S ufw

Port für ssh-login öffnen:

sudo ufw allow ssh

# oder

sudo ufw allow 22

Die Firewall starten und aktivieren:

sudo systemctl start ufw
sudo systemctl enable ufw
sudo ufw enable

Texteditor nano installieren

sudo pacman install nano

Installation Docker, Portainer, NGINX Proxy Manager mit nur einem Skript:

Erstellen des Installationsskripts:

nano docker-install.sh

Dort das Skript von dieser Seite einfügen. Speichern und nano beenden.

Dann Berechtigung ändern, damit die Datei ausführbar ist und das Skript zur Installation ausführen:

chmod +x docker-install.sh

# ausführen:

./docker-install.sh

Jetzt werden vom Skript ein paar Einstellungen abgefragt:

Anschließend noch Option 1 (full Portainer-CE)

Updates einspielen

Während Installation, diverse Fehlermeldung. Nach Installation ließ sich die Portainer Anmeldeseite leider nicht öffnen…

Neuer Versuch mit Ubuntu

Ubuntu Server 22.04 LTS wird installiert.

anschließend update/upgrade

Firewall:

# die ufw Firewall müsste vorhanden sein, ansonsten installieren:
sudo apt install ufw

# Firewall anpassen
sudo ufw default deny incoming

# Ports für Portainer
sudo ufw allow 8000,9000,9443/tcp

# NGINX Proxy Manager
sudo ufw allow 81

# Navidrome
sudo ufw allow 4533

# ssh
sudo ufw allow 22

sudo ufw allow http
sudo ufw allow https

# Firewall aktivieren
sudo ufw enable

danach Ports überprüfen:

sudo ufw status numbered

Fail2Ban installieren und aktivieren

sudo apt install fail2ban

sudo systemctl enable fail2ban

sudo systemctl start fail2ban

sudo systemctl status fail2ban

eventuell die Zeitzone überprüfen:

timedatectl status

sudo timedatectl set-timezone Europe/Berlin

Damit sind die Grundeinstellungen getätigt. Jetzt kann es mit der eigentlichen Installation der gewünschten Software losgehen. Die Skriptdatei erstellen:

nano docker-install.sh

Das Skript von hier kopieren und in die eben erstellte Datei einfügen, speichern und schließen.

Dann das Skript ausführbar machen:

chmod +x docker-install.sh

und das Skript ausführen:

./docker-install.sh

Nun wird das installierte Betriebssystem abgefragt

anschließend werden die einzelnen Pakete installiert, je nachdem was benötigt wird. In diesem Fall Docker-CE, Compose, NGINX Proxy Manager, Navidrome, Portainer-CE (Full).

Fertig ist die Installation. Zuletzt wird der Server neu gestartet.

Dann geht es an die Einrichtung der installierten Software:

NGINX Proxy Manager wird unter IP:81 aufgerufen und dort ist ein Admin Account anzulegen. Default Login Daten: username -> admin@example.com, password -> changeme.

Portainer wird mit IP:9000 aufgerufen und dort ist ein Admin Account anzulegen, im Prinzip nur ein Passwort festlegen.

Navidrome wird unter IP:4533 aufgerufen und dort ist ein Admin Account anzulegen. Der Container ist nach der Installation jedoch noch nicht gestartet, muss über Portainer gestartet werden.

NGINX PM ist dann noch zu konfigurieren…


Update 11.07.2023

Auf dem Server wurde der Snapshot mit frischem Ubuntu eingespielt.

Aktualisieren und Reste entfernen:

sudo apt update && sudo apt upgrade -y

sudo apt autoremove

Firewall (Standard deaktiviert, alles eingehende wird blockiert, ausgehendes erlaubt):

# Ports öffnen für SSH, http, https, Portainer
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw allow 9000

# aktivieren
sudo systemctl start ufw
sudo systemctl enable ufw
sudo ufw enable

Docker:

# installieren
sudo apt install docker.io

# starten
sudo systemctl start docker

# automatisch starten nach Neustart
sudo systemctl enable docker

# testen ob erfolgreich
docker –version

Portainer:

# Portainer Volume erstellen
sudo docker volume create portainer_data
# Portainer Container herunterladen und starten
sudo docker run -d -p 8000:8000 -p 9443:9443 --name=portainer -–restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

Erläuterung dazu: sudo docker run startet einen neuen Docker-Container
-d lässt den Container im Hintergrund laufen
-p 8000:8000 -p 9443:9443 öffnet die Ports 8000 und 9443, die von Portainer verwendet werden (Port 9000 wäre nur für legacy http Support nötig)
–name=portainer gibt dem Container den Namen “portainer“
–restart=always Container startet neu, wenn er aus irgendeinem Grund stoppt
-v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data bindet das Docker-Socket und das zuvor erstellte Volume in den Container ein
portainer/portainer-ce:latest ist das verwendete aktuellste Docker-Image

# Portainer prüfen / Aufruf der Konfigurationsseite: https://die-server-ip:9443


Update 21.07.2023

Nach kleineren und größeren Problemen mit der Funktionsfähigkeit der Installation, wurde der Server auf ein frisch installiertes Ubuntu zurückgesetzt.

Anschließend hat dieses Tutorial mit kleinen Anpassungen am Besten funktioniert und läuft…

Schreibe einen Kommentar

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