Eigene Webhosting-Plattform mit cPanel/WHM auf AWS erstellen: Eine Schritt-für-Schritt Anleitung
Hier ist ein ausführliches Schritt-für-Schritt-Tutorial, wie du deine eigene Webhosting-Umgebung mit cPanel/WHM auf einer AWS EC2-Instanz einrichtest.
Die Kombination aus der Skalierbarkeit von Amazon Web Services (AWS) und der Benutzerfreundlichkeit von cPanel/WHM ist ideal für Agenturen oder angehende Webhoster.
Voraussetzungen
- Ein aktiver AWS-Account.
- Eine Domain, deren DNS-Einstellungen du bearbeiten kannst.
- Eine cPanel-Lizenz (Es gibt eine 15-tägige Testversion, danach kostenpflichtig).
- Grundkenntnisse in der Terminal-Nutzung (SSH).
Schritt 1: Eine AWS EC2-Instanz erstellen
cPanel benötigt spezifische Ressourcen. Wir verwenden AlmaLinux (der offizielle Nachfolger von CentOS).
- Logge dich in die AWS Management Console ein.
- Suche nach EC2 und klicke auf Launch Instance.
- Name: z.B.
Mein-Webhosting-Server. - Application and OS Images: Suche im Marketplace nach AlmaLinux 8 oder 9. (Ubuntu 20.04/22.04 wird ebenfalls unterstützt, aber AlmaLinux ist der Standard für cPanel).
- Instance Type: Wähle mindestens
t3.medium(2 vCPU, 4 GB RAM). Weniger als 2 GB RAM wird die Installation abbrechen. - Key Pair: Erstelle ein neues Schlüsselpaar (
.pem), um dich später per SSH einzuloggen. - Storage: Erhöhe den Speicher auf mindestens 40 GB (je nachdem, wie viele Webseiten du hosten willst).
Schritt 2: Sicherheitsgruppen (Firewall) konfigurieren
cPanel benötigt bestimmte Ports, um zu funktionieren.
- Gehe unter den Instanz-Einstellungen zu Security Groups.
- Erstelle eine neue Regel oder bearbeite die bestehende (Inbound Rules).
- Öffne folgende Ports:
- SSH: 22
- HTTP/HTTPS: 80, 443
- WHM: 2087 (SSL)
- cPanel: 2083 (SSL)
- Webmail: 2096
- FTP: 21
- SMTP: 25, 465, 587
- DNS: 53 (TCP/UDP)
Schritt 3: Elastische IP-Adresse (Elastic IP) zuweisen
AWS-Instanzen ändern ihre IP nach einem Neustart. Für einen Webserver brauchst du eine feste IP.
- Gehe im EC2-Dashboard links auf Elastic IPs.
- Klicke auf Allocate Elastic IP address.
- Wähle die neue IP aus und klicke auf Actions -> Associate Elastic IP address.
- Verknüpfe sie mit deiner EC2-Instanz.
Schritt 4: Vorbereitung des Servers via SSH
Verbinde dich mit deinem Terminal (oder PuTTY) mit dem Server:
ssh -i "dein-key.pem" ec2-user@deine-elastic-ip
- Root-Rechte erlangen:
sudo -i - System aktualisieren:
yum update -y - Hostname festlegen: (Wichtig: Muss ein FQDN sein, z.B.
host.deinedomain.de)hostnamectl set-hostname host.deinedomain.de - Network Manager deaktivieren (optional, aber oft empfohlen): cPanel bevorzugt eine statische Konfiguration ohne den Standard-NetworkManager von AWS.
Schritt 5: Installation von cPanel & WHM
Nun starten wir das offizielle Installationsskript. Dieser Vorgang kann 15 bis 60 Minuten dauern.
- Installation starten:
cd /home && curl -o latest -L https://securedownloads.cpanel.net/latest && sh latest - Lehn dich zurück. Das Skript installiert alle notwendigen Pakete (Apache, PHP, MySQL, etc.).
Schritt 6: WHM Ersteinrichtung (Web Interface)
Sobald die Installation abgeschlossen ist, erhältst du eine URL (z.B. https://deine-ip:2087).
- Öffne die URL im Browser. (Ignoriere die SSL-Warnung, da noch kein Zertifikat installiert ist).
- Login: Benutzername ist
root. Das Passwort musst du auf der Konsole eventuell erst setzen mit dem Befehlpasswd. - AGB: Akzeptiere die Bedingungen.
- Lizenz: Logge dich in deinen cPanel-Store-Account ein, um die Testlizenz zu aktivieren.
- Nameserver: Gib die Nameserver an, die du nutzen möchtest (z.B.
ns1.deinedomain.deundns2.deinedomain.de). Vergiss nicht, diese später bei deinem Domain-Registrar als "Glue Records" zu hinterlegen.
Schritt 7: Abschließende Tipps
- Tausch-Speicher (Swap): AWS-Instanzen haben oft keinen Swap-Speicher. Erstelle eine Swap-Datei, um Abstürze bei Lastspitzen zu vermeiden.
- Backups: Nutze AWS EBS Snapshots oder das integrierte cPanel-Backup auf einen S3-Bucket.
- Sicherheit: Installiere das Plugin ConfigServer Security & Firewall (CSF) direkt in WHM, um den Server abzusichern.
Glückwunsch! Du hast nun deinen eigenen Webhosting-Server auf AWS Basis mit cPanel/WHM fertiggestellt. Du kannst jetzt "Accounts" für Kunden oder deine eigenen Projekte erstellen.