KeyHelp installieren und absichern: das kostenlose Hosting-Panel für eigene Server
KeyHelp ist ein kostenloses, lizenzfreies Hosting-Panel für Ubuntu und Debian. Die Anleitung zeigt Schritt für Schritt Installation, erste Domain mit WordPress, Let's-Encrypt-SSL und die wichtigste Server-Härtung für den Produktivbetrieb.
Geprüft am 01.10.2026 · für KeyHelp 26.1.1
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

Wer mehrere Webseiten, WordPress-Installationen oder Kunden-Postfächer auf dem eigenen Server betreut, braucht ein Hosting-Panel statt Handarbeit auf der Kommandozeile. Plesk und cPanel kosten laufend Lizenzgebühren; KeyHelp ist die kostenlose, lizenzfreie Alternative der Keyweb AG aus Erfurt. Diese Anleitung zeigt die Installation auf Ubuntu oder Debian, die erste Domain mit WordPress und die Absicherung des Servers.
Was ist KeyHelp, und für wen lohnt es sich?
KeyHelp ist ein Server-Control-Panel: Apache-vHosts, PHP-Pools, MySQL-Benutzer und Let's-Encrypt-Zertifikate verwalten Sie im Browser statt in Textdateien. Die Basisversion ist kostenlos und für unbegrenzt viele Domains nutzbar, ohne Lizenzkosten pro Domain oder Server.
Der Installer richtet Apache, PHP in mehreren Versionen (bis PHP 8.5), MariaDB/MySQL, Postfix/Dovecot, FTP, DNS und Let's Encrypt automatisch ein. Dazu kommen eine REST-API und eine White-Label-Funktion für Reseller.
Einordnung gegenüber Plesk und cPanel:
| Kriterium | KeyHelp | Plesk / cPanel |
|---|---|---|
| Lizenzkosten | kostenlos (kostenpflichtige Pro-Version optional) | laufende Lizenzgebühr je Server/Domains |
| Domains | unbegrenzt | je nach Lizenzstufe begrenzt |
| Betriebssysteme | Ubuntu LTS, Debian | breiter (u. a. zusätzlich RHEL/CloudLinux) |
| Funktionsumfang | schlank, das Wichtigste | sehr umfangreich, viele Extensions |
| Sprache/Support | deutsch, Forum + Hersteller (DE) | international, großes Ökosystem |
Für KMU, einzelne Root-Server, Agentur-Webspaces und WordPress-Portfolios ist KeyHelp damit oft die wirtschaftlichste Wahl. Wer eine bestimmte Plesk-Extension oder CloudLinux braucht, bleibt bei den kommerziellen Panels.
Voraussetzungen
- Sauberer Server: ein frisches Minimal-System ohne Webserver, PHP, MySQL oder Mailserver. Der Installer bringt alle Dienste selbst mit und bricht bei Konflikten ab.
- Betriebssystem: Ubuntu 22.04 oder 24.04 LTS oder Debian 11, 12 oder 13 (laut Installer-Skript; Ubuntu 26.04 nur als geschlossene Beta). 64-Bit, amd64 oder arm64.
- CPU und Speicher: KeyHelp nennt keine Mindestwerte. Für einige Webseiten mit Mailserver sind 2 CPU-Kerne und etwa 40 GB SSD-Speicher realistisch; Postfächer und Backups brauchen mehr.
- RAM: laut Hersteller mindestens 2 GB, empfohlen ab 4 GB, mit Mailserver und mehreren PHP-Versionen ist 2 GB die untere Grenze.
- Root-Zugang per SSH.
- Domain mit DNS-Zugriff: ein Hostname für das Panel, z. B.
server.example.de, dessenA-Record (idealerweise auchAAAA) auf die Server-IP zeigt. Ohne ihn stellt Let's Encrypt kein Zertifikat für das Panel aus.
Schritt 1: Server vorbereiten
Melden Sie sich als root per SSH an und aktualisieren Sie das System. Setzen Sie den Hostnamen auf den FQDN (vollständiger Hostname inklusive Domain) des Panels, tragen Sie ihn in /etc/hosts ein und installieren Sie zwei Pakete, die einen häufigen Installer-Fehler verhindern:
apt update && apt upgrade -y
# Hostname auf den Panel-FQDN setzen (muss im DNS auf diesen Server zeigen)
hostnamectl set-hostname server.example.de
# FQDN lokal auflösbar machen: alte 127.0.1.1-Zeile ersetzen
sed -i '/^127\.0\.1\.1/d' /etc/hosts
echo "127.0.1.1 server.example.de server" >> /etc/hosts
hostname -f
# Verhindert den "certificate is not trusted"-Fehler beim Installer
apt install -y wget ca-certificatesLegen Sie gleich zu Beginn im DNS einen A-Record für server.example.de auf die IPv4-Adresse an (und AAAA für IPv6, falls vorhanden). Bis die Änderung überall greift, vergehen Minuten bis Stunden.
Der Eintrag in /etc/hosts ist nötig, weil hostnamectl nur den Namen ändert, nicht die Namensauflösung. Im Test auf einem frischen Debian 12 stand danach noch der alte Name auf 127.0.1.1, und hostname -f meldete hostname: No address associated with hostname. Dann bricht der Installer einzelne Bausteine ab (im Test Hostname, ProFTPD, Postfix, Dovecot und OpenDKIM) und meldet „Bei der Installation sind Fehler aufgetreten!“. Mit fester öffentlicher IP-Adresse können Sie statt 127.0.1.1 auch diese mit dem FQDN eintragen.
Verifizieren: hostnamectl zeigt server.example.de als Static hostname, hostname -f gibt server.example.de ohne Fehlermeldung aus, und dig +short server.example.de liefert die IP-Adresse Ihres Servers (auf einem minimalen Debian steckt dig im Paket dnsutils).
Schritt 2: KeyHelp installieren
Laden Sie das offizielle Installationsskript herunter und führen Sie es aus:
wget https://install.keyhelp.de/install_keyhelp.sh -O install_keyhelp.sh
bash install_keyhelp.shDer Installer ist interaktiv. Die erste Seite nennt die Version („This program will install KeyHelp 26.1.1 on your server.“) und bietet L) Select language, N) Next page und Q) Quit install. L mit dem Kürzel DE schaltet auf Deutsch, N führt zur zweiten Seite mit Hostname und Administratorkonto:
Hier können Sie die Installationsparameter anpassen.
Serverdaten
1) Hostname (FQDN): server.example.de
Administratorkonto
2) Benutzername: keyadmin
3) Passwort: (zufällig erzeugt)
4) E-Mail-Adresse: root@server.example.de
Sonstiges
5) Benachrichtigung nach Fertigstellung: Nein
- Verfügbare Aktionen ----------------------------------------------------
S) Installation starten
1-5) Daten bearbeiten
Q) Installation abbrechen
Aktion wählen [4]:Der Hostname kommt aus Schritt 1. Das vorgeschlagene Passwort steht im Klartext auf dem Bildschirm; mit 3 setzen Sie ein eigenes. Ändern Sie mit 4 die Admin-E-Mail auf eine Adresse, die Sie wirklich lesen (root@ des neuen Servers ist es meist nicht). Option 5 fragt „E-Mail-Adresse für Benachrichtigung oder [Enter]:“; [ENTER] lässt sie aus. S startet die Installation des kompletten Stacks (Webserver, PHP, IonCube, Datenbank, Mail, DNS, Let's Encrypt), jeder Baustein meldet OKAY. Im Test auf 2 CPU-Kernen und 4 GB RAM dauerte das knapp vier Minuten. Nach „Installation erfolgreich abgeschlossen!“ und 30 Sekunden Countdown („Das System wird in wenigen Augenblicken neu gestartet“) startet der Server neu.
Falls trotzca-certificatesder Fehler „The certificate of 'install.keyhelp.de' is not trusted“ erscheint, hängen Sie beimwget-Aufruf den Parameter--no-check-certificatean. Das ist nur ein Workaround für das Herunterladen des Skripts; die spätere Panel-Verschlüsselung ist davon nicht betroffen.
Melden Sie sich nach dem Reboot erneut per SSH an und lesen Sie die erzeugten Zugangsdaten für Administrator und Datenbank aus:
cat /root/keyhelp_login_data_*Notieren Sie Benutzername und Passwort, und löschen oder sichern Sie die Datei anschließend an einem geschützten Ort, da sie das Klartext-Passwort enthält.
Verifizieren: Die Datei /root/keyhelp_login_data_* existiert und enthält Zugangsdaten, keyhelp version zeigt die installierte Version (im Test KeyHelp : 26.1.1 (Build 3698)), und curl -kI https://server.example.de antwortet mit einem HTTP-Status (200 oder eine Weiterleitung auf die Login-Seite).
Schritt 3: Erster Login und Grundeinstellungen
Öffnen Sie https://server.example.de und melden Sie sich mit den Daten aus der Login-Datei an. Ist die Datei gelöscht oder das Passwort nicht zur Hand, erzeugen Sie eine Einmal-Login-URL:
keyhelp login keyadminDer Befehl gibt je eine URL mit Hostname und mit IP-Adresse aus; ohne Benutzernamen gilt sie für den ersten Hauptadministrator. Behandeln Sie die URL wie ein Passwort. Direkt nach dem ersten Login:
- Admin-Passwort ändern unter Profil: mindestens 12 Zeichen mit Groß- und Kleinbuchstaben, Ziffer und Sonderzeichen, idealerweise aus dem Passwortmanager.
- Zwei-Faktor-Authentifizierung aktivieren: KeyHelp unterstützt TOTP und WebAuthn/Passkeys, unter Profil in den Reitern „Zwei-Faktor-Authentifizierung“ und „Web-Authentifizierung“.
- Let's Encrypt für das Panel aktivieren: unter SSL/TLS-Zertifikate, Bereich „Serverdienste absichern“, Eintrag „Control Panel“. Voraussetzung ist der
A-Record aus Schritt 1.
In den Server-Einstellungen legen Sie Standard-PHP-Version, Mail-Defaults und die Backup-Einstellungen fest. Seit Version 26 lassen sich tägliche, wöchentliche, monatliche und jährliche Snapshots getrennt rotieren.
Verifizieren: Nach Ab- und Anmeldung fragt das Panel den zweiten Faktor ab, und der Browser zeigt für https://server.example.de ein gültiges Let's-Encrypt-Zertifikat ohne Warnung.
Schritt 4: Ersten Webspace und die erste Domain anlegen
KeyHelp trennt Benutzer (Hosting-Account mit Ressourcen-Limits) und deren Domains:
- Unter Benutzerverwaltung mit „Kunde hinzufügen“ einen Hosting-Benutzer anlegen (oder den Standard-Account nutzen), optional mit Hosting-Paket für Speicher-, Domain- und Datenbank-Limits.
- Als dieser Benutzer oder im Admin unter Domains mit „Domain hinzufügen“ die Domain anlegen, z. B.
example.de. KeyHelp erzeugt vHost und Dokumenten-Stamm automatisch. - Im DNS der Domain einen
A-Record fürexample.de(undwww.example.de) auf die Server-IP setzen. - In den Domain-Einstellungen unter „SSL/TLS Zertifikat“ die Option „Let's-Encrypt-Zertifikat“ wählen. KeyHelp stellt es aus und erneuert es automatisch, ohne
certbot.
https://example.de zeigt jetzt die KeyHelp-Platzhalterseite mit gültigem Zertifikat.
Verifizieren: curl -I https://example.de liefert HTTP/2 200 (oder HTTP/1.1 200) ohne Zertifikatsfehler.
Schritt 5: WordPress installieren und absichern
KeyHelp Pro bringt einen Ein-Klick-Installer für WordPress, Shops und weitere CMS. In der kostenlosen Version installieren Sie WordPress in wenigen Minuten manuell:
1. Datenbank anlegen. In KeyHelp unter Datenbanken eine neue MySQL-Datenbank samt Benutzer erstellen. Notieren Sie Datenbankname, Benutzer und Passwort.
2. WordPress in den Dokumenten-Stamm laden. Verbinden Sie sich per SSH oder SFTP mit den FTP-Zugangsdaten der Domain und wechseln Sie in deren Dokumenten-Stamm (Pfad unter Domains, z. B. .../www/example.de/). Laden und entpacken Sie dort die aktuelle deutsche WordPress-Version:
wget https://de.wordpress.org/latest-de_DE.tar.gz
tar xzf latest-de_DE.tar.gz --strip-components=1
rm latest-de_DE.tar.gz3. Setup im Browser abschließen. Rufen Sie https://example.de auf, tragen Sie im Assistenten Datenbankname, -benutzer und -passwort aus Punkt 1 ein (Host in der Regel localhost) und vergeben Sie ein starkes Admin-Passwort.
Danach drei Härtungs-Handgriffe: automatische Minor-Updates aktiviert lassen, als Admin-Benutzernamen nicht „admin“ verwenden, ungenutzte Themes und Plugins löschen. HTTPS ist durch das Zertifikat aus Schritt 4 von Anfang an aktiv; prüfen Sie, dass die Site-URL in den WordPress-Einstellungen auf https:// steht.
Verifizieren: https://example.de/wp-admin/ zeigt die WordPress-Anmeldung, und unter Einstellungen → Allgemein beginnen WordPress-Adresse und Website-Adresse mit https://.
Schritt 6: Server absichern (Härtung)
Ein Panel ersetzt keine Server-Härtung: Web-Login, Mailserver und weitere offene Dienste vergrößern die Angriffsfläche. Vor dem Produktivbetrieb gehören dazu:
- SSH absichern: Login per SSH-Key, Passwort-Login deaktivieren, root-Login einschränken; die wichtigste Einzelmaßnahme. Nach der KeyHelp-Installation war im Test
PermitRootLogin without-passwordgesetzt, der Passwort-Login aber noch erlaubt. - Firewall: nur benötigte Ports öffnen, den Rest per default deny blockieren. KeyHelp richtet eine eigene Firewall ein (iptables, eingehend
DROP, freigegeben unter anderem SSH, DNS, HTTP/HTTPS, Mail und FTP), verwaltet unter Firewall; UFW war im Test nicht installiert. Fail2ban kommt mit, im Test mit neun Jails, daruntersshd. - Updates: KeyHelp aktualisiert sich und die verwalteten Dienste selbst. Aktivieren Sie zusätzlich unattended-upgrades für Kernel und Systempakete; auf Debian 12 fehlte das Paket nach der KeyHelp-Installation.
- Panel-Zugang schützen: Zwei-Faktor-Authentifizierung für alle Admin- und Reseller-Konten erzwingen, starke Passwörter, Panel nur über HTTPS.
- Backups testen: die KeyHelp-Backups aus Schritt 3 auf externen Speicher auslagern und regelmäßig einen Restore testen.
Versendet der Server Mails, brauchen Sie zusätzlich einen korrekten PTR-Record (Reverse DNS) sowie SPF-, DKIM- und DMARC-Einträge, sonst landen Ihre Mails im Spam.
Passwort-Login für SSH abschalten (erst, wenn Ihr SSH-Key funktioniert) und automatische Updates einrichten:
echo "PasswordAuthentication no" > /etc/ssh/sshd_config.d/10-haertung.conf
sshd -t && systemctl reload ssh
apt install -y unattended-upgradesVerifizieren: ssh -o PubkeyAuthentication=no root@server.example.de wird abgewiesen, iptables -S INPUT | head -1 zeigt -P INPUT DROP, fail2ban-client status listet aktive Jails, und systemctl is-active unattended-upgrades meldet active.
Troubleshooting: häufige Stolpersteine
| Symptom | Ursache & Lösung |
|---|---|
| Installer bricht mit Zertifikatsfehler ab | apt install -y ca-certificates oder --no-check-certificate beim wget ergänzen. |
| Installer meldet „Bei der Installation sind Fehler aufgetreten!“ (Hostname, ProFTPD, Postfix, Dovecot, OpenDKIM) | Der FQDN ist nicht auflösbar. hostname -f prüfen und den Eintrag in /etc/hosts aus Schritt 1 ergänzen, dann auf einem frischen System neu installieren. |
| Admin-Passwort unbekannt, Login-Datei gelöscht | keyhelp login keyadmin erzeugt eine Einmal-Login-URL, danach unter Profil ein neues Passwort setzen. |
| Installer meldet „kein sauberes System“ | Es ist bereits ein Webserver/PHP/MySQL installiert. Mit einem Minimal-Image neu aufsetzen, KeyHelp bietet keinen Deinstaller. |
| Panel im Browser nicht erreichbar | DNS-A-Record auf die Server-IP prüfen; Firewall-Ports 80/443 freigeben; nach dem Reboot kurz warten. |
| Let's Encrypt schlägt fehl | Domain muss per DNS auf den Server zeigen und Port 80 erreichbar sein (HTTP-01-Challenge). DNS-Propagation abwarten. |
| Wenig RAM, Dienste instabil | 2 GB sind das Minimum. Bei Mailserver + mehreren Seiten auf 4 GB aufrüsten. |
Fazit
KeyHelp liefert in unter einer Stunde ein kostenloses Hosting-Panel mit Webserver, PHP, Datenbank, Mail, DNS und automatischem Let's Encrypt für beliebig viele Domains. Das Panel ersetzt keine Sicherheit: SSH-Härtung, Firewall, Updates und getestete Backups bleiben Ihre Aufgabe.
Sinnvolle nächste Schritte: den Server grundlegend härten (UFW, SSH-Keys, Fail2ban), die SSH-Key-Authentifizierung einrichten und nach der WordPress-Installation echte Cronjobs für WP-Cron konfigurieren, damit geplante Aufgaben zuverlässig laufen.


