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.

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.

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.

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.

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.

Kategorie: Server

Tags: , ,

0 Kommentare

812 Aufrufe

Ü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.

1072 Aufrufe

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten.

Durchschnittliche Bewertung 0 / 5. Anzahl Bewertungen: 0

Bisher keine Bewertungen. Sei der Erste, der diesen Beitrag bewertet!

Es tut mir Leid, dass der Beitrag für dich nicht hilfreich war!

Wie kann ich diesen Beitrag verbessern?

Hinterlasse einen Kommentar

  • Manchmal ist es notwendig, sich in die Shell eines Docker-Containers zu schalten, um dort beispielsweise weitere Konfigurationen vornehmen zu können. Wie du dich in eine Container-Shell einloggst, zeige ich dir in diesem Beitrag. Begib dich zunächst in das Verzeichnis, in[...]

    12.03.2024 18:37

    37
  • Mithilfe eines Swap-Speichers lagert man temporäre Daten in eine Auslagerungsdatei aus, anstatt in den RAM zu schreiben. Das ist vor allem dann sinnvoll, wenn wenig Arbeitsspeicher zur Verfügung steht und man Abstürze wegen zu wenig Arbeitsspeicher umgehen möchte. Was ist[...]

    01.01.2024 10:00

    147
  • Beim Löschen von Dateien in Nextcloud landen diese im Papierkorb und bleiben dort, bis dieser manuell geleert wird. Möchte man Dateien im Papierkorb automatisch nach einer bestimmten Zeit löschen lassen, muss die Konfiguration entsprechend angepasst werden. Die Papierkorb-Funktion ist[...]

    10.12.2023 20:57

    87
  • Manchmal ist es notwendig, sich in die Shell eines Docker-Containers zu schalten, um dort beispielsweise weitere Konfigurationen vornehmen zu können. Wie du dich in eine Container-Shell einloggst, zeige ich dir in diesem Beitrag. Begib dich zunächst in das Verzeichnis, in[...]

    12.03.2024 18:37

    37
  • Mithilfe eines Swap-Speichers lagert man temporäre Daten in eine Auslagerungsdatei aus, anstatt in den RAM zu schreiben. Das ist vor allem dann sinnvoll, wenn wenig Arbeitsspeicher zur Verfügung steht und man Abstürze wegen zu wenig Arbeitsspeicher umgehen möchte. Was ist[...]

    01.01.2024 10:00

    147