Einführung
Apache ist eine beliebte Linux-basierte Webserver-Anwendung. Es ist Teil des LAMP-Stacks (Linux, Apache, MySQL, PHP), der einen Großteil des Internets antreibt.
Diese Anleitung zeigt Ihnen, wie Sie Apache unter CentOS 8 installieren.
Voraussetzungen
- Ein System mit CentOS 8 Linux
- Zugriff auf ein Terminalfenster / eine Befehlszeile (Strg –Alt –F2 )
- Ein Benutzerkonto mit sudo- oder root-Berechtigungen
Installieren von Apache Web Server auf CentOS 8
Schritt 1:Software-Repository aktualisieren
Öffnen Sie ein Terminalfenster und aktualisieren Sie die Paketlisten des Repositorys, indem Sie Folgendes eingeben:
sudo yum update
Schritt 2:Apache installieren
Jetzt können Sie Apache mit dem Befehl installieren:
sudo yum –y install httpd
Schritt 3:Apache-Webserver starten und verwalten
Apache ist ein Dienst, der im Hintergrund läuft.
Starten Sie den Apache-Dienst, indem Sie Folgendes eingeben:
sudo systemctl start httpd
Das System gibt keine Ausgabe zurück, wenn der Befehl ordnungsgemäß ausgeführt wird.
So konfigurieren Sie Apache für die Ausführung beim Start:
sudo systemctl enable httpd
So überprüfen Sie den Status des Apache-Dienstes:
sudo systemctl status httpd
So laden Sie Apache neu (lädt Konfigurationsdateien neu, um Änderungen anzuwenden):
sudo systemctl reload httpd
So starten Sie den gesamten Apache-Dienst neu:
sudo systemctl restart httpd
So stoppen Sie Apache:
sudo systemctl stop httpd
So deaktivieren Sie Apache beim Systemstart:
sudo systemctl disable httpd
Schritt 4:Apache-Webserver testen
Die Aufgabe Ihrer Apache-Software besteht darin, Webseiten über ein Netzwerk bereitzustellen. Ihre neue Apache-Installation hat eine Standard-Testseite, aber Sie können auch eine benutzerdefinierte Testseite erstellen.
Überprüfen Sie die Standard-Apache-Testseite
Suchen Sie in einem Terminalfenster die IP-Adresse Ihres Systems wie folgt:
hostname -I | awk '{print $1}'
Wenn Sie mit ip addr show
vertraut sind oder ifconfig-Befehle, Sie können stattdessen diese verwenden.
Öffnen Sie einen Webbrowser und geben Sie die in der Ausgabe angezeigte IP-Adresse ein. Das System sollte die Apache HTTP Server-Testseite anzeigen, wie im folgenden Bild zu sehen:
Wenn Ihr System keine grafische Oberfläche hat, verwenden Sie curl
Befehl:
curl [your_system's_IP_address]:80
Optional:Erstellen Sie eine HTML-Datei zum Testen
Wenn Sie aus irgendeinem Grund eine benutzerdefinierte HTML-Seite benötigen oder haben, die Sie als Testseite verwenden möchten, gehen Sie wie folgt vor:
Erstellen Sie in einem Terminalfenster eine neue HTML-Indexdatei:
echo My Apache Web Server on CentOS 8 > /var/www/html/index.html
Bearbeiten Sie die Datei nach Ihren Wünschen und speichern Sie sie.
Jetzt können Sie den Schritten im vorherigen Abschnitt folgen (überprüfen Sie Ihre IP-Adresse und navigieren Sie in einem Webbrowser zu ihr oder verwenden Sie curl
Befehl).
Ihr Apache-Server funktioniert ordnungsgemäß, wenn er die angegebene benutzerdefinierte Seite anzeigt.
Schritt 5:Firewall für Apache anpassen
Die Firewall Ihres Systems blockiert den Datenverkehr an verschiedenen Ports. Jeder Port hat eine Nummer, und verschiedene Arten von Datenverkehr verwenden unterschiedliche Ports. Für Ihren Webserver müssen Sie HTTP- und HTTPS-Datenverkehr auf den Ports 80 bzw. 443 zulassen.
Geben Sie in einem Terminal Folgendes ein:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
Firewalld neu starten:
sudo firewall-cmd --reload
Überprüfen Sie noch einmal, ob Ihre Firewall richtig konfiguriert ist:
sudo firewall-cmd --list-all | grep services
Sie sollten http und https in der Liste der erlaubten Dienste sehen.
Apache bietet auch ModSecurity an , ein Plug-in-Modul, das als Firewall fungiert. Sie können ModSecurity als zusätzliche Sicherheitsschicht installieren und konfigurieren, die Ihnen hilft, den Datenverkehr zu überwachen und auf Unregelmäßigkeiten zu reagieren.
Apache-Dateien und -Verzeichnisse
Apache wird durch Anwenden von Direktiven gesteuert in Konfigurationsdateien:
- /etc/httpd/conf/httpd.conf – Apache-Hauptkonfigurationsdatei
- /etc/httpd/ – Speicherort für alle Konfigurationsdateien
- /etc/httpd/conf.d/ – Alle Konfigurationsdateien in diesem Verzeichnis sind in der Haupt-Konfogdatei enthalten
- /etc/httpd/conf.modules.d/ – Speicherort für Konfigurationsdateien des Apache-Moduls
Überprüfen Sie sorgfältig die Apache-Protokolldateien, um Ihren Webserver zu überwachen:
- /var/log/httpd/ – Speicherort der Apache-Protokolldateien
- /var/log/httpd/access_log – Zeigt ein Protokoll der Systeme an, die auf den Server zugegriffen haben
- /var/log/httpd/error_log – Zeigt eine Liste aller Fehler an, auf die Apache stößt
Legen Sie ein Verzeichnis zum Speichern der Dateien für Ihre Website fest. Verwenden Sie die Konfigurationsdateien, um auf das von Ihnen gewählte Verzeichnis zu verweisen. Einige typische Speicherorte sind:
- /home/benutzername/meine_website
- /var/www/meine_website
- /var/www/html/meine_website
- /opt/meine_website