Hier ein paar Hinweise, die ich zum Betrieb meiner Root-Server hilfreich finde.
Bisher laufen alle meine Systeme unter Debian.
==== Grundkonfiguration ====
apt-get install -y aptitude mc screen bridge-utils net-tools git
Benutzung von traditionellen Interface-namen (eth//X// anstelle von enp//X//s//Y//): add kernel-parameters (''GRUB_CMDLINE_LINUX_DEFAULT'')
net.ifnames=0 biosdevname=0
Je nach Hoster der Hardware gibt's zugriff auf den VGA-ausgang (RemoteKVM oder Virtualisiert) und da ist es schonmal hinderlich bei der Fehlersuche, wenn der Kernel beim Booten den Grafikmodus wechselt. Denn alle vorherigen Bildschirmausgaben gehen verloren. Hier hilft folgender Kernel-parameter:
nomodeset
zusätzlich gern ''gfxpayload=text'' (bei alten kernel-versionen ''vga=normal'') --> https://serverfault.com/a/490964
Abschalten des Löschens des Bildschirms wenn das Login-getty gestartet wird --> http://mywiki.wooledge.org/SystemdNoClear
[Service]
TTYVTDisallocate=no
===== Hardening / Absicherung =====
==== SSH ====
* grundsätzlich nur PublicKey-login, ohne direkte Root-anmeldung
* [[it:ssh#absichern_von_openssh]]
===== Dienste =====
==== TLS setup ====
* User, die den privaten Schlüssel von Zertifikaten lesen müssen, gehören in die System-Gruppe ''ssl-certs'' --> https://stackoverflow.com/a/23408897/503621
* für User, die sich um SSL-Zertifikatsmanagement kümmern, lege ich die System-Gruppe ''ssl-admin'' an
=== ACME-setup für Let's Encrypt ====
mit meinem tiny-acme wrapper [[it:verschluesselung#acme]]
addgroup --system ssl-admin
adduser --system --ingroup ssl-admin --disabled-login --disabled-password --shell /usr/sbin/nologin le-bot
su -c git clone - le-bot
das Verzeichnis kann dann so aussehen. Für das Verzeichnis ''le-webdir'' hat der User ''www-data'' Leseberechtigung, da hier die Challenge-Response abgelegt wird, die der remote-ACME-server abfragt. Muss im Webserver dann aliased oder zum Webserver als symlink.
drwxr-xr-x 5 le-bot ssl-admin 4096 Feb 8 01:28 acme-tiny
drwxr-xr-x 2 le-bot ssl-admin 4096 May 19 2019 jobs
drwx------ 2 le-bot ssl-admin 4096 Jul 25 2017 le-data
-rwxr-xr-x 1 le-bot ssl-admin 441 May 19 2019 le-script.sh
drwxrwx--- 2 le-bot www-data 4096 Jan 19 04:15 le-webdir
drwxr-xr-x 4 le-bot ssl-admin 4096 Jul 21 2021 ssl-data
drwxr-xr-x 2 le-bot ssl-admin 4096 Apr 22 2018 templates
Per cron kann dann regelmäßig ''le-script.sh'' gestartet werden.
===== Festplattenverschlüsselung =====