In dieser Anleitung erfahren Sie Schritt fur Schritt, wie Sie ein SSL-Zertifikat auf Apache installieren. Die Anweisungen gelten fur Apache 2.4, die aktuelle stabile Release-Linie.
Inhaltsverzeichnis
- Wie generiert man einen CSR-Code auf Apache?
- SSL-Zertifikat auf Apache installieren
- SSL-Installation testen
- Wo kauft man ein SSL-Zertifikat fur Apache?
Wie generiert man einen CSR-Code auf Apache?
Der Certificate Signing Request, kurz CSR, ist eine kleine Textdatei, die Informationen uber Ihren Domain-Besitz und/oder Ihr Unternehmen enthalt. Die Generierung eines CSR ist ein wesentlicher Bestandteil des SSL-Kaufprozesses, und alle kommerziellen Certificate Authorities verlangen von SSL-Antragstellern, diesen Schritt abzuschliessen.
Sie haben zwei Moglichkeiten:
- Generieren Sie den CSR automatisch mit unserem CSR Generator.
- Folgen Sie unserem Schritt-fur-Schritt-Tutorial zur Erstellung des CSR auf Apache.
SSL-Zertifikat auf Apache installieren
Nachdem die Certificate Authority das SSL-Zertifikat signiert und Ihnen zugesandt hat, konnen Sie es sicher auf Ihrem Apache-Server installieren. Folgen Sie den nachstehenden Schritten.
Schritt 1: Zertifikatsdateien vorbereiten
Laden Sie die Dateien aus dem ZIP-Ordner herunter, den Sie von Ihrer Certificate Authority erhalten haben, und entpacken Sie sie. In der Regel finden Sie:
- Die .crt-Datei – Ihr primares SSL-Zertifikat.
- Die .ca-bundle-Datei – die Zwischen- (und Root-)Zertifikate, die die Vertrauenskette bilden. Diese Kette ist erforderlich, damit Browser und Anwendungen Ihr Zertifikat verifizieren konnen. Ohne sie konnten einige Clients Ihre Website als nicht sicher kennzeichnen.
Laden Sie diese Dateien zusammen mit dem privaten Schlussel (.key), den Sie zusammen mit Ihrem CSR generiert haben, in ein sicheres Verzeichnis auf Ihrem Server hoch, zum Beispiel /etc/ssl/. Stellen Sie sicher, dass der private Schlussel nur fur root lesbar ist (chmod 600).
Empfohlen (Apache 2.4.8 und neuer): Kombinieren Sie Ihr Zertifikat und das CA-Bundle in einer einzigen „Full-Chain“-Datei. Seit Apache 2.4.8 ladt die SSLCertificateFile-Direktive die Zwischenzertifikate direkt aus dieser Datei, weshalb die alte SSLCertificateChainFile-Direktive nicht mehr benotigt wird:
cat your_domain.crt your_domain.ca-bundle > your_domain_fullchain.crt
Wenn Ihre CA die Zwischenzertifikate als separate Dateien geliefert hat, verketten Sie diese zuerst mit Ihrem Zertifikat, gefolgt von den Zwischenzertifikaten in der Reihenfolge von dem, das Ihr Zertifikat signiert hat, bis zum Root (das Root-Zertifikat selbst ist optional):
cat your_domain.crt intermediate.crt root.crt > your_domain_fullchain.crt
Wenn Sie beispielsweise ein Sectigo PositiveSSL-Zertifikat installieren, wurden Sie Ihr Domain-Zertifikat mit dem Sectigo-Zwischenbundle verketten. Verwenden Sie immer die genauen Dateinamen, die Ihre CA angegeben hat.
Schritt 2: SSL-Modul aktivieren (mod_ssl)
Stellen Sie vor der HTTPS-Konfiguration sicher, dass das SSL-Modul von Apache aktiviert ist.
Auf Debian/Ubuntu aktivieren Sie mod_ssl (und mod_headers, das Sie fur den HSTS-Header in Schritt 4 benotigen):
sudo a2enmod ssl
sudo a2enmod headers
Auf RHEL/CentOS/AlmaLinux/Rocky Linux installieren Sie das SSL-Modulpaket (das Modul wird nach der Installation automatisch geladen):
sudo dnf install mod_ssl
Schritt 3: Apache-Konfigurationsdatei finden
Je nach Betriebssystem und Apache-Version kann die Konfiguration in verschiedenen Dateien gespeichert sein. Suchen Sie nach httpd.conf, apache2.conf oder einer dedizierten SSL/Site-Konfigurationsdatei an einem der folgenden Speicherorte:
- Debian/Ubuntu: Hauptkonfiguration /etc/apache2/apache2.conf; Site-spezifische Konfigurationen in /etc/apache2/sites-available/.
- RHEL/CentOS/AlmaLinux/Rocky: Hauptkonfiguration /etc/httpd/conf/httpd.conf; SSL-Konfiguration /etc/httpd/conf.d/ssl.conf.
Hinweis: Wenn Ihr Apache-Server unter Ubuntu lauft, konnen Sie auch unsere dedizierte SSL-Installationsanleitung fur Ubuntu verwenden.
Schritt 4: Virtuellen Host konfigurieren
Erstellen Sie zunachst eine Sicherungskopie Ihrer aktuellen Konfigurationsdatei. So konnen Sie Ihre Anderungen bei Problemen schnell ruckgangig machen:
sudo cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.backup
Offnen Sie nun die Konfigurationsdatei und richten Sie den virtuellen HTTPS-Host (Port 443) ein. Ein vollstandiger, moderner virtueller Host sieht folgendermassen aus:
<VirtualHost *:443>
ServerName www.example.com
ServerAdmin [email protected]
DocumentRoot /var/www/example
SSLEngine on
# Apache 2.4.8+ : server certificate + intermediate chain in ONE file
SSLCertificateFile /etc/ssl/example_com_fullchain.crt
SSLCertificateKeyFile /etc/ssl/example_com.key
# Recommended TLS hardening (2026)
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLHonorCipherOrder off
# Tell browsers to always use HTTPS (enable only after HTTPS works)
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
ErrorLog ${APACHE_LOG_DIR}/example_error.log
CustomLog ${APACHE_LOG_DIR}/example_access.log combined
</VirtualHost>
Ersetzen Sie example.com, das Document-Root-Verzeichnis und die Dateipfade durch Ihre eigenen Werte. Hier ist, was die wichtigsten Direktiven bewirken:
- SSLEngine on – aktiviert SSL/TLS fur diesen virtuellen Host.
- SSLCertificateFile – Pfad zu Ihrer Full-Chain-Datei (Zertifikat + Zwischenzertifikate), die in Schritt 1 erstellt wurde. Ab Apache 2.4.8 ersetzt diese einzelne Direktive die veraltete SSLCertificateChainFile.
- SSLCertificateKeyFile – Pfad zu Ihrem privaten Schlussel, der zusammen mit dem CSR generiert wurde.
- SSLProtocol -all +TLSv1.2 +TLSv1.3 – deaktiviert die alten, unsicheren SSL/TLS-Protokolle und erlaubt nur TLS 1.2 und TLS 1.3.
- Strict-Transport-Security (HSTS) – weist Browser an, ausschliesslich uber HTTPS zu verbinden. Erfordert mod_headers (in Schritt 2 aktiviert). Aktivieren Sie diese Option erst, nachdem Sie bestatigt haben, dass HTTPS korrekt funktioniert.
Stellen Sie sicher, dass keine dieser Zeilen mit einem # beginnt (was sie auskommentieren wurde). Auf Debian/Ubuntu wird ${APACHE_LOG_DIR} zu /var/log/apache2 aufgelost; auf RHEL-basierten Systemen verwenden Sie stattdessen /var/log/httpd/.
Altere Server: Wenn Sie eine Apache-Version alter als 2.4.8 verwenden, bewahren Sie das Zertifikat und die Kette in separaten Dateien auf und fugen Sie die veraltete Direktive SSLCertificateChainFile /etc/ssl/example_com.ca-bundle unterhalb von SSLCertificateFile hinzu. Auf jedem modernen Server ist der oben beschriebene Full-Chain-Ansatz vorzuziehen.
Erweiterte Absicherung (optional): Fur eine starkere Cipher-Suite und OCSP-Stapling generieren Sie eine massgeschneiderte Konfiguration mit dem Mozilla SSL Configuration Generator. OCSP-Stapling erfordert ausserdem eine SSLStaplingCache-Direktive in Ihrer globalen Apache-Konfiguration.
Schritt 5: HTTP auf HTTPS umleiten
Um sicherzustellen, dass Besucher immer die sichere Version Ihrer Website erreichen, fugen Sie einen zweiten virtuellen Host auf Port 80 hinzu, der den gesamten HTTP-Datenverkehr dauerhaft auf HTTPS umleitet:
<VirtualHost *:80>
ServerName www.example.com
Redirect permanent / https://www.example.com/
</VirtualHost>
Schritt 6: Konfiguration testen und Apache neu starten
Testen Sie Ihre Konfiguration immer vor dem Neustart. Ein Syntaxfehler kann Ihre Website offline nehmen. Fuhren Sie daher folgenden Befehl aus:
sudo apachectl configtest
Wenn alles korrekt ist, sehen Sie:
Syntax OK
Wenden Sie die Anderungen nun an, indem Sie Apache neu laden (ein Reload aktiviert die neue Konfiguration, ohne bestehende Verbindungen zu unterbrechen):
sudo systemctl reload apache2 # Debian/Ubuntu
sudo systemctl reload httpd # RHEL/CentOS/AlmaLinux/Rocky
Wenn ein Reload nicht ausreicht, starten Sie den Dienst stattdessen neu (sudo systemctl restart apache2 oder httpd). Auf alteren Systemen ohne systemd verwenden Sie sudo apachectl graceful.
Wenn die Installation erfolgreich war, herzlichen Gluckwunsch! Ihre Website ist jetzt mit SSL/TLS gesichert.
SSL-Installation testen
Nachdem Sie Ihr SSL-Zertifikat auf Apache installiert haben, uberprufen Sie, ob alles wie erwartet funktioniert. Ein sofortiger Scan zeigt alle Fehler oder Schwachstellen auf, die die Leistung Ihres Zertifikats beeintrachtigen konnten. Verwenden Sie unser SSL Checker-Tool, um den Status Ihrer Installation zu uberprufen.
Sie konnen das Zertifikat und seine Kette auch direkt uber die Befehlszeile uberprufen:
openssl s_client -connect www.example.com:443 -servername www.example.com
Wo kauft man ein SSL-Zertifikat fur Apache?
Der beste Ort, um ein SSL-Zertifikat fur Apache zu erwerben, ist SSL Dragon. Wir bieten unschlagbare Preise und Rabatte fur unser gesamtes SSL-Produktsortiment und haben die besten SSL-Marken auf dem Markt sorgfaltig ausgewahlt, um Ihre Website mit zuverlassigem Schutz auszustatten. Alle unsere SSL-Zertifikate sind mit Apache kompatibel. Jetzt ein SSL-Zertifikat erwerben!
Beachten Sie, dass die Gultigkeitsdauer von SSL/TLS-Zertifikaten immer kurzer wird: Die maximale Gultigkeit sinkt im Marz 2026 auf 200 Tage, 2027 auf 100 Tage und bis 2029 auf nur noch 47 Tage. Kurzere Lebenszyklen bedeuten haufigere Erneuerungen, daher lohnt es sich, den Erneuerungsprozess (und die Automatisierung) im Voraus zu planen.
Haufig gestellte Fragen
SSL (Secure Sockets Layer), inzwischen abgelost durch TLS (Transport Layer Security), ist ein kryptografisches Protokoll, das die Kommunikation zwischen zwei Netzwerkendpunkten verschlusselt, beispielsweise zwischen einem Webserver wie Apache und dem Browser eines Benutzers.
Suchen Sie auf Debian- und Ubuntu-Distributionen in der Konfiguration nach der SSL-Protokoll-Direktive:grep -ir SSLProtocol /etc/apache2/
Wenn SSL konfiguriert ist, sehen Sie eine Ausgabe ahnlich wie:/etc/apache2/mods-available/ssl.conf:SSLProtocol +TLSv1.2 +TLSv1.3
Sie konnen auch bestatigen, dass das SSL-Modul in den laufenden Server geladen ist:apachectl -M | grep ssl
Die Konfigurationsdatei kann je nach Betriebssystem und Einrichtung an verschiedenen Speicherorten liegen. Auf Debian/Ubuntu prufen Sie /etc/apache2/apache2.conf und die Site-spezifischen Dateien in /etc/apache2/sites-available/. Auf RHEL/CentOS/AlmaLinux/Rocky prufen Sie /etc/httpd/conf/httpd.conf und /etc/httpd/conf.d/ssl.conf.
SSLCertificateFile verweist auf Ihr Serverzertifikat. Seit Apache 2.4.8 kann dieselbe Datei auch die Zwischenzertifikate enthalten und somit die vollstandige Kette bereitstellen. SSLCertificateChainFile war die alte Methode, diese Zwischenzertifikate separat bereitzustellen, wurde jedoch seit Apache 2.4.8 als veraltet eingestuft. Auf jedem modernen Server platzieren Sie das Zertifikat und die Zwischenzertifikate in einer Datei und referenzieren Sie diese ausschliesslich mit SSLCertificateFile.
Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!
Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10


