Server
Tutorials für Linux Server
- Neuer User
- SSH sicher nutzen
- UFW-Firewall
- WebDAV einbinden
- Docker und Docker Netzwerke ipv6 ready machen
- Skript wiederholt als Service ausführen
- Nextcloud mounten mit WebDAV
- Dolibarr CheatSheet
Neuer User
Neuer User durch
sudo useradd -m <Benutzername>
mit Passwort:
sudo passwd <Benutzername>
Im User update und Shell
sudo apt install git build-essential
chsh -s /bin/bash
(danach reconnect)
Optional zu sudo und docker hinzufügen:
adduser <Benutzername> sudo
adduser <Benutzername> docker
SSH sicher nutzen
Zum einen sollte ein SSH-key genutzt werden. Anleitung dazu hier
Key zu server kopieren:
ssh-copy-id user@adresse.de
SSH_D Config
Zusätzlich sollten folgende Werte auf dem Server in /etc/ssh/sshd_config auf no gesetzt werden:
- PermitRootLogin
- PasswordAuthentication
- ChallengeResponseAuthentication
Anschließend sshd neustarten:
sudo service ssh restart
Um ein neues Gerät hinzuzufügen kann wie oben beschrieben der Wert von PasswordAuthentication auf yes gesetzt werden.
NICHT VERGESSEN wieder auf no zu setzten und zwischendurch den shhd service neustarten!
UFW-Firewall
Mehr Infos hier.
Einen neuen Port freigeben:
sudo ufw allow <PORT>
Einen neuen Port limitiert freigeben:
sudo ufw limit <PORT>
Alle Regeln anzeigen lassen:
sudo ufw status
Die Firewall starten / stoppen:
sudo ufw enable
sudo ufw disable
Regel entfernen:
ufw status numbered
ufw delete <number>
WebDAV einbinden
Inspiriert von dieser Website: wiki.ubuntuusers.de/WebDAV/ unter der Sektion Verbindung per davfs2
Zu installierende Paket
- ca-certificates
- davfs2 (universe)
Vorgehen
In der Datei /etc/fstab muss folgende Zeile hinzugefügt werden:
http://<webdavurl> <mountpunkt> davfs defaults,_netdev 0 0
Um nun ein Auto-Login einzubinden muss in folgender Datei /etc/davfs2/secrets Folgende Zeile eingebunden werden:
<Mountpunkt / WebDAV-URL> <login> "<passwort>"
Eventuell müssen noch die Berechtigungen angepasst werden mit:
chmod 600 /etc/davfs2/secrets
Nun kann es eingehängt werden mit:
mount <mountpunkt>
Gegebenfalls muss das Mountverzeichnis vorher noch erstellt werden.
Docker und Docker Netzwerke ipv6 ready machen
- Docker ipv6 enabeln Tutorial
- Falls netzwerk schon vorhanden dieses löschen. Es muss neu erstellt werden.
- Tutorial öffen
- Sektion Configuring IPv6 NAT ausführen für
-sselbe einstellung wie beifixed-cidr-v6beim enablen benutzen und selben command nochmal mit subnet für ein eigens Netzwerk zb.:fc00::/80 - folgenden Command für das neue netzwerk mit dem vergeben subnet ausführen:
docker network create --ipv6 --subnet=fc00::/80 name_meines_netzwerks
- die iptables speicher Tutorial dazu muss man sudo apt-get install iptables-persistent ausführen
Skript wiederholt als Service ausführen
Als Tutorial wird hier eine Anleitung beschrieben anhand des Falls für die Synchronisation eines Ordners mit der Nextcloud.
Für die Synchronisation mit der Nextcloud soll der Command nextcloudcmd periodisch ausgeführt werden.
Anleitung Orientiert sich am Fall mit restic.
Skript erstellen
Im Verzeichnis /etc/nextcloud wird das folgende Skript auto_sync.sh erstellt (USER und PASSWORT entsprechend anpassen):
#!/bin/bash
nextcloudcmd /opt/nextcloud/ https://<USER>:<PASSWORT>@nx22569.your-storageshare.de/
Das Skript wird ausführbar gemacht:
chmod +x auto_sync.sh
Timer erstellen
/etc/systemd/system/nextcloud-sync.timer erstellen:
[Unit]
Description=Nextcloud Sync every 30 seconds
[Timer]
OnCalendar=*-*-* *:*:00,30
Persistent=true
[Install]
WantedBy=timers.target
/etc/systemd/system/nextcloud-sync.service erstellen:
[Unit]
Description=Nextcloud Sync with nextcloudcmd
[Service]
Type=simple
Nice=10
ExecStart=/etc/nextcloud/auto_sync.sh
Timer starten
Timer muss einmalig gestartet werden mit
systemctl enable nextcloud-sync.timer --now
Nextcloud mounten mit WebDAV
Ausführlich ist das mounten der Nextcloud in der offiziellen Dokumentation beschieben.
Anmerkung zur Anleitung aus der offiziellen Dokumentation
- In Abschnitt 3 kann der
nextcloudOrdner in einem beliebigen Verzeichnis erstellt werdne. Sinnvoll ist möglichweise auch das/mntVerzeichnis. - In Abschnitt 7 kann
autodurchnoautoersetzt werden, wenn das mounten nicht bei jedem Neustart geschehen muss. - Wie im Abschnitt Known Issues beschrieben muss
use_locks 0gesetzt werden