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

KeyHelp: Berechtigungen für Kunden gezielt freigeben (DNS-Editor, SSH, Datenbank-Fernzugriff, Backup)

Welche Rechte KeyHelp-Kunden ab Werk haben, wie Sie DNS-Editor, SSH, Datenbank-Fernzugriff und Backup gezielt freigeben und was jede Freigabe auf dem Server bewirkt. Mit den nötigen Zusatzschritten für den Datenbankzugriff.

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 Schaltern für Kundenrechte und einem Schloss

KeyHelp gibt neuen Kunden ab Werk nur einen schmalen Satz an Rechten: FTP, PHP, Backup-Verwaltung, Datei-Manager, E-Mail Catch-All und den Zugang zum Panel. Alles, was tiefer in den Server greift, etwa der DNS-Editor, SSH oder der Fernzugriff auf Datenbanken, bleibt gesperrt, bis Sie es gezielt freigeben. Diese Anleitung zeigt, wo Sie diese Berechtigungen setzen, was jede davon technisch auf dem Server bewirkt und welche Zusatzschritte nötig sind, damit eine Freigabe überhaupt wirkt. Sie richtet sich an Administratoren, die einzelnen Kunden mehr erlauben wollen, ohne die übrigen Konten zu gefährden. Getestet wurde mit KeyHelp 26.1.1 unter Debian 12. Die Grundinstallation beschreibt die Anleitung KeyHelp installieren und absichern.

Voraussetzungen

  • KeyHelp (getestet: 26.1.1 Build 3698, Debian 12.15), eingerichtet nach KeyHelp installieren und absichern.
  • Ein bestehendes Kundenkonto, im Beispiel kunde1 mit Domain kunde1.example.de und Datenbank kunde1_db.
  • Administratorzugang zum Panel und für die Prüfungen SSH als root.

Die Berechtigungen gibt es in gleicher Form in Konto-Vorlagen. Wer feste Tarife pflegt, setzt sie dort einmal, siehe KeyHelp: Konto-Vorlagen als Hosting-Tarife.

Schritt 1: Den Reiter „Berechtigungen“ öffnen

Öffnen Sie „Benutzerverwaltung“ › „Kundenkonten“ und klicken Sie beim Kunden auf das Stiftsymbol. Im Bearbeiten-Formular wechseln Sie in den Reiter „Berechtigungen“. Dort stehen 15 Schalter: „FTP“, „PHP“, „Perl/CGI“, „SSH“, „Backup-Verwaltung“, „Datei-Manager“, „DNS-Editor“, „Domain-Sicherheit“, „E-Mail-Einstellungen der Domain“, „Zertifikatsverwaltung“, „Datenbank-Fernzugriff“, „E-Mail Catch-All“, „Hauptdomains löschen“, „Control Panel-Zugriff“ und „Kontaktdaten aktualisieren“.

Bei „Perl/CGI“ und „SSH“ blendet KeyHelp einen Warnhinweis ein: „Achtung! Der Kunde ist nicht auf sein Stammverzeichnis beschränkt.“ Das ist ernst zu nehmen, siehe Schritt 3. Für das Beispiel wurden „SSH“, „DNS-Editor“ und „Datenbank-Fernzugriff“ zusätzlich aktiviert, „Backup-Verwaltung“ war ab Werk schon an.

KeyHelp Kunde bearbeiten, Reiter Berechtigungen mit aktivierten Schaltern für SSH, Backup-Verwaltung, DNS-Editor und Datenbank-Fernzugriff
Reiter „Berechtigungen“ mit erweiterten Rechten für kunde1

Verifizieren: Nach „Speichern“ meldet KeyHelp „Der Benutzer kunde1 wurde aktualisiert. Die Änderungen werden in wenigen Augenblicken wirksam.“ Die Werte stehen sofort in der KeyHelp-Datenbank:

mysql keyhelp -e "select ssh,dns_editor,db_remote_access,backup from users where username='kunde1'"
# ssh  dns_editor  db_remote_access  backup
# 1    1           1                 1

Schritt 2: DNS-Editor freigeben und prüfen

Mit „DNS-Editor“ erscheint im Kundenmenü unter „Domains“ der Punkt „DNS-Editor“. Der Kunde sieht dort seine Zonen, etwa kunde1.example.de und die System-Domain, und kann über „Record hinzufügen“ Einträge vom Typ A, AAAA, CAA, CNAME, HTTPS, MX, NS, PTR, SRV und TXT anlegen. Typischer Anlass sind Verifizierungs-TXT-Einträge für Microsoft 365 oder Google.

Im Test legte kunde1 den Eintrag _test vom Typ TXT mit dem Wert "s-edv-dns-test" an. Nach etwa einer Minute stand er in der Zonendatei, die KeyHelp für den lokalen BIND schreibt:

grep _test /etc/bind/keyhelp_domains/kunde1.example.de
# _test               3600   IN TXT    "s-edv-dns-test"
named-checkzone kunde1.example.de /etc/bind/keyhelp_domains/kunde1.example.de
# zone kunde1.example.de/IN: loaded serial 2026100101
# OK

Wichtig für die Praxis: Der Eintrag wirkt nur, wenn der Server tatsächlich autoritativer Nameserver der Domain ist. Liegt das DNS beim Registrar oder bei Cloudflare, ändert der Kunde im KeyHelp-Editor nur eine Zone, die niemand abfragt. Geben Sie den DNS-Editor deshalb nur Kunden, deren Domains auf Ihre Nameserver zeigen.

Verifizieren: In der Kundenansicht steht der Menüpunkt „DNS-Editor“, die Zonendatei enthält den neuen Eintrag und named-checkzone meldet „OK“.

Schritt 3: SSH freigeben und die Folgen kennen

Ohne SSH-Recht ist der Systembenutzer des Kunden Mitglied der Gruppe keyhelp_nossh und hat die Shell /bin/false. KeyHelp trägt diese Gruppe in die SSH-Konfiguration ein:

grep -n "DenyGroups\|Match Group" /etc/ssh/sshd_config
# 125:DenyGroups keyhelp_nossh keyhelp_suspended
# 127:Match Group keyhelp_chroot

Nach dem Aktivieren von „SSH“ entfernt KeyHelp den Kunden aus keyhelp_nossh und setzt /bin/bash als Shell:

getent passwd kunde1
# kunde1:x:5001:5001::/home/users/kunde1/:/bin/bash
id kunde1
# uid=5001(kunde1) gid=5001(kunde1) groups=5001(kunde1),1001(keyhelp_file_manager)

Im Test konnte sich kunde1 danach per SSH anmelden. Er landete in /home/users/kunde1, konnte aber mit normalen Benutzerrechten auch außerhalb lesen, etwa das Verzeichnis /home/users mit den Kundenordnern oder /etc/os-release. Zugriff auf /root wurde verweigert. Genau davor warnt der Hinweis im Formular. Eine Einschränkung auf das eigene Verzeichnis bietet KeyHelp über die Gruppe keyhelp_chroot und die Einstellung „Eingeschränkte SSH-Umgebung“, die in der Oberfläche als „Pro-Feature“ markiert ist. Sie wurde nicht getestet.

Verifizieren: getent passwd kunde1 zeigt /bin/bash, und id kunde1 listet keyhelp_nossh nicht mehr.

Schritt 4: Datenbank-Fernzugriff in drei Ebenen freischalten

Das Recht „Datenbank-Fernzugriff“ allein reicht nicht. Im Test zeigte das Bearbeiten-Formular der Datenbank beim Kunden danach weiterhin nur Name, Benutzer, Beschreibung und Passwort. Erst mit der globalen Einstellung erscheint die Auswahl. Öffnen Sie dazu als Administrator „Konfiguration“ › „Datenbank-Server“ und aktivieren Sie „Fernzugriff erlauben“.

KeyHelp Konfiguration Datenbank-Server mit aktivierter Option Fernzugriff erlauben und Richtlinie für Datenbanknamen
Globale Freigabe unter „Konfiguration“ › „Datenbank-Server“

KeyHelp schreibt daraufhin /etc/mysql/mariadb.conf.d/99-keyhelp.cnf mit bind-address = *, MariaDB lauscht dann auf allen Adressen. Jetzt findet der Kunde unter „Datenbanken“ › Datenbank bearbeiten den Bereich „Fernzugriff“ mit drei Optionen: „Nur lokale Verbindungen zulassen.“, „Verbindungen von beliebigen Hosts zulassen.“ und „Erlaubt Remote-Verbindungen von einem oder mehreren angegebenen Hosts.“ Wählen Sie immer die dritte Option und tragen Sie die feste IP des Kunden ein, im Beispiel 198.51.100.10.

KeyHelp Kundenbereich Datenbank bearbeiten mit Fernzugriff auf angegebene Hosts beschränkt und Host 198.51.100.10
Kundensicht: Fernzugriff nur für eine IP

Die dritte Ebene ist die Firewall. Die KeyHelp-Firewall enthält ab Werk die Regel „MariaDB / MySQL“ mit der Aktion „Verweigern“ für TCP 3306. Daran ändert die globale Einstellung nichts, wie der Hilfetext selbst sagt. Ohne angepasste Regel bleibt der Port von außen geschlossen.

Verifizieren: MariaDB kennt nun einen zweiten Benutzer-Eintrag für die erlaubte IP, und ein Verbindungsversuch von einer anderen Adresse wird abgelehnt:

mysql -e "select user,host from mysql.user where user like 'kunde%'"
# kunde1_db  198.51.100.10
# kunde1_db  localhost
iptables -S | grep 3306
# -A INPUT -p tcp -m tcp --dport 3306 -j DROP
KeyHelp-Kundendashboard mit Menüpunkt DNS-Editor und aufgeklappter Liste der Berechtigungen inklusive SSH und Datenbank-Fernzugriff
So sieht der Kunde seine freigegebenen Rechte

Schritt 5: Backup-Verwaltung und Rechte wieder entziehen

„Backup-Verwaltung“ ist ab Werk aktiv und blendet beim Kunden den Menüpunkt „Backup“ unter „Einstellungen“ ein. Wie Sicherungen auf dem Server eingerichtet werden, beschreibt die Anleitung KeyHelp-Backups extern einrichten. Wenn Sie Backups ausschließlich zentral steuern wollen, schalten Sie das Recht ab.

Entzogen wird ein Recht genauso, wie es vergeben wurde: Häkchen entfernen und speichern. Im Test wurden „SSH“ und „DNS-Editor“ wieder abgeschaltet. Nach etwa einer Minute war kunde1 wieder in keyhelp_nossh mit Shell /bin/false, der SSH-Login scheiterte und das Systemprotokoll vermerkte „Failed password for invalid user kunde1“. Der direkte Aufruf des DNS-Editors führte zurück auf das Dashboard. Bereits angelegte DNS-Einträge blieben allerdings in der Zone stehen.

Verifizieren: id kunde1 listet wieder keyhelp_nossh. Prüfen Sie nach dem Entzug des DNS-Editors die Zone auf Einträge, die der Kunde hinterlassen hat.

Typische Fehler

Datenbank-Fernzugriff aktiviert, Kunde sieht keine Option

Das Kundenrecht allein bewirkt nichts Sichtbares. Ohne „Fernzugriff erlauben“ unter „Konfiguration“ › „Datenbank-Server“ zeigt das Datenbankformular des Kunden keinen Bereich „Fernzugriff“.

Fernzugriff eingerichtet, Verbindung kommt nicht an

Die Firewall-Regel „MariaDB / MySQL“ steht ab Werk auf „Verweigern“. Kommt die Verbindung durch, aber von einer nicht eingetragenen Adresse, antwortet MariaDB mit „Host '…' is not allowed to connect to this MariaDB server“. Diese Meldung erschien im Test bei einem Versuch von der Server-IP selbst.

SSH freigegeben in der Annahme, der Kunde sei eingesperrt

Der Kunde ist nicht auf sein Verzeichnis beschränkt und kann sich auf dem Server umsehen. Geben Sie SSH nur vertrauenswürdigen Kunden oder setzen Sie auf die eingeschränkte Umgebung der Pro-Edition.

Häufige Fragen

Wann greifen geänderte Berechtigungen?

In der KeyHelp-Datenbank sofort, auf dem System nach dem nächsten Lauf des KeyHelp-Cronjobs, der jede Minute läuft. Im Test dauerte es 30 bis 60 Sekunden.

Was ist „Hauptdomains löschen“?

Ohne dieses Recht kann der Kunde Hauptdomains nicht selbst entfernen. Ab Werk ist es aus, das schützt vor versehentlichem Löschen einer Website samt E-Mail.

Was regelt „Control Panel-Zugriff“?

Laut Keyweb-Dokumentation nur die Anmeldung des Kunden an der KeyHelp-Oberfläche. Der Administrator kann sich unabhängig davon über das Login-Symbol in der Benutzerverwaltung als Kunde anmelden.

Gibt es ein Protokoll über Änderungen des Kunden?

Ja. Im Kundenmenü unter „Protokolle“ › „Ereignis-Protokolle“ stand nach dem Test der Eintrag „DNS settings of domain kunde1.example.de (#2) updated.“ mit Datum, Benutzer und IP-Adresse. Auch Anmeldungen per Einmal-Login erscheinen dort als „User kunde1 logged in via Single-Sign-On.“ Für die Fehlersuche bei einer plötzlich nicht mehr erreichbaren Domain ist das der erste Blick.

Sollte ich jedem Kunden alle Rechte geben, damit weniger Support anfällt?

Besser nicht. Jedes zusätzliche Recht ist eine weitere Stelle, an der ein Kunde versehentlich etwas verstellen kann, etwa einen MX-Eintrag im DNS-Editor oder eine offene Datenbank. Vergeben Sie Rechte auf Anfrage und dokumentieren Sie, wem Sie was freigegeben haben. Ein gutes Muster sind zwei Konto-Vorlagen: eine schlanke für Website-Kunden und eine erweiterte für Agenturen oder Entwickler.

Testumfang

Getestet auf KeyHelp 26.1.1 unter Debian 12: DNS-Editor, SSH und Datenbank-Fernzugriff für einen Kunden freigegeben, Wirkung in Zonendatei, Benutzerkonto, SSH-Konfiguration und MariaDB geprüft, Rechte wieder entzogen. Auffällig ist der dreistufige Datenbank-Fernzugriff. Eine echte Verbindung von außen über die Firewall wurde nicht getestet. Prüfen Sie Freigaben immer auch auf Systemebene.

Fazit

Die Berechtigungen in KeyHelp sind fein genug, um jedem Kunden genau das freizugeben, was er braucht. Der Mehrwert liegt im Detail: Der DNS-Editor nützt nur bei eigenem Nameserver, SSH öffnet mehr als das Kundenverzeichnis, und der Datenbank-Fernzugriff braucht drei abgestimmte Einstellungen. Wer diese Zusammenhänge kennt, vergibt Rechte bewusst und vermeidet, dass ein harmloses Häkchen die Angriffsfläche des ganzen Servers vergrößert.

Weiterführende Anleitungen und Quellen

KeyHelpWebhostingLinuxSSHServer-Sicherheit