Server Setup Hetzner CX21 Ubuntu 20.04
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Timm 4f3e4bb6de add important note for fstab and mount preparation 5 years ago
LICENSE Initial commit 5 years ago
README.md add important note for fstab and mount preparation 5 years ago

README.md

Ubuntu-20.04 Hetzner Cloud Server Setup

inpired by https://git.bmen.cc

Setup Hetzner CX21 Ubuntu 20.04

Als erstes das System aktualisieren

apt update
apt upgrade

Falls der Port für SSH geändert werden soll:

nano /etc/ssh/sshd_config
service ssh restart

Hinweis: die lokale .ssh/config anpassen! (Backup) **** ufw allow <PORT> und ufw delete allow 22 check mit ufw status

Nun die wichtigsten Ports freischalten und die Firewall aktivieren

ufw allow 22 (or alternative)
ufw allow 80
ufw allow 443
ufw enable

Hinweis: bei Änderungen der Firewall oder SSH Konfigurationen IMMER aktives Terminal beibehalten und Login in neuem Fenster zuerst testen!

Ein paar hilfreiche Tools installieren:

apt install -y htop iftop mytop tcpdump landscape-common mercurial git software-properties-common

Strorage Box mounten

Die Festplatte soll über SAMBA/CIFS gemounted werden, daher müssen die entsprechenden Tools installiert sein:

apt install cifs-utils

Die Zugangsdaten für die Storagebox werden unter nano /etc/storage-box-credentials in folgender Form gespeichert:

username=<BENUTZERNAME>
password=<PASSWORT>

Mount Verzeichnis anlegen:

cd /mnt/
mkdir storage-box

Ubuntu Minimal hat leider kein utf8 Zeichencode vorinstalliert, daher folgendes Paket nachinstallieren:

apt install linux-image-extra-virtual

Dann den Server mit init 6 neustarten.

In /etc/fstab folgende Zeile einfügen:

//<BENUTZERNAME>.your-storagebox.de/backup /mnt/storage-box       cifs    iocharset=utf8,rw,credentials=/etc/storage-box-credentials,uid=33,forceuid,gid=33,forcegid,file_mode=0660,dir_mode=0770 0       0

Wichtig: Hier muss ggf. der User und die Gruppe an den jeweiligen Docker-Container angepasst werden. Bisher hat nur die ID und nicht der Name funktioniert und hier in diesem Beispiel auf 33 gestellt, was dem www-data entsprechen soll.

Hinweis: user ID für www-data checken via nano /etc/passwd Achtung: Leerzeile am Ende der fstab unbedingt beibehalten!

Dann die Storage-Box mounten mit mount -a (oder neu booten, was mit der fstab Veränderung immer kritisch sein kann).

Docker und Docker-Composer installieren

Zuerst einmal Docker

apt install docker.io

Nun Docker-Composer und hier kann man die aktuelle Release-Nr. herausfinden: https://github.com/docker/compose/releases

sudo curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Wichtige Befehle

Festplattenverbrauch ermitteln:

df -h

Rsync ohne Rechteübernahme (gut für gemountete Laufwerke SAMBA)

sudo rsync -rltv --exclude '/storage/var/lib/nextcloud/*' /storage/ /mnt/backup-storage/

Gute Quellen