diff --git a/rmm-tasks/ESPO-02-Docker.sh b/rmm-tasks/ESPO-02-Docker.sh index 0093e00..693fa41 100755 --- a/rmm-tasks/ESPO-02-Docker.sh +++ b/rmm-tasks/ESPO-02-Docker.sh @@ -6,7 +6,7 @@ set -u # Standzeile: zeigt im Protokoll, welche Fassung tatsaechlich gelaufen ist. -echo "ESPO-02-Docker, Skriptstand 2026-09-24" +echo "ESPO-02-Docker, Skriptstand 2026-09-25" FEHLER=0 # Gepinnte Staende - hier wird der Flottenstand gesetzt, nicht auf der VM entschieden. @@ -29,7 +29,7 @@ fi DEBIAN_FRONTEND=noninteractive apt-get install -y -q ca-certificates curl >/dev/null install -m 0755 -d /etc/apt/keyrings if [ ! -s /etc/apt/keyrings/docker.asc ]; then - curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc || { echo "FEHLER: Schluessel nicht ladbar"; exit 1; } + curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc || { echo "FEHLER: Schluessel nicht ladbar"; echo "ESPO02_ERGEBNIS: FEHLER"; exit 1; } chmod a+r /etc/apt/keyrings/docker.asc fi cat > /etc/apt/sources.list.d/docker.sources </dev/null +echo "Versionen auf hold gesetzt" # 4. Daemon-Grundlagen: Logrotation, weil der Standardtreiber nicht rotiert. # Keine abweichende Bindeadresse: die Ports muessen fuer den Reverse Proxy erreichbar sein, @@ -60,13 +66,16 @@ cat > /etc/docker/daemon.json <<'CONF' "live-restore": true } CONF +echo "daemon.json geschrieben, Docker-Dienst wird gestartet" systemctl enable --now docker >/dev/null 2>&1 -systemctl restart docker || { echo "FEHLER: docker startet nicht"; exit 1; } +systemctl restart docker || { echo "FEHLER: docker startet nicht"; echo "ESPO02_ERGEBNIS: FEHLER"; exit 1; } +echo "Docker-Dienst laeuft" # 5. Firewall: Docker setzt seine Weiterleitungsregeln vor die INPUT-Kette und umgeht damit ufw. # DOCKER-USER ist die dafuer vorgesehene Stelle. Das Subnetz ermittelt die VM selbst, # es ist also kein kundenspezifischer Wert noetig. -command -v iptables >/dev/null || { echo "FEHLER: iptables fehlt"; exit 1; } +echo "Firewallregeln werden eingerichtet" +command -v iptables >/dev/null || { echo "FEHLER: iptables fehlt"; echo "ESPO02_ERGEBNIS: FEHLER"; exit 1; } cat > /usr/local/sbin/espo-docker-firewall <<'CONF' #!/bin/bash # Laesst an veroeffentlichte Container-Ports nur das eigene Subnetz heran, verwirft den Rest.