fix(installer): Lücken aus Gap-Report geschlossen

- rsync zum apt-Paket-Block hinzugefügt
- DEBIAN_FRONTEND=noninteractive gesetzt (keine debconf-Interaktion)
- go PATH-Fix: Debian-spezifische Pfade in /usr/lib/go-*/bin ergänzen
  (update.sh + install.sh symlink-Fallback)
- TLS-Zertifikat: selbstsigniertes RSA-4096 Cert via hostname -f,
  /etc/ssl/archivmail/ anlegen + Permissions (640, root:archivmail)
- nginx: HTTPS von Anfang an (HTTP→HTTPS Redirect + TLS-Block statt HTTP-only)
- config.yml-Template vollständig:
  - smtp.enabled, smtp.domain (hostname -f), smtp.tls_cert/tls_key
  - imap_server (enabled, bind :993, tls_cert/tls_key)
  - api.trusted_proxies, api.secure_cookies: true
  - Vorhandenes config.yml wird nicht überschrieben
- systemd archivmail.service: AmbientCapabilities=CAP_NET_BIND_SERVICE
  (für privilegierten Port 993 als non-root User)
  NoNewPrivileges=false (erforderlich für AmbientCapabilities)
  ReadOnlyPaths um /etc/ssl/archivmail ergänzt
- systemctl enable am Ende des Installers (ohne --now)
- update.sh nach /opt/archivmail/ kopieren + erstes Deployment direkt anstoßen
- Abschlussbericht: FQDN, HTTPS/IMAP/SMTP URLs, TLS-Hinweis

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
sysops
2026-03-20 01:03:57 +01:00
parent c59cad92be
commit 48e04f36fd
2 changed files with 141 additions and 38 deletions
+5 -1
View File
@@ -41,10 +41,14 @@ fi
# ── Voraussetzungen prüfen ────────────────────────────────────────────────
# Debian legt go nicht immer in /usr/bin — bekannte Pfade ergänzen
export PATH="$PATH:/usr/local/go/bin:/usr/lib/go/bin"
for d in /usr/lib/go-*/bin; do export PATH="$PATH:$d"; done
command -v git >/dev/null || die "git nicht gefunden"
command -v node >/dev/null || die "node nicht gefunden"
command -v npm >/dev/null || die "npm nicht gefunden"
command -v go >/dev/null || die "go nicht gefunden"
command -v go >/dev/null || die "go nicht gefunden — apt-get install golang-go"
# ── Quellcode holen ───────────────────────────────────────────────────────