Debian Template
Version vom 12. April 2025, 13:11 Uhr von Thomas.will (Diskussion | Beiträge) (→Automatische SSH-Hostschlüssel nur auf dem Template erzeugen)
Anleitung für das Erstellen einer Vorlage für einfache Debian-Server zum Testen.
Mindestvorraussetzungen für Hardware
- 1 CPU
- 1 GB RAM
- 10 GB Festplattenspeicher
Installationsoptionen
- Falls bei einem Menü nach dem Installieren einer graphischen Oberfläche gefragt wird, sollten die Haken dafür entnommen werden
- Die Installation eines SSH-Servers sollte aber angekreuzt werden
Einrichtung
- Für eine angenehme Schriftgröße kann der Befehl dpkg-reconfigure console-setup benutzt werden, um diese auf den Bildschirm anzupassen
- Diese Pakete sollte man nachzuinstallieren, um auf der Kommandozeile arbeiten zu können
- apt install vim sudo git curl tcpdump nmap
- Der Standardeditor sollte auf vim.basic gestellt werden
- update-alternatives --config editor
- Falls ein Benutzer passwortlos zum root-Nutzer werden darf, muss dieser in der sudo-Gruppe sein und die /etc/sudoers-Datei angepasst werden
- gpasswd -a user sudo
- sicheres Bearbeiten der /etc/sudoers-Datei
- visudo
# Kein Check des Hostnamens nötig # Das macht nur Probleme beim Ändern des Hostnamens Defaults !fqdn ... # Alter Eintrag # %sudo ALL=(ALL:ALL) ALL # Neuer Eintrag %sudo ALL=(ALL:ALL) NOPASSWD:ALL
Automatische SSH-Hostschlüssel nur auf dem Template erzeugen
Damit nicht alle Klone des Templates dieselben SSH-Hostschlüssel verwenden, sollen die Schlüssel nur dann neu erzeugt werden, wenn der Hostname debian-template ist. Dies wird beim Start automatisch über einen ExecStartPre-Hook im ssh.service erledigt.
Skript zur Erzeugung der Schlüssel
Datei: /usr/local/sbin/new-ssh-host-keys
#!/bin/bash
template_name="debian-template"
current_host=$(hostname)
if [ "$current_host" = "$template_name" ]; then
echo "Template erkannt – SSH-Hostschlüssel werden neu erzeugt."
rm -f /etc/ssh/ssh_host_*
ssh-keygen -A
else
echo "Nicht das Template – keine Änderung."
fi
- chmod +x /usr/local/sbin/new-ssh-host-keys
systemd-Dienst anpassen
- systemctl edit ssh.service
Folgendes ergänzen:
[Service] ExecStartPre=/usr/local/sbin/new-ssh-host-keys
- systemctl daemon-reexec
Ergebnis
- Auf dem Template-Host debian-template werden die alten Schlüssel gelöscht und neu erzeugt
- Auf allen Klonen passiert nichts – die Schlüssel bleiben erhalten
- Kein zusätzlicher systemd-Dienst nötig
- Sauber integriert in den bestehenden ssh.service