Rocky Template: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
 
[[Kategorie:Rocky]]
 
[[Kategorie:Rocky]]
[[Kategorie:Linux]]
 
 
 
= Mindestvorraussetzungen für Hardware =
 
;Daten[[Kategorie:Rocky]]
 
 
[[Kategorie:Linux]]
 
[[Kategorie:Linux]]
 
Anleitung für das Erstellen einer Vorlage für einfache Rocky-Server zum Testen.
 
Anleitung für das Erstellen einer Vorlage für einfache Rocky-Server zum Testen.
  
= Mindestvorraussetzungen für Hardware =
+
= Mindestvoraussetzungen für Hardware =
 
;Daten
 
;Daten
 
* 1 CPU
 
* 1 CPU
Zeile 17: Zeile 12:
  
 
=Benutzer=
 
=Benutzer=
*user: kit  
+
*user: kit
 
*pass: kit
 
*pass: kit
 
*admin: root
 
*admin: root
Zeile 23: Zeile 18:
  
 
= Einrichtung =
 
= Einrichtung =
Diese Pakete sollte man nachinstallieren, um auf der Kommandozeile arbeiten zu können
+
Diese Pakete sollte man nachinstallieren, um auf der Kommandozeile arbeiten zu können:
 
*'''dnf install vim sudo git curl tcpdump nmap wget epel-release'''
 
*'''dnf install vim sudo git curl tcpdump nmap wget epel-release'''
  
 
= Automatische SSH-Hostschlüssel nur auf dem Template erzeugen =
 
= 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 ''rocky-template'' ist. Dies wird beim Start automatisch über einen ExecStartPre-Hook im sshd.service erledigt.
 
Damit nicht alle Klone des Templates dieselben SSH-Hostschlüssel verwenden, sollen die Schlüssel nur dann neu erzeugt werden, wenn der Hostname ''rocky-template'' ist. Dies wird beim Start automatisch über einen ExecStartPre-Hook im sshd.service erledigt.
  
 
== Skript zur Erzeugung der Schlüssel ==
 
== Skript zur Erzeugung der Schlüssel ==
 
 
Datei: /usr/local/sbin/new-ssh-host-keys
 
Datei: /usr/local/sbin/new-ssh-host-keys
 
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
#!/bin/bash
 
#!/bin/bash
 
# Hier auf rocky-template ändern, damit der Vergleich matcht
 
 
template_name="rocky-template"
 
template_name="rocky-template"
 
current_host=$(hostname -s)
 
current_host=$(hostname -s)
 
 
if [ "$current_host" = "$template_name" ]; then
 
if [ "$current_host" = "$template_name" ]; then
 
     echo "Template erkannt – SSH-Hostschlüssel werden neu erzeugt."
 
     echo "Template erkannt – SSH-Hostschlüssel werden neu erzeugt."
Zeile 49: Zeile 38:
 
fi
 
fi
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
*'''chmod +x /usr/local/sbin/new-ssh-host-keys'''
* '''chmod +x /usr/local/sbin/new-ssh-host-keys'''
 
  
 
== systemd-Dienst anpassen ==
 
== systemd-Dienst anpassen ==
 
+
*'''systemctl edit sshd.service'''
* '''systemctl edit sshd.service'''
 
  
 
Folgendes ergänzen:
 
Folgendes ergänzen:
 
 
<pre>
 
<pre>
 
[Service]
 
[Service]
Zeile 63: Zeile 49:
 
</pre>
 
</pre>
  
* '''systemctl daemon-reload'''
+
*'''systemctl daemon-reload'''
 
 
=CA ziehen=
 
*wget https://web.samogo.de/certs/ca.crt
 
*cp ca.crt /etc/pki/ca-trust/source/anchors/
 
*update-ca-trust extract
 
 
 
=Setup Script=
 
*cd /usr/local/sbin/
 
*wget https://xinux.de/downloads/script/rocky-setup.sh
 
*chmod +x rocky-setup.sh
 
* 1 CPU
 
* 2 GB RAM
 
* 20 GB Festplattenspeicher
 
;Layout
 
* /dev/sda1 / 20G
 
 
 
=Benutzer=
 
*user: kit
 
*pass: kit
 
*admin: root
 
*pass: radler
 
= Einrichtung =
 
Diese Pakete sollte man nachzuinstallieren, um auf der Kommandozeile arbeiten zu können
 
*'''dnf install vim sudo git curl tcpdump nmap wget'''
 
 
 
= 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
 
 
 
<syntaxhighlight lang="bash">
 
#!/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
 
</syntaxhighlight>
 
 
 
* '''chmod +x /usr/local/sbin/new-ssh-host-keys'''
 
 
 
== systemd-Dienst anpassen ==
 
 
 
* '''systemctl edit sshd.service'''
 
 
 
Folgendes ergänzen:
 
 
 
<pre>
 
### Editing /etc/systemd/system/sshd.service.d/override.conf
 
### Anything between here and the comment below will become the contents of the drop-in file
 
 
 
[Service]
 
ExecStartPre=/usr/local/sbin/new-ssh-host-keys
 
 
 
### Edits below this comment will be discarded
 
 
 
</pre>
 
 
 
* '''systemctl daemon-reexec'''
 
  
 
=CA ziehen=
 
=CA ziehen=

Version vom 13. April 2026, 10:57 Uhr

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

Mindestvoraussetzungen 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

Einrichtung

Diese Pakete sollte man nachinstallieren, um auf der Kommandozeile arbeiten zu können:

  • dnf install vim sudo git curl tcpdump nmap wget epel-release

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 rocky-template ist. Dies wird beim Start automatisch über einen ExecStartPre-Hook im sshd.service erledigt.

Skript zur Erzeugung der Schlüssel

Datei: /usr/local/sbin/new-ssh-host-keys

#!/bin/bash
template_name="rocky-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 sshd.service

Folgendes ergänzen:

[Service]
ExecStartPre=/usr/local/sbin/new-ssh-host-keys
  • systemctl daemon-reload

CA ziehen

Setup Script