
Erfahren Sie, wie Sie den Apache für WordPress installieren und konfigurieren. Mit dieser Anleitung zeigen wir Ihnen, wie Sie den Apache für eine WordPress-Installation installieren und einrichten.
Mit der Einrichtung von Apache-SSL wird der beliebte Webserver für die Nutzung von HTTPS konfiguriert. HTTPS verschlüsselt die Verbindung zwischen dem Browser des Nutzers und dem Webserver. Zur Einrichtung werden je nach Hosting-Umgebung ggf. manuelle Schritte auf dem Server durchgeführt. Wir zeigen, wie dabei vorzugehen ist.
Um mit dem Apache-Webserver SSL-verschlüsselte Verbindungen aufbauen zu können, bedarf es zunächst eines gültigen SSL-Zertifikats. Bei günstigen Shared-Hosting-Paketen werden SSL-Zertifikate heutzutage meist via „Let’s Encrypt“ kostenlos zur Verfügung gestellt und automatisch konfiguriert. Es gibt jedoch mannigfaltige Möglichkeiten, ein SSL-Zertifikat zu beziehen. Für professionelle Anwendungen lohnt es sich, ein eigens ausgestelltes SSL-Zertifikat einzurichten. So wird Seitenbesucherinnen und -besuchern signalisiert, dass sie tatsächlich mit der gewünschten Organisation kommunizieren. Das schafft zusätzliches Vertrauen.
SSL-Zertifikate von IONOS!
Wahren Sie dank SSL-Zertifikaten die Geheimhaltung Ihres Online-Verkehrs und stärken Sie das Vertrauen Ihrer Kunden in die Sicherheit Ihrer Webseite.
Grundsätzlich wird ein SSL-Zertifikat für eine bestimmte Domain ausgestellt. Dabei handelt es sich um ein rein technisches Prüfkriterium. Darüber hinaus existieren strengere Validierungsstufen, bis hin zur Verifizierung der Organisations-Identität durch einen Menschen. Schauen wir uns die unterschiedlichen Validierungsstufen im Überblick an:
Validierung | Erklärung | Nutzen |
---|---|---|
Domain Validation (DV) | Stellt sicher, dass Kommunikation verschlüsselt und nur mit der angegebenen Domain erfolgt. Macht keine Aussage darüber, wem die Domain gehört. | Führt bei Phishing-Versuch oder Man-in-the-middle-Angriff zur Warnmeldung im Browser. |
Organization Validation (OV) | Wie DV; zusätzlich wird geprüft, dass die Domain zur angegebenen Organisation gehört. | Gilt als Mindestvoraussetzung für den Onlinehandel. |
Extended Validation (EV) | Wie OV; zusätzlich menschliche Prüfung der Unternehmensidentität. | Wird von großen Organisationen wie Banken sowie von offiziellen Stellen eingesetzt. |
Neben SSL-Zertifikaten für einzelne Domains existieren sogenannte Wildcard-Zertifikate. Diese gelten für alle Subdomains unterhalb einer angegebenen Domain. So gilt das Zertifikat *.example.com für die Domains www.example.com, dev.example.com, shop.example.com, blog.example.com etc. Wildcard-Zertifikate sind praktisch, um auf einem Server Live- und Staging-Site bzw. Homepage und Shop oder Blog parallel zu betreiben.
Liegt bereits ein gültiges SSL-Zertifikat vor, benötigt man zum Einrichten von Apache-SSL noch SSH-Zugriff auf den Webserver sowie „sudo“- bzw. „root“-Zugang.
Lernen Sie, einen Apache-Webserver selbst einzurichten!
Das spezifische Vorgehen zum Einrichten von Apache-SSL ist abhängig von dem eingesetzten Betriebssystem (OS) und der Apache-Version. Wir zeigen hier den Prozess für das „Apache httpd 2.4 default layout“. Die häufig anzutreffende Umgebung Apache2 auf Ubuntu erfordert ein etwas anderes Vorgehen. Weitere Konfigurationen für geläufige Kombinationen von OS und Apache-Version finden Sie im offiziellen Apache-Wiki.
Der generelle Prozess beim manuellen Einrichten von Apache-SSL umfasst die folgenden Schritte:
Schauen wir uns die einzelnen Schritte im Detail an.
Um die SSL-Zertifikatsdateien zu erlangen, wird ein „Certificate Signing Request“ (CSR) ausgeführt. Der CSR-Prozess verknüpft den Domain-Namen mit identifizierenden Merkmalen der Organisation sowie einem kryptografischen Schlüssel. Das Ausführen des CSR erfolgt in Abhängigkeit vom Zertifikatsanbieter entweder über eine Weboberfläche oder von der Kommandozeile aus. Wir zeigen exemplarisch ein Beispiel für ein Certificate Signing Request via OpenSSL:
openssl req –new –newkey rsa:2048 –nodes –keyout <server-name>.key –out <server-name>.csr
Beim Ausführen des Befehls wird eine Reihe von Informationen abgefragt; ferner werden eine Handvoll Dateien erzeugt. Wir geben eine Übersicht der beim Ausführen des Certificate Signing Request (CSR) erzeugten Dateien samt Datei-Erweiterungen:
Datei | Erweiterung | Erläuterung |
---|---|---|
Privater Schlüssel | .key | Wird genutzt, um CSR zu erzeugen und später Verbindungen mithilfe des Zertifikats abzusichern und zu verifizieren. |
CSR-Datei | .csr | Wird benötigt, um das SSL-Zertifikat zu bestellen. |
Intermediäres SSL-Zertifikat | .crt | Zertifikat, welches eine Zertifizierungsstelle befähigt, weitere Zertifikate auszustellen. |
Primäres SSL-Zertifikat | .crt | Für eine spezifische Domain und Organisation ausgestelltes SSL-Zertifikat. |
Zum Einrichten von Apache-SSL werden die Zertifikatsdateien auf dem Server platziert. In der Regel handelt es sich um zwei bis drei Dateien:
Wir legen diese Dateien in einen eigenen Ordner und stellen sicher, dass sie nur vom Root-Benutzer lesbar sind. Von der Kommandozeile aus nutzen wir die folgenden Schritte:
mkdir -p /root/cert/
mv /path/to/cert-files/* /root/cert/
chown root:root /root/cert/
chown root:root /root/cert/*
chmod 400 /root/cert/*
chmod 500 /root/cert/
Beim Schützen des Zertifikatsordners handelt es sich nicht um denselben Prozess wie beim Setzen eines Passwortschutzes für ein Verzeichnis mit Apache.
Sobald die Zertifikatsdateien auf dem Server liegen, können Sie sich der Apache-SSL-Konfiguration zuwenden. Das Herzstück der Apache-SSL-Konfiguration ist ein „Virtual Host“-Block (VHost-Block). Meist existiert bereits ein VHost-Block für HTTP-Verbindungen. Soll der Server sowohl auf HTTPS- als auch auf HTTP-Anfragen antworten, werden beide VHost-Blöcke benötigt.
nano /usr/local/apache2/conf/httpd.conf
Der gesuchte Block für HTTP enthält die Portnummer 80:
<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName your.domain.example.com
</VirtualHost>
Wir duplizieren den HTTP-VHost-Block, passen den Port auf 443 an und fügen die Apache-SSL-spezifischen Einstellungen hinzu:
<VirtualHost *:443>
DocumentRoot "/var/www/html"
ServerName your.domain.example.com
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.crt
SSLCertificateKeyFile /path/to/your_private.key
SSLCertificateChainFile /path/to/DigiCertCA.crt
</VirtualHost>
Im Anschluss speichern wir die Änderungen an der Apache-Konfigurationsdatei.
Beim Einrichten der Apache-SSL-Konfiguration kann einiges schiefgehen. Je nach Einsatzszenario und Anforderungen gibt es subtile Unterschiede der Einstellungen. Es ist daher notwendig, die Apache-SSL-Funktionalität zu testen. Dazu gibt es das praktische Kommandozeilen-Tool 'apachectl':
apachectl configtest
Sollte dieser Befehl nicht funktionieren, versuchen wir den alternativen Befehl 'apache2ctl':
apache2ctl configtest
Sofern der Test erfolgreich war, starten wir im Anschluss den Apache-Server neu:
apachectl restart
Nachdem der Apache-Server mit angepasster Konfiguration neu startet, testen wir die SSL-Verbindung. Dazu rufen wir die Site in mindestens zwei verschiedenen Browsern auf. Zu guter Letzt unterziehen wir das installierte Zertifikat einem Gütetest. Dazu nutzen wir den kostenlosen SSL-Check von IONOS.
Lernen Sie, wie bei der Verbesserung der Performance eines Apache-Webservers vorzugehen ist!
Nur für kurze Zeit: So erhalten Sie zwei Gratis-Domains!
Kaufen Sie eine .de-Domain und erhalten Sie eine .com und .info Domain gratis dazu.
Sie empfehlen unsere Produkte über unseren Partner Aklamio weiter. Wir bedanken uns mit einer Geldprämie.
Weiterempfehlen