2026 Mac Mini mieten 7×24: certbot-Zertifikatserneuerung, launchd-Healthcheck & Nacht-Stillefenster-Entscheidungsmatrix

Lesezeit: 9 Min.

Solo-Entwickler, die einen Mac Mini mieten und 7×24 Gateways, Reverse-Proxies oder Monitoring betreiben, verlieren HTTPS oft, wenn certbot-Erneuerung vom Kalender abweicht — oder um zwei Uhr nachts der falsche Prozess neu startet.

Dieser Leitfaden friert eine Entscheidungsmatrix für Challenge-Modus, launchd-Timer, Health-Probes und UTC-Stillefenster auf Apple-Silicon-Mietknoten ein: ausführbare plist- und crontab-Snippets, sechs Rollout-Schritte, zitierbare Schwellen. Intern: Startseite, launchd vs. PM2, APFS-Wasserlinien-FAQ, launchd-Daemon-Healthcheck.

Warum TLS-Erneuerung auf 7×24-Miet-Macs scheitert

  1. Challenge-Drift: HTTP-01 scheitert, wenn Port 80 schließt; DNS-01-Token verfallen, wenn API-Keys nur in der Shell-Historie liegen.
  2. Reload-Blast-Radius: Ein naiver renew-hook startet alle Dienste neu — auch ein OpenClaw-Gateway — statt nur nginx.
  3. Blinde Probes: Prozesse sind grün, notAfter ist rot — Zertifikate laufen ab, während Monitore schlafen.

HTTP-01 vs. DNS-01: welcher certbot-Challenge-Modus passt zur Miete?

Ein primärer Modus pro Hostname. Wildcards erzwingen DNS-01; einzelne Reverse-Proxies auf dem gemieteten Mac Mini bleiben oft bei HTTP-01, wenn Port 80 und 443 erreichbar sind.

KriteriumHTTP-01DNS-01
Port 80PflichtOptional
WildcardNeinJa
Geheimnisnginx-PfadKeychain-Token
Typische Miet-SzeneCaddy/nginx-GatewayInterne Subdomains
certbot certonly --staging --nginx -d gateway.example.dev
# Produktion nach Dry-Run:
certbot certonly --nginx -d gateway.example.dev --deploy-hook /usr/local/bin/reload-proxy.sh

7×24 certbot- und launchd-Entscheidungsmatrix

Parameter in Git versionieren — sie überleben Consumer-Uplinks und 7×24-Hosting auf M4-Mietknoten.

Steuergröße Startwert Hinweis / Stabilität
Challenge-Modus HTTP-01 oder DNS-01 (einer) Offene Ports im Runbook dokumentieren.
Erneuerungs-Takt 03:17 und 15:17 lokal täglich Von Backup- und Batch-Fenstern entkoppeln.
Health-Intervall 60 s curl + 7-Tage-Ablauf-Gate Page bei < 14 Tagen außerhalb Stille.
UTC-Stille 22:00–06:00 UTC + 30 min Puffer Renew-Rauschen dämpfen; P1 bypass.
Scheduler launchd LaunchAgent crontab nur für Labs — siehe Snippet.
renew-hook-Umfang Nur Proxy-Reload OpenClaw-Gateway bei Zertifikatswechsel nicht neu starten.

launchd-Timer, renew-hook und crontab-Fallback

launchd StartCalendarInterval auf Mietknoten: vorhersagbare Logs nach Reboot. Der renew-hook validiert nginx vor kill -HUP.

# ~/Library/LaunchAgents/com.runmini.certbot-renew.plist (Auszug)
ProgramArguments: certbot renew --quiet --deploy-hook /usr/local/bin/reload-proxy.sh
StartCalendarInterval: 03:17 und 15:17 täglich
StandardOutPath: /var/log/certbot-renew.log

# renew-hook — nur Proxy; OpenClaw-Gateway nicht anfassen
nginx -t && kill -HUP "$(cat /usr/local/var/run/nginx.pid)"

# crontab-Lab-Fallback:
# 17 3,15 * * * certbot renew -q --deploy-hook /usr/local/bin/reload-proxy.sh

Bootstrap: launchctl bootstrap gui/$(id -u) …/com.runmini.certbot-renew.plist. Vergleich launchd vs. PM2 KeepAlive; Daemon-Probes: launchd-Daemon-Healthcheck.

Stillefenster, Health-Probes und Alarm-Routing

certbot-Erneuerung in UTC-Stillefenster legen; separate Healthcheck-Jobs alle sechzig Sekunden nur bei echten TLS- oder Upstream-Fehlern pagieren.

# tls-health.sh — 60s LaunchAgent
DAYS=$(( ($(date -j -f "%b %d %T %Y %Z" "$(openssl … -enddate|cut -d= -f2)" +%s) - $(date +%s)) / 86400 ))
[ "$DAYS" -lt 14 ] && curl -fsS -X POST "$ALERT_URL" -d "{\"days_left\":$DAYS}"
curl -fsS --max-time 5 https://gateway.example.dev/healthz
  • Nicht-P1-Webhooks 22:00–06:00 UTC plus dreißig Minuten Renew-Puffer unterdrücken.
  • Sofort page bei days_left < 7; Warnung nur über vierzehn Tage.

Disk- und Log-Wasserlinie on APFS rentals

Vor unbeaufsichtigter Erneuerung mit dem APFS-Wasserlinien-FAQ abstimmen — certbot-Logs füllen bei fehlgeschlagenen DNS-Plugins schnell.

  • Gelb fünfzehn Prozent APFS frei — Erneuerung pausieren; Rot zehn Prozent — certbot stoppen und page.
  • certbot-renew.log per newsyslog auf 128 MB × 7 Rotationen begrenzen.

Sechs Rollout-Schritte für 7×24-TLS auf der Miete

  1. Provisionieren: kaufen.html, SSH laut Hilfe-Center, Baseline df -h von der Startseite dokumentieren.
  2. Staging-Zertifikate: certbot certonly --staging with chosen challenge.
  3. launchd-Agent: Load renew plist and reload-proxy.sh; tail certbot-renew.log.
  4. Health-Probe: Sechzig-Sekunden-TLS plus /healthz; außerhalb Stille pagieren.
  5. Produktion: Ohne Staging wiederholen; notAfter.
  6. Feueralarm: certbot renew --dry-run; Proxy-only-Reload und gedämpfte UTC-Alarme bestätigen.

Zitierbar: Erneuerung 03:17 und 15:17 lokal; Health-Probe 60 s; TLS-Page-Schwelle 14 Tage Restlaufzeit, sofort bei 7 Tagen; Stille 22:00–06:00 UTC plus 30 min Puffer; APFS Gelb 15 %, Rot 10 %; Log-Deckel 128 MB × 7 Rotationen; renew-hook lädt nur nginx neu.

Stromausfall-Wiederherstellung — FAQ

Zerstört certbot renew mein OpenClaw-Gateway während Nachtbatches?

Nein — wenn der renew-hook nur nginx oder Caddy neu lädt. OpenClaw bleibt auf Loopback; Gateway-Label bei Zertifikatswechsel nicht neu starten. Erneuerung in UTC-Stille und zuerst certbot renew --dry-run.

launchd oder crontab für certbot unter macOS?

LaunchAgents auf 7×24-Hosting-Mietknoten — Reboot-Überleben und feste Log-Pfade. crontab für lokale Labs; dasselbe --deploy-hook-Skript in beiden Fällen.

Was nach einem Stromausfall zuerst prüfen?

Prüfen: launchctl print gui/$(id -u)/com.runmini.certbot-renew, dann certbot certificates, APFS frei über Gelb laut APFS-FAQ, danach ausgehende Alarme wieder aktivieren.

Mac Mini für 7×24-TLS und Health-Probes mieten

RunMini Apple-Silicon-Knoten bleiben für Gateways, Proxies und Monitore online — mit unbeaufsichtigter certbot-Erneuerung. Preise, kaufen.html ohne Login, SSH/VNC-Hilfe nach Checkout.

Fazit. Challenge-Modus, launchd-Erneuerung, Proxy-renew-hook, sechzig-Sekunden-Healthchecks und UTC-Stille einfrieren, bevor Sie einen Mac Mini mieten für 7×24-TLS. Zurück zur Startseite nach dem ersten Dry-Run ohne On-Call-Page.

Mac Mini für TLS 7×24 mieten