15 KiB
KeyHelp Manager - Detaillierte Installationsanleitung
Diese Anleitung führt Sie Schritt für Schritt durch die Installation und Konfiguration des KeyHelp Manager WHMCS-Moduls.
📋 Voraussetzungen prüfen
Bevor Sie mit der Installation beginnen, stellen Sie sicher, dass folgende Anforderungen erfüllt sind:
WHMCS-System
- WHMCS Version 8.13 oder höher installiert
- PHP Version 8.3 oder höher
- Guzzle HTTP Client verfügbar (normalerweise in WHMCS integriert)
- MySQL/MariaDB Datenbank
- SSL-Zertifikat für WHMCS (empfohlen)
- Admin-Zugriff auf WHMCS
KeyHelp-Server
- KeyHelp installiert und erreichbar
- KeyHelp API v2 aktiviert
- Admin-Zugang zu KeyHelp
- SSL-Zertifikat für KeyHelp (empfohlen)
- Firewall-Regeln erlauben Zugriff von WHMCS-Server
Netzwerk
- WHMCS-Server kann KeyHelp-Server über HTTP/HTTPS erreichen
- Port 80/443 ist offen (je nach Konfiguration)
- DNS-Auflösung funktioniert korrekt
🚀 Schritt 1: KeyHelp API vorbereiten
1.1 API-Key in KeyHelp erstellen
-
Loggen Sie sich als Administrator in Ihr KeyHelp-Panel ein:
https://ihr-keyhelp-server.de -
Navigieren Sie zu Einstellungen (Zahnrad-Symbol oben rechts)
-
Klicken Sie auf API im linken Menü
-
Klicken Sie auf Neuen API-Schlüssel erstellen
-
Konfigurieren Sie den API-Key:
- Name:
WHMCS Provisioning - Berechtigungen: Wählen Sie Administrator oder erteilen Sie folgende spezifische Rechte:
- Benutzer erstellen/bearbeiten/löschen
- Domains erstellen/bearbeiten/löschen
- Statistiken abrufen
- Sessions erstellen
- IP-Whitelist: (Optional aber empfohlen) Tragen Sie die IP-Adresse Ihres WHMCS-Servers ein
- Name:
-
Klicken Sie auf Erstellen
-
WICHTIG: Kopieren Sie den generierten API-Key sofort und speichern Sie ihn sicher!
Beispiel: kh_live_1234567890abcdefghijklmnopqrstuvwxyz⚠️ Der Key wird nur einmal angezeigt!
1.2 API testen (Optional)
Testen Sie den API-Zugriff vom WHMCS-Server aus:
# Mit SSL (empfohlen)
curl -X GET "https://ihr-keyhelp-server.de/api/v2/server/version" \
-H "X-API-Key: IHR_API_KEY" \
-H "Accept: application/json"
# Ohne SSL (nur für Tests)
curl -X GET "http://ihr-keyhelp-server.de/api/v2/server/version" \
-H "X-API-Key: IHR_API_KEY" \
-H "Accept: application/json"
Erwartete Antwort:
{
"version": "24.1.0",
"api_version": "2.0"
}
🔧 Schritt 2: Modul-Dateien installieren
2.1 Dateien hochladen
Option A: Via FTP/SFTP
-
Verbinden Sie sich mit Ihrem WHMCS-Server via FTP/SFTP
-
Navigieren Sie zum WHMCS-Installationsverzeichnis:
/var/www/whmcs/ -
Laden Sie das komplette
keyhelpmanager-Verzeichnis in folgenden Pfad hoch:/var/www/whmcs/modules/servers/keyhelpmanager/ -
Stellen Sie sicher, dass folgende Struktur existiert:
modules/ └── servers/ └── keyhelpmanager/ ├── keyhelpmanager.php └── templates/ └── clientarea.tpl
Option B: Via SSH
# Zum WHMCS-Verzeichnis navigieren
cd /var/www/whmcs/modules/servers/
# Repository klonen (falls Git verwendet wird)
git clone https://github.com/ihr-repo/keyhelpmanager.git
# Oder Dateien aus ZIP extrahieren
unzip keyhelpmanager.zip
# Dateien verschieben falls nötig
mv keyhelpmanager-main keyhelpmanager
2.2 Dateirechte setzen
Setzen Sie die korrekten Berechtigungen:
# Zum Modul-Verzeichnis
cd /var/www/whmcs/modules/servers/keyhelpmanager/
# Dateien: 644 (rw-r--r--)
find . -type f -exec chmod 644 {} \;
# Verzeichnisse: 755 (rwxr-xr-x)
find . -type d -exec chmod 755 {} \;
# Owner setzen (Apache/Nginx User)
chown -R www-data:www-data .
# Oder für andere Systeme
chown -R apache:apache .
chown -R nginx:nginx .
2.3 Installation verifizieren
Prüfen Sie, ob die Dateien korrekt hochgeladen wurden:
ls -la /var/www/whmcs/modules/servers/keyhelpmanager/
Erwartete Ausgabe:
drwxr-xr-x 3 www-data www-data 4096 Jan 15 10:00 .
drwxr-xr-x 8 www-data www-data 4096 Jan 15 09:55 ..
-rw-r--r-- 1 www-data www-data xxxxx Jan 15 10:00 keyhelpmanager.php
drwxr-xr-x 2 www-data www-data 4096 Jan 15 10:00 templates
⚙️ Schritt 3: Server in WHMCS konfigurieren
3.1 Server hinzufügen
-
Loggen Sie sich in den WHMCS Admin-Bereich ein:
https://ihr-whmcs.de/admin/ -
Navigieren Sie zu:
Setup → Products/Services → Servers -
Klicken Sie auf Add New Server
3.2 Server-Details eintragen
Füllen Sie das Formular aus:
Tab: Details
| Feld | Wert | Beschreibung |
|---|---|---|
| Name | KeyHelp Server 1 |
Interner Name (frei wählbar) |
| Hostname | keyhelp.ihredomain.de |
Hostname ODER IP-Adresse OHNE http:// oder https:// |
| IP Address | 123.45.67.89 |
IP-Adresse (optional, falls Hostname verwendet wird) |
| Type | KeyHelp Manager |
Wählen Sie aus dem Dropdown |
| Username | (leer lassen) | Nicht benötigt |
| Password | kh_live_123... |
IHR KEYHELP API-KEY |
| Accesshash | (leer lassen) | Nicht benötigt |
Checkboxes
- ✅ Active - Server ist aktiv
- ✅ Secure - Verwenden Sie SSL (HTTPS) für die Verbindung
- ⬜ Disable Accounts Automatically - (optional)
Tab: Module Settings
Wenn verfügbar, konfigurieren Sie hier:
| Option | Empfohlener Wert | Beschreibung |
|---|---|---|
| Use SSL | ✅ On | SSL für API-Verbindung verwenden |
| Verify SSL Certificate | ✅ On | SSL-Zertifikat prüfen (bei selbstsigniert: Off) |
3.3 Verbindung testen
-
Klicken Sie auf Test Connection
-
Erwartete Meldung:
✅ Verbindung erfolgreich! KeyHelp Version: 24.1.0 -
Bei Fehlermeldungen siehe Fehlerbehebung
-
Klicken Sie auf Save Changes
📦 Schritt 4: Produkt/Service erstellen
4.1 Neues Produkt anlegen
-
Navigieren Sie zu:
Setup → Products/Services → Products/Services -
Klicken Sie auf Create a New Group (falls noch keine Gruppe existiert):
- Name:
Webhosting - Description:
KeyHelp Webhosting Pakete
- Name:
-
Klicken Sie auf Create a New Product
4.2 Produkt-Details
Tab: Details
| Feld | Beispielwert |
|---|---|
| Product Type | Hosting Account |
| Product Group | Webhosting |
| Product Name | Basic Webhosting |
| Description | Beschreibung des Pakets |
| Welcome Email | Hosting Account Welcome Email |
Tab: Pricing
Konfigurieren Sie Ihre Preise:
- Currency: EUR
- Payment Type: Recurring
- Monthly: 5.00 EUR
- Quarterly: 13.50 EUR
- Semi-Annually: 27.00 EUR
- Annually: 50.00 EUR
Tab: Module Settings
WICHTIG: Dies ist der entscheidende Teil!
| Feld | Wert | Beschreibung |
|---|---|---|
| Module Name | KeyHelp Manager |
Wählen Sie aus dem Dropdown |
| Server Group | Default |
Oder wählen Sie Ihre Server-Gruppe |
| Username | Domain |
Automatisch aus Domain generieren |
| Password | Generate |
Automatisch generieren |
Konfigurationsoptionen:
-
Hostname (IP or FQDN)
- Type: Dropdown
- Options: Wählen Sie Ihren KeyHelp-Server
-
API Key
- Wird automatisch vom Server übernommen
-
Use SSL
- Default: On
Aktivierte Funktionen: (Checkboxes)
- ✅ Create Account
- ✅ Suspend Account
- ✅ Unsuspend Account
- ✅ Terminate Account
- ✅ Change Password
- ✅ Login Link (Single Sign-On)
4.3 Konfigurierbare Optionen (Optional)
KeyHelp-Pläne als Dropdown
-
Navigieren Sie zu:
Setup → Products/Services → Configurable Options -
Klicken Sie auf Create a New Group:
- Group Name:
KeyHelp Optionen
- Group Name:
-
Klicken Sie auf Add New Configurable Option:
- Option Name:
KeyHelp Plan - Option Type:
Dropdown - Options:
Basic|basic Professional|professional Enterprise|enterprise
- Option Name:
-
Verknüpfen Sie die Gruppe mit Ihrem Produkt:
- Products/Services → Ihr Produkt → Configurable Options
- Wählen Sie
KeyHelp Optionen
4.4 Custom Fields anlegen (Optional aber empfohlen)
Diese Felder werden zwar automatisch erstellt, können aber manuell vorbereitet werden:
-
Navigieren Sie zu:
Setup → Custom Fields -
Wählen Sie Products/Services und Ihr Produkt
-
Klicken Sie auf Add New Custom Field:
- Field Name:
KeyHelp User ID - Field Type:
Text Box - Description:
Interne KeyHelp Benutzer-ID - ✅ Admin Only
- Sortierung:
1
- Field Name:
✅ Schritt 5: Testen der Installation
5.1 Test-Bestellung durchführen
-
Öffnen Sie Ihr WHMCS Frontend als Kunde (im Inkognito-Modus):
https://ihr-whmcs.de/ -
Navigieren Sie zu Order → Hosting
-
Wählen Sie Ihr neues Produkt
-
Geben Sie eine Test-Domain ein:
test123.de -
Schließen Sie die Bestellung ab (nutzen Sie ein Test-Gateway oder manuelle Zahlung)
5.2 Account-Erstellung prüfen
-
Als Admin: Navigieren Sie zu Clients → View/Search Clients
-
Öffnen Sie den Test-Kunden
-
Klicken Sie auf das neue Service/Produkt
-
Im Tab Information sollten Sie sehen:
- ✅ Username: automatisch generiert
- ✅ Password: automatisch generiert
- ✅ Status: Active
-
Prüfen Sie die Module Commands:
- Buttons sollten verfügbar sein: Suspend, Unsuspend, Terminate, Change Password
5.3 Client Area testen
-
Loggen Sie sich als Test-Kunde ein
-
Navigieren Sie zu Services → My Services
-
Klicken Sie auf das neue Hosting-Paket
-
Sie sollten sehen:
- ✅ KeyHelp Login-URL (klickbar)
- ✅ Benutzername (mit Copy-Button)
- ✅ Passwort (mit Show/Hide und Copy-Button)
- ✅ Domain-Name
- ✅ Statistiken (wenn Account erstellt wurde):
- Speicherplatz-Fortschrittsbalken
- Traffic-Fortschrittsbalken
- Anzahl Domains/Datenbanken/E-Mail-Konten
5.4 In KeyHelp prüfen
-
Loggen Sie sich in Ihr KeyHelp-Panel ein
-
Navigieren Sie zu Benutzer
-
Sie sollten den neu erstellten Benutzer sehen:
- Username wie in WHMCS
- Domain zugewiesen
- Status: Aktiv
5.5 Single Sign-On testen
-
Als Admin in WHMCS: Öffnen Sie das Test-Service
-
Klicken Sie auf Login to KeyHelp (oder ähnlicher Button)
-
Sie sollten automatisch in KeyHelp eingeloggt werden:
- Als der jeweilige Benutzer
- Ohne Passwort-Eingabe
🔧 Schritt 6: Produktiv-Konfiguration
6.1 Mehrere Server einrichten
Falls Sie mehrere KeyHelp-Server haben:
-
Wiederholen Sie Schritt 3 für jeden Server
-
Erstellen Sie eine Server Group:
Setup → Products/Services → Servers → Server Groups -
Fügen Sie alle KeyHelp-Server zur Gruppe hinzu
-
Konfigurieren Sie Ihre Produkte, um die Server-Gruppe zu nutzen:
- Automatische Lastverteilung
- Failover-Funktion
6.2 Automatisierung einrichten
A) Automatische Provisioning
In WHMCS: Setup → Automation Settings
- ✅ Enable Automatic Provisioning
- ✅ Process After: Payment Cleared
- Stellen Sie sicher, dass Cron-Jobs aktiv sind
B) Automatische Sperrung
- ✅ Enable Automatic Suspension
- Days Past Due Before Suspension:
7
C) Automatische Kündigung
- ✅ Enable Automatic Termination
- Days Past Due Before Termination:
30
6.3 E-Mail-Templates anpassen
Passen Sie die E-Mail-Templates an:
-
Setup → Email Templates
-
Suchen Sie nach:
Hosting Account Welcome Email
-
Fügen Sie KeyHelp-spezifische Variablen hinzu:
KeyHelp Login: https://{$service_server_hostname} Benutzername: {$service_username} Passwort: {$service_password} Domain: {$service_domain}
6.4 Sicherheit härten
-
IP-Whitelist in KeyHelp:
- Beschränken Sie API-Zugriff auf WHMCS-Server-IP
-
WHMCS Admin-IP-Whitelist:
Setup → General Settings → Security- Tragen Sie erlaubte Admin-IPs ein
-
Zwei-Faktor-Authentifizierung:
- Aktivieren Sie 2FA für alle Admin-Accounts (WHMCS und KeyHelp)
-
SSL-Zertifikate:
- Verwenden Sie gültige SSL-Zertifikate
- Keine selbstsignierten Zertifikate in Produktion
🐛 Fehlerbehebung
Problem: "Module Not Found"
Ursache: Dateien nicht korrekt hochgeladen
Lösung:
# Prüfen Sie den Pfad
ls -la /var/www/whmcs/modules/servers/keyhelpmanager/keyhelpmanager.php
# Wenn nicht gefunden, Dateien neu hochladen
Problem: "Connection Failed"
Ursachen & Lösungen:
-
Firewall blockiert:
# Auf WHMCS-Server testen telnet keyhelp-server.de 443 -
Falscher Hostname:
- Verwenden Sie FQDN ODER IP
- OHNE
http://oderhttps://
-
SSL-Problem:
- Bei selbstsigniertem Zertifikat: "Verify SSL" deaktivieren
-
API-Key falsch:
- Generieren Sie einen neuen Key in KeyHelp
- Kopieren Sie ihn exakt (keine Leerzeichen!)
Problem: "Account Creation Failed"
Debug-Schritte:
-
Prüfen Sie Module Log:
Utilities → Logs → Module Log Filter: keyhelpmanager -
Prüfen Sie die API-Response in den Logs
-
Häufige Ursachen:
- Domain existiert bereits
- Ungültiger Username
- Unzureichende API-Berechtigungen
- KeyHelp-Lizenz-Limit erreicht
Problem: "Statistics Not Showing"
Ursache: API-Endpunkt nicht erreichbar oder User-ID fehlt
Lösung:
# API manuell testen
curl -X GET "https://keyhelp-server.de/api/v2/users/123/statistics" \
-H "X-API-Key: IHR_KEY"
Prüfen Sie, ob KeyHelp User ID Custom Field existiert und gefüllt ist.
📊 Monitoring
6.5 Logging aktivieren
In WHMCS:
Setup → General Settings → Other
- ✅ Enable Module Debug Logging
Logs finden Sie unter:
Utilities → Logs → Module Log
6.6 Gesundheits-Check einrichten
Erstellen Sie ein Cron-Script für regelmäßige API-Tests:
#!/bin/bash
# /root/keyhelp-health-check.sh
KEYHELP_HOST="keyhelp.ihredomain.de"
API_KEY="ihr_api_key"
RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" \
"https://${KEYHELP_HOST}/api/v2/server/version" \
-H "X-API-Key: ${API_KEY}")
if [ "$RESPONSE" != "200" ]; then
echo "KeyHelp API nicht erreichbar! HTTP Status: $RESPONSE"
# Optional: Benachrichtigung senden
echo "KeyHelp API Down" | mail -s "ALERT: KeyHelp" admin@ihredomain.de
fi
Cron-Job:
# Alle 15 Minuten prüfen
*/15 * * * * /root/keyhelp-health-check.sh
✨ Fertig!
Herzlichen Glückwunsch! Ihr KeyHelp Manager WHMCS-Modul ist jetzt vollständig installiert und konfiguriert.
Nächste Schritte
- Produktiv-Server konfigurieren
- Mehrere Hosting-Pakete anlegen
- Preise festlegen
- Marketing-Material vorbereiten
- Support-Team schulen
Wichtige Hinweise
- 🔒 Sicherheit: Ändern Sie Ihre API-Keys regelmäßig
- 📝 Backups: Sichern Sie regelmäßig WHMCS und KeyHelp
- 🔄 Updates: Halten Sie alle Systeme aktuell
- 📞 Support: Dokumentieren Sie Ihre Konfiguration für Ihr Team
Nützliche Links
- KeyHelp Dokumentation: https://www.keyhelp.de/dokumentation
- WHMCS Docs: https://docs.whmcs.com/
- KeyHelp Forum: https://forum.keyhelp.de/
Bei Problemen oder Fragen: Prüfen Sie die README.md und die Fehlerbehebungssektion. Für weitere Hilfe konsultieren Sie die Community-Foren.