So installieren Sie Apache HTTPD auf Fedora 40 oder 39

Apache HTTP Server (HTTPD) ist einer der am häufigsten verwendeten Webserver der Welt und bekannt für seine Flexibilität, robuste Leistung und umfangreichen Konfigurationsoptionen. Er kann sowohl statische als auch dynamische Inhalte bereitstellen und sein modulares Design ermöglicht eine breite Palette von Funktionen wie SSL/TLS-Verschlüsselung, URL-Umleitung, Authentifizierung und mehr. Apache HTTPD wird besonders in Umgebungen bevorzugt, in denen Stabilität, Sicherheit und Skalierbarkeit von entscheidender Bedeutung sind. Er ist eine ausgezeichnete Wahl für das Hosten von Websites und Anwendungen, von kleinen persönlichen Projekten bis hin zu groß angelegten Unternehmenslösungen.

Unter Fedora 40 oder 39 kann Apache HTTPD ganz einfach mit Fedoras AppStream über den dnf-Paketmanager installiert werden. Diese Methode bietet einen unkomplizierten Installationsprozess mit Zugriff auf die neueste Version, die in den offiziellen Repositories von Fedora gepflegt wird, und stellt sicher, dass Sie über einen sicheren und aktuellen Webserver verfügen. Diese Anleitung führt Sie durch die Installation von Apache HTTPD über das Befehlszeilenterminal und ermöglicht Ihnen die Einrichtung und Konfiguration Ihres Webservers unter Fedora.

Aktualisieren Sie Fedora-Pakete vor der Apache-Installation

Zunächst einmal stellt die Aktualisierung Ihres Fedora-Systems sicher, dass es die neueste Software ausführt, was für die Kompatibilität und Sicherheit unabdingbar ist.

Öffnen Sie Ihr Terminal und führen Sie den Befehl aus:

sudo dnf upgrade --refresh

Dieser Befehl kombiniert die Verwendung von sudo für Administratorrechte mit dnf upgrade, um alle Pakete zu aktualisieren. Die Option –refresh stellt sicher, dass Sie die neuesten Informationen aus Ihren Repositories erhalten. Es ist wichtig, diesen Vorgang abzuschließen, bevor Sie mit dem nächsten Schritt fortfahren, um die Systemintegrität und einen reibungslosen Betrieb aufrechtzuerhalten.

Installieren Sie Apache (HTTPD) über den DNF-Befehl

Wenn Ihr System auf dem neuesten Stand ist, ist die Installation von Apache, auch bekannt als HTTPD, unkompliziert. Fedora verwendet für solche Aufgaben den DNF-Paketmanager.

Führen Sie in Ihrem Terminal Folgendes aus:

sudo dnf install httpd

Dieser Befehl ruft Apache ab und installiert es auf Ihrem Fedora-System. DNF kümmert sich um Abhängigkeiten und Konfigurationen und vereinfacht so die Installation. Der Vorgang ist normalerweise schnell und Apache ist nach Abschluss einsatzbereit.

Apache-Dienst (HTTPD) aktivieren

Sobald Apache installiert ist, besteht der nächste Schritt darin, den Dienst zu starten und zu aktivieren, um sicherzustellen, dass er beim Booten ausgeführt wird. Wenn er nicht automatisch aktiviert wird, verwenden Sie diese Befehle:

sudo systemctl start httpd
sudo systemctl enable httpd

„sudo systemctl start httpd“ startet den Apache-Dienst und „sudo systemctl enable httpd“ stellt ihn so ein, dass er beim Booten gestartet wird. Dieser zweistufige Ansatz stellt sicher, dass Apache aktiv und dauerhaft verfügbar ist.

Alternativ können Sie diese Schritte kombinieren:

sudo systemctl enable httpd --now

Das Flag –now mit sudo systemctl enable httpd startet Apache sofort und konfiguriert es so, dass es beim Booten gestartet wird, wodurch der Prozess optimiert wird.

Überprüfen des Apache-Dienststatus (HTTPD)

Überprüfen Sie abschließend den Status von Apache:

systemctl status httpd

Dieser Befehl gibt den Betriebsstatus von Apache an. Die Ausgabe enthält den aktuellen Status des Dienstes und alle Fehlermeldungen, die für die Fehlerbehebung wichtig sind. Eine regelmäßige Überprüfung kann dazu beitragen, ein stabiles und funktionsfähiges Apache-Setup auf Ihrem Fedora-System aufrechtzuerhalten.

Konfigurieren Sie Firewalld-Regeln für Apache

Öffnen von Ports für HTTP und HTTPS

Nach der Installation von Apache (HTTPD) auf Fedora ist es wichtig, Firewalld so zu konfigurieren, dass Datenverkehr auf den Ports 80 (HTTP) und 443 (HTTPS) zugelassen wird. Diese Schritte sind für die Sicherheit und Zugänglichkeit Ihrer Webanwendung von entscheidender Bedeutung.

Öffnen von Port 80 (HTTP):

Führen Sie den folgenden Befehl aus, um Port 80 zu öffnen, der für HTTP-Verkehr verwendet wird:

sudo firewall-cmd --permanent --add-port=80/tcp

Dieser Befehl konfiguriert Firewalld so, dass eingehender TCP-Verkehr auf Port 80 zugelassen wird, der üblicherweise für unverschlüsselten Web-Verkehr verwendet wird.

Öffnen von Port 443 (HTTPS):

Um sicheren, verschlüsselten Datenverkehr zuzulassen, öffnen Sie Port 443 mit diesem Befehl:

sudo firewall-cmd --permanent --add-port=443/tcp

Port 443 wird für HTTPS-Verkehr verwendet und ermöglicht eine verschlüsselte Kommunikation zwischen Clients und Server.

Anwenden der Firewall-Änderungen:

Nachdem Sie die Regeln festgelegt haben, wenden Sie sie an, indem Sie Firewalld neu laden:

sudo firewall-cmd --reload

Durch das Neuladen der Firewall wird sichergestellt, dass alle Änderungen sofort aktiv und wirksam sind.

Sicherheitsüberlegungen

Es ist wichtig, die Sicherheitsauswirkungen dieser Änderungen zu verstehen. Indem Sie nur die erforderlichen Ports öffnen, minimieren Sie potenzielle Schwachstellen und schützen Ihre Anwendung vor unbefugtem Zugriff und Bedrohungen.

Überprüfen der Apache-Zugänglichkeit

Um die erfolgreiche Konfiguration zu bestätigen, rufen Sie die Zielseite von Apache (HTTPD) auf:

  1. Öffnen Sie Ihren Webbrowser.
  2. Navigieren Sie zu http://localhost oder http:// .

Bei korrekter Konfiguration sollte die Apache-Standardseite angezeigt werden, die den Betriebsstatus des Servers bestätigt.

Beheben von Zugriffsproblemen

Wenn Sie nicht auf die Zielseite zugreifen können, führen Sie die folgenden Schritte aus:

  • Überprüfen Sie die Firewall-Regeln auf Richtigkeit.
  • Überprüfen Sie den Apache-Dienststatus.
  • Untersuchen Sie die Serverkonfigurationen auf Fehler.

Durch die Berücksichtigung dieser Aspekte können Sie alle Probleme identifizieren und lösen, die den Zugriff auf Apache unter Fedora behindern.

Erstellen Sie einen virtuellen Host auf Apache

Erstellen und Konfigurieren von Verzeichnissen für Ihren virtuellen Host

Erstellen Sie zunächst ein Verzeichnis für Ihren virtuellen Host unter Fedora Linux. Dieses Verzeichnis dient als Stammverzeichnis für die Dateien Ihrer Website. Verwenden Sie für eine Domäne wie „example.com“ den folgenden Befehl:

sudo mkdir /var/www/example.com

Ersetzen Sie „example.com“ durch Ihren tatsächlichen Domänennamen. Dieses Verzeichnis enthält alle Website-Dateien, einschließlich HTML, Bilder und Skripte. Aus organisatorischen und Sicherheitsgründen ist es ratsam, separate Verzeichnisse für verschiedene virtuelle Hosts zu erstellen.

Legen Sie den Eigentümer und die Berechtigungen des Verzeichnisses fest, sodass Apache darauf zugreifen kann:

sudo chown -R apache:apache /var/www/example.com
sudo chmod -R 755 /var/www/example.com

Der erste Befehl ändert den Verzeichnisbesitz zum Apache-Benutzer und zur Apache-Gruppe und der zweite legt die erforderlichen Berechtigungen fest.

Erstellen Sie in diesem Verzeichnis eine Datei index.html. Diese Datei ist die erste Seite, die Besucher sehen. Verwenden Sie einen Texteditor wie Nano, um diese Datei zu erstellen:

sudo nano /var/www/example.com/index.html

Innerhalb des Editors können Sie die folgende HTML-Struktur hinzufügen:

<html>
  <head>
    <title>Example Domain</title>
  </head>
  <body>
    <h1>Welcome to Example Domain</h1>
    <p>This is a sample page for the domain example.com.</p>
  </body>
</html>

Passen Sie dieses HTML an die Anforderungen Ihrer Site an. Speichern Sie und verlassen Sie den Editor mit Strg + X, gefolgt von Y und Eingabe.

Virtuellen Host erstellen

Einrichten von Verzeichnissen für Apache

Erstellen Sie zunächst die Verzeichnisse „sites-available“ und „sites-enabled“:

sudo mkdir /etc/httpd/sites-available /etc/httpd/sites-enabled

Diese Verzeichnisse helfen bei der Organisation virtueller Hostkonfigurationen. Bearbeiten Sie nun die Apache-Konfigurationsdatei:

sudo nano /etc/httpd/conf/httpd.conf

Fügen Sie am Ende der Datei hinzu:

#IncludeOptional conf.d/*.conf
IncludeOptional sites-enabled/*.conf

Speichern und beenden Sie mit Strg + O und Strg + X.

Konfigurieren Ihres virtuellen Hosts

Erstellen Sie eine Konfigurationsdatei für Ihre Domäne:

sudo nano /etc/httpd/sites-available/example.com.conf

Fügen Sie in der Datei die folgende Konfiguration hinzu und passen Sie ServerName, ServerAlias ​​und DocumentRoot nach Bedarf an:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName example_domain
    ServerAlias www.example_domain
    DocumentRoot /var/www/example.com/
</VirtualHost>

Zugriffsberechtigungen ändern

Ändern Sie die Zugriffsberechtigungen von Apache, um öffentlichen Zugriff zuzulassen. Bearbeiten Sie die Hauptkonfigurationsdatei:

sudo nano /etc/httpd/conf/httpd.conf

Fügen Sie am Ende diese Zeilen hinzu:

<Directory /var/www/example.com/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>

Speichern und beenden Sie mit Strg + O und Strg + X.

Virtuellen Host aktivieren

Erstellen Sie einen symbolischen Link, um den virtuellen Host zu aktivieren:

sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/

Starten Sie Apache neu, um die Änderungen anzuwenden:

sudo systemctl restart httpd

Rufen Sie nach dem Neustart von Apache http://example_domain in Ihrem Webbrowser auf. Verwenden Sie die IP-Adresse des Servers, wenn Sie keine Domäne registriert haben. Sie sollten die Zielseite sehen, die Sie zuvor erstellt haben.

Apache (HTTPD)-Dienst verwalten0

Apache-Serverprotokolle

Apache-Serverprotokolle sind für die Überwachung und Fehlerbehebung von entscheidender Bedeutung. Sie befinden sich standardmäßig in /var/log/httpd/. Die Standarddateinamen sind access.log für Zugriffsprotokolle und error.log für Fehlerprotokolle. Sie können diese Dateinamen jedoch in der Konfigurationsdatei des virtuellen Hosts anpassen.

Anpassen von Protokolldateinamen

Um die Protokolldateinamen zu ändern, bearbeiten Sie die Konfigurationsdatei des virtuellen Hosts. Hier ist ein Beispiel für benutzerdefinierte Protokollnamen:

<VirtualHost *:80>
    ServerName www.example.com
    DocumentRoot /var/www/example.com
    
    # Change access log to custom-access.log
    CustomLog /var/log/httpd/custom-access.log combined
    
    # Change error log to custom-error.log
    ErrorLog /var/log/httpd/custom-error.log
</VirtualHost>

Diese Konfiguration legt custom-access.log und custom-error.log als neue Dateinamen für Zugriffs- und Fehlerprotokolle fest. Denken Sie daran, beim Konfigurieren benutzerdefinierter Protokollnamen den richtigen Dateipfad anzugeben.

Apache-Befehle für die Dienstverwaltung

Zur Verwaltung des Apache-Dienstes ist eine Reihe von Befehlen erforderlich, mit denen Sie seinen Betrieb steuern können:

Apache stoppen:

Um den Apache-Server zu stoppen, verwenden Sie:

sudo systemctl stop httpd

Dieser Befehl hält den Apache-Dienst an, bis er erneut gestartet wird.

Apache starten:

Um den Apache-Server zu starten, verwenden Sie:

sudo systemctl start httpd

Dieser Befehl aktiviert den Apache-Dienst und macht ihn bereit, Webinhalte bereitzustellen.

Apache neu starten:

Um den Apache-Server neu zu starten, verwenden Sie:

sudo systemctl restart httpd

Ein Neustart ist nützlich, um Konfigurationsänderungen anzuwenden oder eine Wiederherstellung nach nicht kritischen Fehlern durchzuführen.

Apache neu laden:

Um den Apache-Server neu zu laden, verwenden Sie:

sudo systemctl reload httpd

Durch das Neuladen werden Konfigurationsänderungen angewendet, ohne den laufenden Dienst zu unterbrechen.

Deaktivieren von Apache beim Booten:

Um zu verhindern, dass Apache beim Booten automatisch gestartet wird, verwenden Sie:

sudo systemctl disable httpd

Dieser Befehl entfernt Apache aus der Liste der Dienste, die beim Systemstart gestartet werden.

Aktivieren von Apache beim Booten:

Um Apache so einzustellen, dass es beim Booten automatisch gestartet wird, verwenden Sie:

sudo systemctl enable httpd

Dadurch wird sichergestellt, dass Apache bei jedem Systemstart gestartet wird, wodurch eine durchgängige Verfügbarkeit der Webdienste gewährleistet wird.

Sichern Sie Apache mit dem kostenlosen SSL-Zertifikat von Let’s Encrypt

Installieren Sie Certbot für die Automatisierung von SSL/TLS-Zertifikaten

Beginnen Sie mit der Installation von Certbot, einem Tool zur Automatisierung des Erwerbs und der Erneuerung von SSL/TLS-Zertifikaten, das die HTTPS-Verschlüsselung Ihrer Website gewährleistet. Um Certbot zu installieren, führen Sie Folgendes aus:

sudo dnf install certbot python3-certbot-apache

Generieren Sie ein SSL/TLS-Zertifikat für Ihre Domain

Generieren Sie nach der Installation mit diesem Befehl ein SSL/TLS-Zertifikat für Ihre Domäne:

sudo certbot --apache -d example.com

Ersetzen Sie „example.com“ durch Ihren tatsächlichen Domänennamen.

Alternativer Befehl zum Generieren eines SSL-Zertifikats

Für eine umfassende SSL-Einrichtung verwenden Sie den folgenden Befehl:

sudo certbot --dry-run --apache --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d www.example.com
  • –dry-run: Testet die Zertifikatsgenerierung ohne das System zu verändern.
  • –apache: Gibt an, dass das Zertifikat für einen Apache-Server ist.
  • –agree-tos: Stimmt den Nutzungsbedingungen von Let’s Encrypt zu.
  • –redirect: Leitet HTTP-Verkehr auf HTTPS um.
  • –hsts: Aktiviert HTTP Strict Transport Security und stellt nur sichere HTTPS-Verbindungen sicher.
  • –staple-ocsp: Aktiviert OCSP-Stapling zur Überprüfung des SSL-Zertifikats.
  • –email: Ihre mit dem Zertifikat verknüpfte E-Mail-Adresse.
  • -d: Der Domänenname für das Zertifikat, hier „www.example.com“.

Konfigurieren von Apache zur Verwendung des SSL-Zertifikats

Um Apache zu konfigurieren, öffnen Sie die SSL-Konfigurationsdatei:

sudo nano /etc/httpd/conf.d/ssl.conf

Fügen Sie in dieser Datei die folgenden Zeilen hinzu und ersetzen Sie „example.com“ durch Ihre Domäne:

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

Überprüfen und Erneuern des SSL-Zertifikats

Nach der Installation wechselt Ihre Website von „HTTP://www.example.com“ zu „HTTPS://www.example.com“, um eine verschlüsselte und sichere Kommunikation zu gewährleisten.

Einrichten der automatischen Zertifikatserneuerung

Um das SSL-Zertifikat auf dem neuesten Stand zu halten, richten Sie einen Cron-Job für die Certbot-Erneuerung ein. Testen Sie zunächst den Erneuerungsprozess:

sudo systemctl restart httpd 

Dieser Test stellt sicher, dass das Erneuerungsskript ordnungsgemäß funktioniert, bevor es als Cron-Job geplant wird.

sudo certbot renew --dry-run

Erneuerung und Verwaltung von SSL-Zertifikaten

Überprüfen des SSL-Zertifikatstatus

Bevor Sie den Erneuerungsprozess automatisieren, ist es wichtig, den aktuellen Status Ihrer SSL-Zertifikate zu kennen. Um den Status, einschließlich der Ablaufdaten aller von Certbot verwalteten Zertifikate, zu überprüfen, verwenden Sie diesen Befehl:

sudo certbot certificates

Dieser Befehl liefert eine Liste aller von Certbot verwalteten SSL-Zertifikate zusammen mit ihren jeweiligen Ablaufdaten. Diese Informationen sind wichtig, um zu bestätigen, dass Ihre Zertifikate aktiv sind und um zu verstehen, wann sie erneuert werden müssen.

Automatische Erneuerung von SSL-Zertifikaten

Um einen unterbrechungsfreien HTTPS-Dienst zu gewährleisten, müssen SSL-Zertifikate regelmäßig erneuert werden. Die Automatisierung dieses Prozesses ist für die Aufrechterhaltung einer sicheren Website von entscheidender Bedeutung.

Cronie für Cron-Jobs installieren

Wenn Cronie, der Cron-Job-Manager, nicht auf Ihrem Fedora-System installiert ist, installieren Sie ihn mit:

sudo crontab -e

Mit Cronie können Sie Aufgaben wie das Certbot-Erneuerungsskript so planen, dass sie zu festgelegten Zeiten und in festgelegten Intervallen ausgeführt werden.

Bearbeiten der Cron-Job-Konfiguration

Planen Sie nach der Installation von Cronie die Erneuerung des SSL-Zertifikats, indem Sie die Cron-Job-Konfiguration bearbeiten:

sudo dnf install cronie

Dieser Befehl öffnet den Crontab-Editor, wo Sie geplante Aufgaben hinzufügen können.

Planen des Erneuerungsauftrags

Fügen Sie im Crontab-Editor die folgende Zeile hinzu, um den Erneuerungsbefehl so zu planen, dass er zweimal täglich ausgeführt wird:

0 6,18 * * * certbot renew --quiet

Dieser Cron-Job ist so eingestellt, dass der Befehl „Certbot Renew“ täglich um 6:00 Uhr und 18:00 Uhr ausgeführt wird. Die Option –quiet stellt sicher, dass Certbot im Hintergrund ausgeführt wird, ohne unnötige Ausgaben zu erzeugen.

Den Erneuerungsprozess von Certbot verstehen

Certbot verwaltet den Erneuerungsprozess intelligent. Es versucht nur, Zertifikate zu erneuern, die innerhalb von 30 Tagen ablaufen. Wenn ein Zertifikat nicht erneuert werden muss, führt Certbot keine Aktion aus. Diese Effizienz stellt sicher, dass Ihr Server nicht mit unnötigen Prozessen belastet wird und dass Ihre SSL-Zertifikate immer auf dem neuesten Stand sind.

Das Einrichten dieses automatischen Erneuerungsprozesses ist eine bewährte Methode zur Aufrechterhaltung einer kontinuierlichen HTTPS-Verschlüsselung und stellt sicher, dass Ihre Website sicher bleibt und von Benutzern und Suchmaschinen als vertrauenswürdig eingestuft wird.

Zusätzliche Befehle und Tipps

Sichere Verzeichnisse und Dateien auf Apache

Um die Sicherheit Ihres Servers zu gewährleisten, müssen Sie entsprechende Berechtigungen für Dateien und Verzeichnisse festlegen. Zu freizügige Einstellungen können Ihren Server Risiken aussetzen.

Festlegen sicherer Berechtigungen

Verwenden Sie für Verzeichnisse und Dateien unter /var/www/example.com/ diese Befehle:

sudo find /var/www/example.com/ -type d -exec chmod 755 "{}" \;
sudo find /var/www/example.com/ -type f -exec chmod 644 "{}" \;

Diese Befehle setzen Verzeichnisse auf 755 (Lesen, Schreiben, Ausführen für den Eigentümer und Lesen und Ausführen für andere) und Dateien auf 644 (Lesen und Schreiben für den Eigentümer, Lesen für andere). Dabei handelt es sich um standardmäßige sichere Berechtigungen.

Spezielle Berechtigungen für bestimmte Anwendungen

Beachten Sie, dass einige Anwendungen, wie z. B. phpBB, für bestimmte Ordner möglicherweise die Berechtigung 777 benötigen. Passen Sie die Berechtigungen immer entsprechend den Anwendungsanforderungen an.

Umfassender Sicherheitsansatz

Denken Sie daran, dass das Festlegen von Berechtigungen nur einen Aspekt der Sicherheit darstellt. Für einen zuverlässigen Serverschutz sind die Implementierung von SSL-Zertifikaten und die richtige Firewall-Konfiguration von entscheidender Bedeutung.

Apache (HTTPD) auf Fedora aktualisieren

Für die Sicherheit und Leistung ist es entscheidend, Apache auf dem neuesten Stand zu halten.

Aktualisieren von Apache

Um Apache und andere Systempakete zu aktualisieren, verwenden Sie:

sudo dnf update --refresh

Dieser Befehl aktualisiert die Paketdatenbank und alle installierten Pakete, einschließlich Apache.

Vorsichtsmaßnahmen vor dem Update

Sichern Sie Ihr System immer oder erstellen Sie Images, bevor Sie Updates durchführen, um sich vor potenziellen Problemen zu schützen.

Entfernen (deinstallieren) Sie Apache von Fedora

In Szenarien, in denen Apache aus dem System entfernt werden muss, führen Sie diese Schritte aus:

Deaktivieren und Stoppen von Apache

Deaktivieren und stoppen Sie zunächst den Apache-Dienst:

sudo systemctl disable httpd --now

Dieser Befehl stoppt den Apache-Dienst und verhindert, dass er beim Booten automatisch gestartet wird.

Deinstallieren von Apache

Um Apache von Ihrem System zu entfernen, führen Sie Folgendes aus:

sudo dnf remove httpd

Dieser Befehl deinstalliert das Apache-Paket.

Bereinigen übrig gebliebener Dateien

Entfernen Sie nach der Deinstallation alle verbleibenden Dateien im Apache-Konfigurationsverzeichnis:

sudo rm -R /etc/httpd/

Dieser Schritt stellt sicher, dass alle Apache-bezogenen Dateien vollständig von Ihrem System entfernt werden.

Abschluss

Durch die Installation von Apache HTTPD auf Fedora über AppStream erhalten Sie einen leistungsstarken und zuverlässigen Webserver, der gut in Ihr Fedora-System integriert ist. Der dnf-Paketmanager sorgt dafür, dass Ihre Installation reibungslos verläuft und Updates problemlos verwaltet werden können. Nach der Installation sollten Sie die umfangreichen Konfigurationsoptionen von Apache erkunden, um den Server an Ihre spezifischen Anforderungen anzupassen, sei es für die Bereitstellung statischer Websites, die Ausführung dynamischer Anwendungen oder die Verwaltung komplexer Webumgebungen.

Joshua James
Folgen Sie mir
Letzte Artikel von Joshua James (Alle anzeigen)

Hinterlasse einen Kommentar