Skip to main content

AlmaLinux 9 – Basic To-Dos nach Installation

🧱 AlmaLinux 9 – Basic To-Dos nach Installation

Dieser Artikel beschreibt die grundlegenden Schritte nach der Installation eines AlmaLinux 9 Servers.
Er dient als universelle Basis-Konfiguration für neue Systeme (z. B. Webserver, Management-Server, Backup-Node oder CloudStack-Host).


⚙️ 1️⃣ System aktualisieren

AlmaLinux 9 verwendet DNF als Paketmanager (Nachfolger von YUM).

🧩 Unterschied zwischen DNF und YUM

Punkt YUM DNF
Basis Alte Generation (RHEL ≤ 7) Moderne Version (ab RHEL 8/9)
Geschwindigkeit Langsamer, kein Caching Schneller, mit Caching & besserem Dependency-Resolver
API-Fähigkeit Keine Vollständige Python-API
Kompatibilität Alte Syntax Voll kompatibel zu YUM-Befehlen (dnf = yum)

👉 Kurz gesagt: dnf ersetzt yum vollständig.
Du kannst auf AlmaLinux 9 zwar noch yum eingeben – intern wird aber dnf ausgeführt.

🧭 Befehle

# Systempakete aktualisieren
dnf update -y

# (Optional) Neustart, falls Kernel-Update
reboot

🧭 2️⃣ Hostname setzen und prüfen

Der Hostname identifiziert den Server eindeutig im Netzwerk und wird u. a. für Zertifikate, Logs und SSH-Sessions verwendet.

📋 Aktuellen Hostname anzeigen

hostnamectl

✏️ Hostname ändern

# Beispiel
hostnamectl set-hostname server01.example.local

🔁 Verifizieren

hostnamectl status
# oder
hostname

💡 Hinweis

    Der Befehl schreibt den neuen Namen direkt in /etc/hostname. Ein Neustart ist nicht nötig, die Änderung greift sofort. Wenn du einen FQDN (z. B. server01.example.local) verwendest, sollte der Hostname auch in /etc/hosts eingetragen werden:
    127.0.0.1   localhost
    192.168.1.10 server01.example.local server01
    

    🔐 3️⃣ Benutzer & SSH-Absicherung

    # Neuen Benutzer anlegen
    useradd tobias
    passwd tobias
    
    # In die sudo-Gruppe aufnehmen
    usermod -aG wheel tobias
    

    SSH absichern:

    # Root-Login deaktivieren
    sed -i 's/^#PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
    
    # (Optional) Passwort-Login deaktivieren, wenn SSH-Key genutzt wird
    sed -i 's/^#PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
    
    # Dienst neu starten
    systemctl restart sshd
    

    🧰 4️⃣ Basis-Tools installieren

    dnf install -y vim nano htop git curl wget net-tools \
      bash-completion unzip tar zip rsync chrony
    

    🔥 5️⃣ Firewall aktivieren

    systemctl enable --now firewalld
    firewall-cmd --add-service=ssh --permanent
    firewall-cmd --reload
    

    🌐 6️⃣ Netzwerk konfigurieren

    nmcli device status
    nmcli connection show
    

    Beispiel – statische IP

    nmcli con mod "ens192" ipv4.addresses 192.168.1.10/24
    nmcli con mod "ens192" ipv4.gateway 192.168.1.1
    nmcli con mod "ens192" ipv4.dns "1.1.1.1 8.8.8.8"
    nmcli con mod "ens192" ipv4.method manual
    nmcli con up "ens192"
    

    🧩 7️⃣ SELinux & Auto-Updates

    # SELinux-Status prüfen
    sestatus
    
    # (Optional) auf Permissive Mode setzen
    setenforce 0
    sed -i 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
    

    Automatische Sicherheitsupdates aktivieren:

    dnf install -y dnf-automatic
    systemctl enable --now dnf-automatic.timer
    

    🧾 8️⃣ Cockpit aktivieren (Web-GUI)

    dnf install -y cockpit
    systemctl enable --now cockpit.socket
    firewall-cmd --add-service=cockpit --permanent
    firewall-cmd --reload
    

    Zugriff: https://server-ip:9090
    Login mit einem Benutzer aus der wheel-Gruppe.


    📦 9️⃣ EPEL & CRB Repository aktivieren

    dnf install -y epel-release
    dnf config-manager --set-enabled crb
    

    🧭 🔟 Abschluss

    ✅ System ist aufgesetzt
    ✅ Benutzer, Sicherheit & Netzwerk konfiguriert
    ✅ Bereit für Rollenzuweisung (z. B. Web, DB, RMM, CloudStack)


    🪶 Zusammenfassung wichtiger Befehle

    Zweck Befehl Hostname setzen hostnamectl set-hostname <name> Systemupdate dnf update -y Benutzer anlegen useradd <name> Firewall starten systemctl enable --now firewalld Cockpit aktivieren systemctl enable --now cockpit.socket

    Last Update: {{DATE}}
    Autor: CoreStream Group – Internal KB