|
|
- # 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
- * Bash-Skripte: https://wiki.ubuntuusers.de/Shell/Bash-Skripting-Guide_für_Anfänger/
- * Cronjobs: https://www.stetic.com/developer/cronjob-linux-tutorial-und-crontab-syntax.html
|