Debian Template: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 6: Zeile 6:
 
;Daten
 
;Daten
 
* 1 CPU
 
* 1 CPU
* 1 GB RAM
+
* 2 GB RAM
 
* 20 GB Festplattenspeicher
 
* 20 GB Festplattenspeicher
 
;Layout
 
;Layout
* /dev/sda1 SWAP 2G
+
* /dev/sda1 / 20G
* /dev/sda2 / 18G
 
  
 
=Benutzer=
 
=Benutzer=
Zeile 41: Zeile 40:
 
  # Neuer Eintrag
 
  # Neuer Eintrag
 
  %sudo  ALL=(ALL:ALL) NOPASSWD:ALL
 
  %sudo  ALL=(ALL:ALL) NOPASSWD:ALL
 +
=Wer will darf vim benutzen=
 +
*sudo update-alternatives --config editor
  
 
= Automatische SSH-Hostschlüssel nur auf dem Template erzeugen =
 
= Automatische SSH-Hostschlüssel nur auf dem Template erzeugen =
Zeile 54: Zeile 55:
  
 
template_name="debian-template"
 
template_name="debian-template"
current_host=$(hostname)
+
current_host=$(hostname -s)
  
 
if [ "$current_host" = "$template_name" ]; then
 
if [ "$current_host" = "$template_name" ]; then
Zeile 89: Zeile 90:
 
  Running hooks in /etc/ca-certificates/update.d...
 
  Running hooks in /etc/ca-certificates/update.d...
 
  done.
 
  done.
 +
=Setup Script=
 +
*cd /usr/local/sbin/
 +
*wget https://xinux.de/downloads/script/debian-setup.sh
 +
*chmod +x debian-setup.sh

Aktuelle Version vom 23. Juli 2025, 13:16 Uhr

Anleitung für das Erstellen einer Vorlage für einfache Debian-Server zum Testen.

Mindestvorraussetzungen für Hardware

Daten
  • 1 CPU
  • 2 GB RAM
  • 20 GB Festplattenspeicher
Layout
  • /dev/sda1 / 20G

Benutzer

  • user: kit
  • pass: kit
  • admin: root
  • pass: radler

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

Falls ein Benutzer passwortlos zum root-Nutzer werden darf, muss dieser in der sudo-Gruppe sein und die /etc/sudoers-Datei angepasst werden

  • usermod -aG sudo kit
  • 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

Wer will darf vim benutzen

  • sudo update-alternatives --config editor

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 -s)

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

CA ziehen

Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt,it does not contain exactly one certificate or CRL
1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.

Setup Script