KeyHelp ist ein kostenloses, leistungsstarkes und benutzerfreundliches Server-Panel zur Verwaltung deinen eigenes Linux-Servers mit Webseiten, E-Mail, Datenbanken und mehr. In diesem Artikel geht es um die Installation von KeyHelp sowie die Einrichtung von Domains.
- Vorbereitung
- KeyHelp installieren
- Grundkonfiguration vornehmen
- Benutzerkonto anlegen
- Domain mit Let’s Encrypt Zertifikat anlegen
- FTP-Benutzer anlegen
- E-Mail-Server einrichten: Informationen und Vorbereitung
- E-Mail-Adresse anlegen
- Spam automatisch in den Spam-Ordner verschieben lassen
- DNSBL einrichten
- DNS-Einstellungen vornehmen
- Datenbank erstellen
- Backup einrichten
- Backup einspielen
- Schlusswort
Eines der wichtigsten Features von KeyHelp ist die Möglichkeit, Ihre Websites und Server von einem zentralen Ort aus zu verwalten. Mit dem integrierten Control Panel können Sie alle Ihre Websites und Server an einem Ort anzeigen und verwalten, sodass Sie schnell auf alle wichtigen Informationen zugreifen können.
KeyHelp bietet auch eine Reihe von Werkzeugen und Funktionen, die die Verwaltung von Websites und Servern erleichtern. Zum Beispiel können Sie mit KeyHelp einfach neue Websites erstellen, bestehende Websites bearbeiten und Datenbanken verwalten. Auch die Verwaltung von Domains und E-Mail-Konten ist mit KeyHelp sehr einfach. KeyHelp aktualisiert das System selbst, nur große Version-Upgrades müssen selbst ausgeführt werden.
Vorbereitung
Bevor KeyHelp installiert wird, sollten die entsprechenden DNS-Einträge für die Domain beim Registrar gesetzt sein, damit die Namensauflösung zum Server überhaupt funktioniert. Hier sollten mindestens folgende Einträge vorhanden sein. Später kommen noch weitere für den E-Mail-Verkehr hinzu.
Typ | Name | Inhalt |
---|---|---|
A | domain.tld | Server IP-Adresse |
CNAME | * | domain.tld |
Stelle außerdem sicher, dass die notwendigen Ports nicht durch eine Firewall bei deinem Server-Hoster blockiert werden. Am besten gibst du hier direkt alle Ports frei, dein Server wird ja selbst eine Firewall verwenden.
Die Installation für KeyHelp ist sehr einfach und unkompliziert. Wichtig ist nur, dass ein unkonfigurierter Server verwendet wird. KeyHelp richtet alle Dienste von FTP bis SSL von selbst ein.
KeyHelp lässt sich unter Ubuntu LTS sowie Debian installieren. Ich verwende für meine Demonstrationszwecke Debian 12. Der Server sollte über mindestens 1 GB Arbeitsspeicher verfügen, für alle Features und eine optimale Leistung empfehlen sich aber mindestens 4 GB.
Stelle vor der Installation sicher, dass der Server auf dem neuesten Stand ist:
apt-get update && apt-get upgrade -y
Außerdem wird wget benötigt, installiere dieses Programm daher:
apt-get install wget
KeyHelp installieren
Um KeyHelp nun zu installieren, muss lediglich dieser Befehl in der Konsole abgesetzt werden:
wget https://install.keyhelp.de/get_keyhelp.php -O install_keyhelp.sh ; bash install_keyhelp.sh ;
Sobald das Setup erscheint, kannst du zunächst durch Eingeben von L und dann DE die Sprache auf Deutsch umstellen.
Drücke nun N, um die Installationsparameter anzupassen.
Richte durch Drücken von 1 den Hostname ein. Dieser sollte unbedingt mit Subdomain als FQDN aufgebaut werden, um RFC konform zu sein, also beispielsweise so:
keyhelp.domain.tld
Passe ggf. noch das Administratorkonto an. Für höhere Sicherheit empfiehlt es sich, den Benutzernamen des Standard-Administrators zu ändern. Falls du hier nichts ändern möchtest, ist es wichtig, das gezeigt Passwort zu notieren.
Bist du bereit für die Installation, drückst du S. Die Installation von KeyHelp und aller Dienste wird einige Minuten Zeit in Anspruch nehmen.
Ist die Installation abgeschlossen, wird der Server neu gestartet. Danach kannst du das Control Panel über:
https://keyhelp.domain.tld
aufrufen. Es ist noch normal, dass hier ein Warnhinweis bezüglich des nicht vorhandenen Zertifikats erscheint. Dieses wird erst in Kürze im Hintergrund mithilfe von Let's Encrypt erstellt.
Grundkonfiguration vornehmen
Stelle sicher, dass alle Serverdienste durch Let's Encrypt abgesichert werden. Navigiere dazu links zu Sicherheit SSL/TLS-Zertifikate. Klicke hier auf den Button Serverdienste absichern.
Hier sollte überall Let's-Encrypt-Zertifikat ausgewählt sein.
Stelle nun ebenfalls sicher, dass die richtige Zeitzone eingestellt ist. Dafür navigierst du links zu Einstellungen Konfiguration Systemzeit.
Ebenfalls unter Einstellungen Konfiguration solltest du im Menüpunkt FTP-Server den Haken Nur SSL/TLS-geschützte Verbindungen zulassen setzen. Damit wird für später sichergestellt, dass nur verschlüsselte FTP-Verbindungen möglich sind.
Außerdem kannst du noch unter PHP-Interpreter die gewünschte PHP-Version einstellen, die vom Server verwendet wird. Eventuell musst du die neueste Version erst durch Setzen des Hakens installieren.
Benutzerkonto anlegen
Nun kann das erste Benutzerkonto angelegt werden, um eine Domain anlegen zu können. Klicke dazu unter Allgemein auf Benutzerverwaltung. Klicke auf Kunde hinzufügen.
Vergib hier einen Benutzernamen und Passwort. Der Haken System-Domain erstellen? kann entfernt werden. Wird dieser Kunde nur von dir verwaltet, kannst du die Konto-Vorlage Unlimited auswählen und bestätigen.
Wichtig: Der Benutzername darf nur aus Kleinbuchstaben bestehen.
Der Kunde wurde angelegt. Nun solltest du noch die entsprechenden Ressourcen und Berechtigungen vergeben. Klicke dazu auf das Stift-Symbol in der Benutzerverwaltung.
Unter Ressourcen & Berechtigungen kannst du nun auswählen, wie viel Speicherplatz zur Verfügung stehen soll, wie viele Domains, Subdomains und Datenbanken er erstellen darf und vieles mehr. Wird dieser Kunde nur von dir für deine eigene Website verwendet, kannst du alles auf unbegrenzt stellen.
Im Reiter PHP lassen sich noch einige Einstellungen für die PHP-Konfiguration dieses Benutzers festlegen.
Domain mit Let’s Encrypt Zertifikat anlegen
Unter Allgemein Benutzerverwaltung loggst du dich nun als den Benutzer an, indem du auf das Login-Symbol rechts vom Stift-Symbol klickst. Nun hast du in der linken Menüleiste den Punkt Domains. Hier lässt sich eine Domain hinzufügen.
Trage als Vollständiger Domainname die Domain ein, in meinem Falle itv4.de. Klicke dann auf Speichern, um die Domain anzulegen.
Die Domain wird nun im Hintergrund angelegt, dies dauert einen Moment. Anschließend wird dir die "Willkommen"-Seite von KeyHelp angezeigt, wenn du die Domain aufrufst.
Jetzt wird noch SSL für die Domain aktiviert. Begib dich dazu wieder zum Administrator-Konto zurück. Klicke dazu oben rechts auf Zurück zum Administrator.
Unter Domains Domains editierst du nun die entsprechende Domain, indem du auf das Stift-Symbol klickst. Im Reiter Sicherheit aktivierst du nun Let's-Encrypt-Zertifikat. Es empfiehlt sich auch, Sichere Verbindung erzwingen zu aktivieren. Damit werden Besucher, welche die Website mit http aufrufen, direkt zu https weitergeleitet.
Außerdem solltest du den Haken Sicherheitseinstellungen auf alle Subdomains übertragen setzen, damit diese Einstellung direkt für die www-Subdomain übernommen wird.
FTP-Benutzer anlegen
Nun kann für diese Website ein FTP-Benutzer angelegt werden, um Zugriff auf die Website-Inhalte zu haben. Navigiere dazu im Benutzer der Domain zu Ressourcen FTP-Benutzer. Klicke auf FTP-Benutzer hinzufügen.
Hier muss lediglich ein Passwort vergeben werden. Der Rest bleibt unverändert.
Der FTP-Benutzer wurde angelegt. Die notwendigen Verbindungsdaten lassen sich über den Button Anzeigen ausgeben. Der Aufbau Benutzernamens ist dabei immer identisch mit dem Benutzernamen des Kunden und endet mit fortlaufender Nummerierung.
Im FTP-Programm – ich verwende WinSCP – kannst du dich nun mit diesen Daten anmelden. Die Verbindung sieht hier dann so aus:
E-Mail-Server einrichten: Informationen und Vorbereitung
Nun geht es an das Anlegen einer E-Mail-Adresse. Da KeyHelp einen vollwertigen Mailserver integriert hat, muss man technisch gesehen selbst kaum Hand anlegen. Du musst jedoch bedenken, dass ein neuer, unbekannter Mailserver im Internet erst einmal bei den großen E-Mail-Anbietern kritisch angesehen wird und dazu führen kann, dass deine E-Mails beim Empfänger im Spam landen. Auch wenn du deine Domain erst vor kurzem registriert hast, wird sich das negativ auf deinen Trust-Score auswirken. Um hier etwas Abhilfe zu schaffen, sollte unbedingt rDNS, SPF, DMARC und DKIM konfiguriert sein
– so wie ich es hier gleich zeigen werde. Ob du daher tatsächlich KeyHelp als E-Mail-Server verwenden möchtest, musst du selbst entscheiden und am besten einfach testen.
Zunächst solltest du prüfen, dass die IP-Adresse deines Servers auf keiner Blacklist steht: mxtoolbox.com/blacklists.aspx und https://multirbl.valli.org/
Ist dies der Fall, hast du viel Arbeit mit Entbannungsanträgen. Falls nicht, ist das erstmal gut.
Wichtig ist es jetzt auch noch, bei deinem Server-Provider einen rDNS-Record auf deine Domain zu setzen. Da dies von Hoster zu Hoster unterschiedlich ist, kann ich dazu keine genaue Anleitung geben. Die Einstellung sollte sich irgendwo im Bereich "Netzwerk" oder "Öffentliche IP" befinden.
E-Mail-Adresse anlegen
Melde dich als entsprechender Kunde an und navigiere in der linken Menüleiste zu E-Mail E-Mail-Adressen. Lege über den Button E-Mail-Konto hinzufügen ein neues Postfach an.
Lege hier als erstes den Alias fest, also das, was vor dem @ steht. Vergib dann ein Passwort und lege die Postfachgröße fest.
Über die weiteren Reiter oben kannst du noch diverse Einstellungen vornehmen bezüglich Alias-Adressen, Weiterleitung, Spamfilter und mehr.
Drücke anschließend zum Anlegen des Postfachs auf Speichern.
Zum Webmail gelangst du über die linke Menüleiste Tools Webmail. Der Link lautet standardmäßig:
https://keyhelp.domain.tld/webmail/
Spam automatisch in den Spam-Ordner verschieben lassen
Im Webmail meldest du dich jetzt erst einmal mit dem angelegten Postfach an und navigierst zu den Einstellungen Filter. Lege hier einen neuen Filter an, damit Spam-Mails in den Spam-Ordner verschoben werden:
Betreff trifft auf regulären Ausdruck zu ^\*\*\*SPAM\*\*\*
DNSBL einrichten
Als DNS-based Blackhole List werden in Echtzeit abfragbare Schwarze Listen bezeichnet, die verwendet werden, um Mails zweifelhafter Herkunft direkt als Spam zu klassifizieren. Ich empfehle, einige dieser Listen in deinen Mailserver aufzunehmen. Navigiere dazu zu Einstellungen Konfiguration E-Mail-Server. Folgende Listen kannst du hier im Bereich DNSBL eintragen:
ix.dnsbl.manitu.net bl.spamcop.net b.barracudacentral.org all.s5h.net blacklist.woody.ch bogons.cymru.com cbl.abuseat.org combined.abuse.ch db.wpbl.info dnsbl.dronebl.org dnsbl.sorbs.net drone.abuse.ch dyna.spamrats.com http.dnsbl.sorbs.net korea.services.net misc.dnsbl.sorbs.net noptr.spamrats.com orvedb.aupads.org xbl.spamhaus.org virus.rbl.jp zen.spamhaus.org z.mailspike.net ubl.lashback.com spambot.bls.digibase.ca spam.dnsbl.anonmails.de relays.nether.net psbl.surriel.com singular.ttk.pte.hu spam.abuse.ch spam.spamrats.com ubl.unsubscore.com spamrbl.imp.ch spam.dnsbl.sorbs.net socks.dnsbl.sorbs.net
Weitere Informationen zu DNSBL und Listen findest du unter dnsbl.info/dnsbl-list.php.
DNS-Einstellungen vornehmen
Nun müssen für diese Domain einmalig noch DNS-Records beim Registrar angelegt werden für MX, SPF und optional auch DKIM.
Für MX, SPF und DMARC fügst du folgende Records bei einem Registrar hinzu. Der MX-Eintrag erhält die Priorität 1.
Typ | Name | Inhalt |
---|---|---|
MX | domain.tld | mail.domain.tld |
TXT | _dmarc | v=DMARC1; p=none |
TXT | domain.tld | v=spf1 a mx -all |
TXT | mail.domain.tld | v=spf1 a mx -all |
SPF DNS-Eintrag einfach erklärt
Wechsel zurück zum Administrator und navigiere in der linken Menüleiste zu Domains DNS-Editor.
Klicke auf die entsprechende Domain. Für den DKIM-Record klickst du im untersten Eintrag auf Anzeigen. Kopiere hier den Eintrag Zum Einfügen in Web-Formulare und füge ihn als TXT-Record mit dem Namen:
default._domainkey
ebenfalls hinzu.
Da du deinen externen Registrar für die DNS-Verwaltung verwendest, solltest du das DNS für diese Zone in KeyHelp deaktivieren, in dem du oben den Haken DNS für diese Zone deaktivieren setzt und dann auf Speichern klickst. Das hat jetzt den Vorteil für die Zukunft, dass du direkt weißt, dass die DNS-Verwaltung nicht über KeyHelp läuft.
Beachte, dass DNS-Änderungen bis zu 12 Stunden dauern können. Wundere dich also nicht, wenn etwas noch nicht wie erwartet funktioniert.
Um deine E-Mail-Konfiguration zu überprüfen, kannst du mail-tester.com verwenden. Sende eine E-Mail an die angegebene E-Mail-Adresse und überprüfe das Ergebnis.
Idealerweise erhältst du einen Score von über 7, um sicher zu gehen, dass dein Mailserver gut konfiguriert ist:
Benutzerdefinierten Avatar bei E-Mail-Accounts mit eigener Domain festlegen mit BIMI
Datenbank erstellen
Sofern eine Datenbank benötigt für deine Website oder einen der Dienste, die darauf laufen, benötigt wird, kannst du diese auch über das KeyHelp-Panel anlegen.
Melde dich als entsprechender Kunde an und navigiere in der linken Menüleiste zu Ressourcen Datenbanken. Über den Button Datenbank hinzufügen kannst du eine neue Datenbank erstellen.
Die notwendigen Verbindungsdaten lassen sich über den Button Anzeigen ausgeben. Der Aufbau Benutzernamens ist dabei immer identisch mit dem Benutzernamen des Kunden und endet mit fortlaufender Nummerierung.
Zur Datenbank-Verwaltung mit phpMyAdmin gelangst du über die linke Menüleiste Tools PhpMyAdmin. Der Link lautet standardmäßig:
https://keyhelp.domain.tld/db-administration/
Backup einrichten
Über das KeyHelp Panel lassen sich Backups der Konfiguration anlegen und verwalten.
Zunächst muss eine Repository angelegt werden. Eine Repository ist der Ort, an welchem die Backups gespeichert werden. Als Administrator navigierst du im linken Menü zu Einstellungen Backups. Klicke auf den Button Repository-Verwaltung.
Im nächsten Schritt klickst du auf den Button Repository hinzufügen, um eine neue Repository anzulegen. Vergib einen Namen sowie ein Passwort, mit welchem die Backups verschlüsselt werden. Der einfachhalthalber wähle ich in diesem Beispiel als Speicher-Typ Lokal, um das Backup lokal auf diesem Server zu speichern. In einer produktiven Umgebung sollte das Backup selbstverständlich auf einem externen Server, beispielsweise per FTP-Verbindung, gespeichert werden.
Rclone: Verbindung zu Google Drive aufbauen per Shell
Klicke anschließend auf Speichern, um die Repository anzulegen.
Unter Einstellungen Backup lässt sich nun ein Backup manuell anlegen, oder automatisiert zu bestimmten Uhrzeiten.
In der Einstellung Backup-Umfang lässt sich festlegen, was gesichert werden soll. Entweder alles, also auch Datenbanken, E-Mails und Verzeichnisse der Kunden, oder über beispielsweise nur die Systemkonfiguration. Unter Repository wählst du die eben angelegte Repository aus. Falls gewünscht, kannst du dich Nach Beendigung des Backups per E-Mail über den Status des Backups informieren lassen.
Backup einspielen
Eine Backup-Wiederherstellung kann aus verschiedenen Gründen erforderlich sein, wie zum Beispiel bei der Wiederherstellung von Daten nach einem Systemausfall, eines versehentlichen Löschens oder einem Cyberangriff. Es ist wichtig, regelmäßig Backups zu erstellen und zu testen, um sicherzustellen, dass man im Notfall auf die gesicherten Daten zugreifen kann.
Um ein Backup wiederherzustellen, navigierst du als Administrator im linken Menü zu Einstellungen Backups. Klicke auf den Button Wiederherstellen.
Wähle unter Snapshots den entsprechenden Snapshot aus, welcher wiederhergestellt werden soll.
Im nächsten Schritt wählst du die E-Mail-Konten, Datenbanken und Verzeichnisse aus, welche aus dem Backup wiederhergestellt werden sollen. Anschließend klickst du auf Speichern, um die Wiederherstellung zu starten.
Bereits vorhandene Dateien werden nicht gelöscht, falls diese nicht im Backup vorhanden sind. Es werden nur gelöschte Daten wiederhergestellt. Gleiches gilt für E-Mails.
Schlusswort
Mit diesen Schritten sollte KeyHelp nun für die meisten Zwecke voll funktionsfähig eingerichtet sein. KeyHelp aktualisiert den Server von selbst, du selbst musst keine Updates installieren. Lediglich Releases zu neuen Versionen von Debian / Ubuntu musst du manuell durchführen. Informationen hierfür gibt es von KeyHelp direkt: keyhelp.de/news/upgrade-debian-10-to-debian-11/
Bei Fragen oder Anregungen freue ich mich natürlich über eure Kommentare.
Über mich
Ich bin Janis (aka. EurenikZ), 25 Jahre alt und komme aus der Nähe von Frankfurt am Main. Ich habe eine abgeschlossene IHK-Ausbildung zum Fachinformatiker für Systemintegration und arbeite als Junior IT-Administrator in einem IT-Systemhaus. Neben meinem IT-Blog beschäftige ich mich viel mit diversen IT-Themen und meinen Webseiten sowie Telegram Bots und biete IT-Dienstleistungen an.