Zum Hauptinhalt springen
S-EDV news
← Alle Anleitungen
📘 Anleitung Linux 01.10.2026 · 10 min Lesezeit

KeyHelp-Massenoperationen: PHP-Version, Konfiguration und DNS-TTL für viele Kunden ändern

So nutzen Sie die Massenoperationen in KeyHelp: PHP-Version vieler Domains samt Cronjobs tauschen, Konfigurationsdateien neu schreiben und die DNS-TTL vor einem Umzug absenken, in einer VM getestet.

Geprüft am 01.10.2026 · für KeyHelp 26.1.1

Mit KI erstellt – redaktionelle Prüfung ausstehend

WerbelinksMit * markierte Links sind Werbelinks: Bei einem Kauf erhalten wir eine Provision, der Preis bleibt gleich. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Mehr dazu

Illustration eines Hosting-Panels mit der Überschrift KeyHelp Massenoperationen und den Karten PHP, Konfiguration, TTL

Wer auf einem KeyHelp-Server zehn, zwanzig oder fünfzig Kundenkonten betreut, kennt das Problem: Eine PHP-Version läuft aus, und jede Domain müsste einzeln umgestellt werden. Oder ein Umzug auf einen neuen Server steht an, und die DNS-Einträge aller Zonen sollen vorher eine kurze Lebensdauer bekommen. Genau für solche Fälle hat KeyHelp unter „Sonstiges“ → „Massenoperationen“ drei Werkzeuge, die eine Änderung in einem Schritt auf viele Konten anwenden. Diese Anleitung richtet sich an Administratoren, die einen Server wie in unserer Anleitung KeyHelp installieren und absichern betreiben. Sie zeigt alle drei Massenoperationen, was sie im System tatsächlich ändern und wo ihre Grenzen liegen. Alle Schritte haben wir auf KeyHelp 26.1.1 unter Debian 12 mit zwei Testkunden nachvollzogen und die Wirkung in den Konfigurationsdateien geprüft.

Voraussetzungen

  • KeyHelp ab Version 22: Die Massenoperationen kamen laut Keyweb mit KeyHelp 22.0. Getestet haben wir mit KeyHelp 26.1.1 (Build 3698) auf Debian 12.15. Die Funktion ist in der kostenlosen Ausgabe enthalten.
  • Admin-Zugang zum Panel (Benutzer wie keyadmin). Kunden sehen den Menüpunkt nicht.
  • Für die PHP-Umstellung: die Zielversion muss bereits installiert sein. Das erledigen Sie unter „Konfiguration“ → „PHP-Interpreter“ im Bereich „Verfügbare Interpreter“.
  • Ein aktuelles Backup oder ein Snapshot des Servers. Massenoperationen ändern viele Konten gleichzeitig, ein Fehler trifft dann auch alle. Wie Sie Backups einrichten, steht in KeyHelp-Backups richtig einrichten.
  • Root-Zugang per SSH ist optional, aber hilfreich, um die Wirkung wie unten gezeigt zu kontrollieren.

Schritt 1: Die drei Massenoperationen im Überblick

Öffnen Sie im Admin-Bereich in der linken Navigation „Sonstiges“ → „Massenoperationen“. Die Seite „Massenoperationen“ zeigt unter „Funktionsübersicht“ drei Einträge, jeweils mit der Schaltfläche „Weiter“:

FunktionWozuWas sich im System ändert
„Aktualisieren der PHP-Version von Domains und geplanten Aufgaben“PHP-Version vieler Domains auf einmal tauschenPHP-FPM-Pools, Apache-vHosts, Crontabs der Kunden
„Neuschreiben von Benutzerkonfigurationsdateien“Von Hand veränderte oder defekte Konfigurationen zurücksetzenApache-vHosts, PHP-FPM-Pools, DNS-Zonen
„Überschreiben der DNS-TTL aller Domains“Umzug vorbereiten, DNS-Änderungen schneller verbreitenTTL in allen BIND-Zonendateien der gewählten Konten

Alle drei Formulare haben unten das Feld „Umfang“ mit den Optionen „Alle Benutzerkonten“ und „Alle ausgewählten Benutzerkonten“. Bei der zweiten Option erscheint eine Liste aller Kunden mit Kontrollkästchen sowie die Links „Alles auswählen“ und „Alles abwählen“. Im PHP-Formular steht zusätzlich „System (root)“ in der Liste, damit sind geplante Aufgaben gemeint, die ohne Kundenbezug als root laufen.

Verifizieren: Die Seite listet genau die drei genannten Funktionen. Fehlt der Menüpunkt „Massenoperationen“, sind Sie nicht als Administrator angemeldet.

Schritt 2: PHP-Version vieler Domains auf einmal umstellen

Das ist die wichtigste Massenoperation, denn PHP-Versionen haben ein festes Ende der Sicherheitsupdates. Im Test liefen zwei Kunden auf der Standardversion des Betriebssystems (PHP 8.2.33). Zusätzlich haben wir unter „Konfiguration“ → „PHP-Interpreter“ die Versionen 8.3 und 8.4 installiert. KeyHelp legt diese unter /opt/keyhelp/php/ ab und richtet je Version einen eigenen Dienst wie keyhelp-php83-fpm ein.

Klicken Sie bei „Aktualisieren der PHP-Version von Domains und geplanten Aufgaben“ auf „Weiter“ und füllen Sie das Formular aus:

  • „Aktuelle PHP-Version“: die Version, die ersetzt werden soll. Neben den konkret genutzten Versionen gibt es „Alle PHP-Versionen“. Die Liste zeigt nur Versionen, die gerade von mindestens einer Domain genutzt werden, plus den Eintrag „Standard - PHP 8.2.33“.
  • „Ziel-PHP-Version“: alle installierten Versionen, hier „PHP 8.4.24“, „PHP 8.3.33“ und „Standard - PHP 8.2.33“.
  • „Umfang“: für einen ersten Probelauf „Alle ausgewählten Benutzerkonten“ und nur einen Kunden anhaken.
KeyHelp-Formular Aktualisieren der PHP-Version: Standard PHP 8.2.33 wird für den ausgewählten Kunden kunde1 auf PHP 8.3.33 umgestellt
Probelauf: nur kunde1 wechselt von der Standardversion auf PHP 8.3.

Nach „Speichern“ meldet KeyHelp „Die Einstellungen wurden aktualisiert. Die Änderungen werden in wenigen Augenblicken wirksam.“ Die eigentliche Arbeit erledigt der KeyHelp-Hintergrundjob, der minütlich per Cron läuft. Im Test war die Umstellung nach weniger als einer Minute aktiv.

Was im System passiert, zeigte der Blick in die VM. Der PHP-FPM-Pool von kunde1 verschwand aus /etc/php/8.2/fpm/pool.keyhelp.d/ und tauchte als kunde1_php83.conf unter /opt/keyhelp/php/8.3/etc/php-fpm.d/ wieder auf. Im Apache-vHost zeigt der Handler danach auf den neuen Socket:

grep -m1 SetHandler /etc/apache2/keyhelp/vhosts/kunde1.conf
#       SetHandler "proxy:unix:/run/php/keyhelp_kunde1_php83.socket|fcgi://keyhelp_kunde1_php83.socket"

Geplante Aufgaben vom Typ PHP zieht KeyHelp mit. Einen Cronjob, den wir für kunde1 mit PHP 8.4 angelegt hatten, stellte die Operation „8.4 auf 8.3“ in der Crontab des Kunden auf /opt/keyhelp/php/8.3/bin/php um. Gerade dieser Teil wird bei Umstellungen von Hand oft vergessen.

Verifizieren: Legen Sie eine Testdatei mit <?php echo PHP_VERSION; in das Webverzeichnis eines betroffenen Kunden und rufen Sie sie auf. Im Test lieferte kunde1 danach 8.3.33, der nicht ausgewählte kunde2 weiterhin 8.2.33. Anschließend haben wir mit „Alle PHP-Versionen“ und „Alle Benutzerkonten“ beide Kunden auf PHP 8.4 gehoben, beide meldeten 8.4.24.

Schritt 3: Konfigurationsdateien neu schreiben lassen

KeyHelp erzeugt vHosts, PHP-FPM-Pools und DNS-Zonen aus seiner Datenbank. Wer diese Dateien von Hand ändert, verliert die Änderung beim nächsten Neuschreiben. Genau das macht sich die zweite Massenoperation zunutze: Sie stellt einen sauberen Stand her, etwa nach einem fehlgeschlagenen Experiment oder einem Update, das Vorlagen geändert hat. Die Dateien selbst warnen bereits: In den Zonendateien steht „DO NOT CHANGE ANYTHING IN THIS FILE! CHANGES WILL BE LOST ON NEXT UPDATE.“

Bei „Neuschreiben von Benutzerkonfigurationsdateien“ wählen Sie unter „Konfigurationsdateien“ aus:

  • „Webserver-Konfigurationen (Apache2, PHP-FPM)“
  • „DNS-Server-Konfigurationen“

Beide Kästchen sind ab Werk angehakt. Für den Test haben wir an den vHost und den PHP-FPM-Pool von kunde2 je eine Kommentarzeile angehängt, dann nur den Webserver-Teil für kunde2 neu schreiben lassen.

KeyHelp-Formular Neuschreiben von Benutzerkonfigurationsdateien mit aktivierten Webserver-Konfigurationen und nur dem Konto kunde2 im Umfang
Nur die Webserver-Dateien von kunde2 werden neu erzeugt.

Beim nächsten Lauf des Hintergrundjobs, also innerhalb einer Minute, hatten beide Dateien von kunde2 einen neuen Zeitstempel, die Testzeilen waren weg. Die Dateien von kunde1 blieben unverändert.

stat -c "%y %n" /etc/apache2/keyhelp/vhosts/*.conf
grep -c MANUELL /etc/apache2/keyhelp/vhosts/kunde2.conf

Wenn Sie wirklich eigene Apache-Anweisungen brauchen, gehören sie in die dafür vorgesehenen Felder der Domain, nicht in die erzeugten Dateien. Sonst entfernt sie spätestens diese Massenoperation.

Verifizieren: Der Änderungszeitpunkt der Dateien unter /etc/apache2/keyhelp/vhosts/ und /etc/php/8.2/fpm/pool.keyhelp.d/ springt nur bei den gewählten Konten auf die aktuelle Uhrzeit, und curl -I auf eine Kundendomain liefert weiterhin eine Antwort.

Schritt 4: DNS-TTL für einen Umzug absenken

Die TTL (Time To Live) bestimmt, wie lange andere Nameserver eine DNS-Antwort zwischenspeichern. KeyHelp setzt für neue Zonen 86400 Sekunden, also einen Tag. Steht ein Umzug auf einen neuen Server an, würden Besucher nach der IP-Änderung bis zu einen Tag lang beim alten Server landen. Senken Sie die TTL deshalb mindestens eine alte TTL-Dauer vor dem Umzug ab.

Öffnen Sie „Überschreiben der DNS-TTL aller Domains“, setzen Sie „Ist aktiviert“ auf „Ja“, tragen Sie unter „TTL in Sekunden“ den Wert ein (vorbelegt ist 300) und wählen Sie den Umfang. Im Test haben wir 3600 Sekunden für beide Kunden gesetzt.

KeyHelp-Formular Überschreiben der DNS-TTL mit aktivierter Option, TTL 3600 Sekunden, beiden Kunden ausgewählt und gelbem Warnhinweis
Aktive TTL-Überschreibung: KeyHelp zeigt dauerhaft einen gelben Hinweis.

KeyHelp schreibt den Wert danach in jede Zeile der betroffenen Zonendateien unter /etc/bind/keyhelp_domains/, also für SOA, NS, MX, TXT und A-Einträge. Der lokale Nameserver liefert ihn sofort aus:

apt install -y bind9-dnsutils
dig +noall +answer @127.0.0.1 kunde2.example.de A
# kunde2.example.de.  3600  IN  A  203.0.113.10

Zwei Punkte sollten Sie kennen. Erstens zeigt der DNS-Editor laut Hinweis im Formular weiterhin die ursprüngliche TTL der Domain an, die Überschreibung sieht man dort nicht. Zweitens bleibt sie aktiv, bis Sie sie selbst abschalten. Auf allen Seiten der Massenoperationen erscheint so lange der Hinweis „Das DNS-TTL-Überschreiben-Feature ist derzeit aktiviert. Bitte deaktivieren Sie es hier, sobald es nicht mehr benötigt wird.“

Verifizieren: dig gegen Ihren Server zeigt die neue TTL. Nach dem Umzug entfernen Sie das Häkchen bei „Ist aktiviert“ und speichern. Im Test stand danach in allen Zonen wieder 86400, und dig lieferte 86400.

Schritt 5: Ergebnis kontrollieren und aufräumen

Massenoperationen geben keine Liste der geänderten Objekte aus, nur die allgemeine Erfolgsmeldung. Prüfen Sie deshalb gezielt nach. Für PHP bietet sich die Domainliste unter „Domains“ an, für eine schnelle Übersicht auf der Kommandozeile die Pool-Verzeichnisse:

ls /etc/php/8.2/fpm/pool.keyhelp.d/ /opt/keyhelp/php/*/etc/php-fpm.d/
systemctl list-units --no-legend | grep fpm

Im Test war nach der Umstellung aller Kunden auf PHP 8.4 der Dienst keyhelp-php83-fpm nicht mehr aktiv, weil ihn keine Domain mehr nutzte. KeyHelp startet und stoppt die Zusatzversionen also nach Bedarf. Die installierten Interpreter selbst bleiben erhalten.

Wichtig für neue Kunden: Die Massenoperation ändert nur bestehende Domains. Eine danach angelegte Domain bekam im Test wieder die Standardversion des Betriebssystems. Wenn neue Domains gleich mit der neuen Version starten sollen, stellen Sie zusätzlich unter „Konfiguration“ → „PHP-Interpreter“ die „Standard-PHP-Version für neue Domains“ um.

Verifizieren: Alle Pools liegen im Verzeichnis der gewünschten Version, jede Testdatei meldet die erwartete PHP-Version, und auf den Massenoperationen-Seiten steht kein gelber TTL-Hinweis mehr.

Typische Fehler

„Ungültige Angabe im Feld Aktuelle PHP-Version / Ziel-PHP-Version.“

Diese Meldung erschien im Test in zwei Fällen: wenn Sie ohne Auswahl auf „Speichern“ klicken und wenn Quelle und Ziel identisch sind (etwa 8.3 auf 8.3). Wählen Sie zwei verschiedene Versionen.

Erfolgsmeldung, aber nichts ändert sich

Wir haben „Alle ausgewählten Benutzerkonten“ gewählt, aber kein Konto angehakt. KeyHelp meldete trotzdem „Die Einstellungen wurden aktualisiert.“, geändert wurde nichts. Dasselbe passiert, wenn kein Konto die gewählte Quellversion nutzt. Prüfen Sie deshalb vor dem Speichern die Häkchen.

Zielversion fehlt in der Liste

Die „Ziel-PHP-Version“ zeigt nur installierte Interpreter. Installieren Sie die Version zuerst unter „Konfiguration“ → „PHP-Interpreter“ und warten Sie, bis sie unter „Installierte Interpreter“ erscheint.

Eigene Änderungen in vHosts sind verschwunden

Das ist das erwartete Verhalten von „Neuschreiben von Benutzerkonfigurationsdateien“ und auch der PHP-Umstellung, die die Dateien ebenfalls neu erzeugt. Eigene Direktiven gehören in die Domain-Einstellungen.

Ungültige TTL-Werte

Bei 0, einem leeren Feld oder Text statt einer Zahl zeigte das Formular im Test danach ohne Fehlermeldung den vorbelegten Wert 300 an. Die Zonendateien behielten dabei den vorherigen Wert. Prüfen Sie nach dem Speichern sowohl das Feld als auch die Antwort von dig.

Häufige Fragen

Sieht der Kunde, dass seine PHP-Version geändert wurde?

Eine Benachrichtigung verschickt KeyHelp dabei nicht, im Mail-Log tauchte während des Tests keine Nachricht an die Kunden auf. Kündigen Sie Umstellungen vorher an, zum Beispiel über „Sonstiges“ → „E-Mail an alle Benutzer“.

Kann ich nur einzelne Domains eines Kunden umstellen?

Nicht über die Massenoperation, ihr kleinster Umfang ist ein Benutzerkonto. Einzelne Domains stellen Sie in den Einstellungen der jeweiligen Domain um.

Werden Cronjobs wirklich mit umgestellt?

Ja, im Test wurden geplante Aufgaben vom Typ PHP mitgezogen. Der Eintrag in der Crontab des Kunden zeigte danach auf den Interpreter der neuen Version.

Wie lange vor einem Umzug sollte ich die TTL absenken?

Mindestens so lange, wie die alte TTL beträgt, bei KeyHelp-Standardzonen also einen Tag. Erst dann sind alle zwischengespeicherten Antworten mit der langen TTL abgelaufen.

Lassen sich die Massenoperationen per API auslösen?

In der API-Version 2.15 haben wir dafür keinen Endpunkt gefunden. Einzelne Domains und Cronjobs lassen sich aber per API ändern, siehe KeyHelp-REST-API nutzen.

Testumfang

Wir haben alle drei Massenoperationen auf KeyHelp 26.1.1 mit zwei Testkunden ausgeführt und die Wirkung in vHosts, PHP-FPM-Pools, Crontabs und BIND-Zonen geprüft. Auffällig war, dass eine leere Kontenauswahl trotzdem eine Erfolgsmeldung liefert. Nicht geprüft haben wir Server mit Hunderten Konten und die Laufzeit dort. Testen Sie jede Operation zuerst mit einem einzelnen Konto.

Fazit

Die Massenoperationen sind schlicht, nehmen aber genau die Arbeit ab, die bei vielen Kunden lästig wird. Die PHP-Umstellung erfasst Domains und PHP-Cronjobs in einem Rutsch, das Neuschreiben setzt verbastelte Konfigurationen zurück, und die TTL-Überschreibung macht Serverumzüge planbar. Weil KeyHelp nur eine allgemeine Erfolgsmeldung ausgibt, gehört nach jeder Operation eine kurze Kontrolle dazu. Und nach einem Umzug: TTL-Überschreibung wieder abschalten.

Weiterführende Anleitungen und Quellen

KeyHelpPHPDNSHosting-PanelSerververwaltung