So installieren und konfigurieren Sie Apache auf CentOS/RHEL 8

So installieren und konfigurieren Sie Apache auf CentOS/RHEL 8

CentOS 8 ist die neueste Veröffentlichung des CentOS Linux -Betriebssystems, das auf Red Hat Enterprise Linux 8 basiert. In diesem Tutorial helfen wir Ihnen bei der Installation des Apache -Webservers auf CentOS 8 oder RHEL 8 -System mit zusätzlicher Konfiguration und Sicherheit.

Voraussetzungen

  • SSH -Zugang zu CentOS/Rhel 8 -System
  • Sudo -Berechtigungen an den Benutzer, um Pakete zu installieren

Schritt 1 - Apache auf CentOS 8 installieren

Melden Sie sich zunächst bei Ihrem CentOS 8 oder RHEL 8 -System über SSH an. Installieren Sie dann Apache2 HTTP -Serverpakete mit dem folgenden Befehl. Dies installiert auch zusätzliche erforderliche Pakete auf Ihrem System.

sudo dnf install httpd installieren 

Warten Sie auf die Abschluss der Installation

Schritt 2 - Apache -Dienst verwalten

Apache -Dienst wird mit der SystemCTL -Befehlszeile unter CentOS/RHEL 8 verwaltet. Verwenden Sie nach der Installation den folgenden Befehl, um den Apache -Dienst zu aktivieren und dann zu starten.

sudo systemctl aktivieren httpd.Service sudo systemctl starten httpd.Service 

Hier sind die anderen Befehle, um den Apache -Dienst über die Befehlszeile anzuhalten und neu zu starten.

sudo systemctl stop apache2.Service sudo systemctl starten Sie Apache2 neu.Service 

Schritt 3 - Testen Sie Apache Setup

Sie können die installierten Apache -Versionsdetails mit dem folgenden Befehl anzeigen.

HTTPD -V -Serverversion: Apache/2.4.37 (CentOS) Server erstellt: 7. Oktober 2019 21:42:02 

Erstellen Sie eine Test -HTML -Seite im Standard -Dokument -Root -Verzeichnis (/var/www/html).

sudo echo "Hallo Tecadmin.net ">/var/www/html/Index.html 

Greifen Sie nun auf Ihren Apache -Server zu, indem Sie die IP -Adresse des Servers oder eine Domäne auf den Server -IP zeigen.

Schritt 4 - VirtualHost erstellen

Erstellen wir den ersten virtuellen Host auf Ihrem Apache -Server. Für das Tutorial verwenden wir das Beispiel -Domäne „Beispiel“.com ”. Hier erstellen wir zum Beispiel einen virtuellen Host.com auf Port 80.

Erstellen Sie eine Beispielindexdatei in einem Verzeichnis:

sudo mkdir -p/var/www/Beispiel.com echo "Hallo Beispiel.com "| sudo tee/var/www/Beispiel.com/Index.html 

Erstellen Sie dann die VirtualHost -Konfigurationsdatei und bearbeiten Sie im Editor:

sudo vim/etc/httpd/conf.d/Beispiel.com.Conf 

Fügen Sie den folgenden Inhalt am Ende der Konfigurationsdatei hinzu. Sie können den Domänennamen gemäß Ihrer Domain ändern.

Serveradmin [email protected] documentroot/var/www/Beispiel.Com ServerName Beispiel.com Serveralias www.Beispiel.com #aloverride alle ### contrament bei erforderlichen Fehlerlog -Protokollen/Beispiel.com_error.Protokollieren Sie CustomLog -Protokolle/Beispiel.com_access.log kombiniert
12345678910111213 Serveradmin [email protected] documentroot/var/www/Beispiel.Com ServerName Beispiel.com Serveralias www.Beispiel.com #Glowoverride alle ### Inkontroller bei Bedarf FehlerLog -Protokolle/Beispiel.com_error.Protokollieren Sie CustomLog -Protokolle/Beispiel.com_access.log kombiniert

Speichern Sie die VirtualHost -Konfigurationsdatei und laden Sie den Apache -Dienst mit den folgenden Befehlen neu:

sudo systemctl reload httpd neu laden.Service 

Schritt 5 - SSL VirtualHost konfigurieren

Sie können diesen Schritt überspringen, wenn Sie keine SSL benötigen. Die Sicherheit ist jedoch immer das Hauptanliegen für jede Website. Um SSL mit Apache zu verwenden, installieren Sie das mod_ssl -Paket auf Ihrem System.

sudo dnf installieren mod_ssl 

Für das Tutorial habe ich diese Anweisungen befolgt, um ein selbst signiertes SSL -Zertifikat für unsere Domain zu generieren.

Sie können entweder verwenden /etc/httpd/conf/ssl.Conf Für SSL Virtual Host oder Sie können eine separate virtuelle Host -Konfigurationsdatei für Ihre Domäne verwenden. Zum Beispiel:

sudo vim/etc/httpd/conf.d/Beispiel.com_ssl.Conf 

mit dem folgenden Inhalt:

Serveradmin [email protected] documentroot/var/www/Beispiel.Com ServerName Beispiel.com Serveralias www.Beispiel.com #aloverride alle ### contrament falls erforderlich sslengine auf SSLCertificateFile/etc/pki/tls/certs/Beispiel.com.crt sslcertificateKeyFile/etc/pki/tls/certs/Beispiel.com.Schlüsselfehlerlog -Protokolle/Beispiel.com_ssl-remor.Protokollieren Sie CustomLog -Protokolle/Beispiel.com_ssl-access.log kombiniert
123456789101112131415161718 Serveradmin [email protected] documentroot/var/www/Beispiel.Com ServerName Beispiel.com Serveralias www.Beispiel.com #Glowoverride alle ### Inkontroller bei Bedarf Sslengine auf SSLCertificateFile/etc/pki/tls/certs/Beispiel.com.crt sslcertificateKeyFile/etc/pki/tls/certs/Beispiel.com.Schlüsselfehlerlog -Protokolle/Beispiel.com_ssl-remor.Protokollieren Sie CustomLog -Protokolle/Beispiel.com_ssl-access.log kombiniert

Hier sind drei Begriffe, die zur Konfiguration von SSL VirtualHost verwendet werden:

  • Sslengine - Stellen Sie dies auf "On" ein
  • SslcertificateFile - Legen Sie den Pfad Ihres SSL -Zertifikats fest
  • SslcertificateKeyFile - Dies sind die privaten Schlüsseldateien, die zum Generieren von SSL -Zertifikat verwendet werden

Aktivieren Sie danach den virtuellenHost und laden Sie den Apache -Dienst mit den folgenden Befehlen neu und laden Sie sie neu laden:

sudo systemctl laden apache2 neu laden2.Service 

Schritt 6 - Secure Apache Server

Sicherheit ist der wichtigste Teil des Hosting. Hacker sind bereit, Ihren Webserver auszunutzen. Bearbeiten Sie Apache Hauptkonfigurationsdatei

sudo vim/etc/httpd/conf/httpd.Conf 

Fügen Sie am Ende der Datei die folgenden Werte hinzu:

Serververtokens prodieren die Serversignatur aus verfolgerbar
123 Serververtokens prodieren die Serversignatur aus verfolgerbar

Bearbeiten Sie danach die Apache -Standard -SSL -Konfigurationsdatei:

sudo vim/etc/httpd/conf.D/SSL.Conf 

Hier sind die mehrfachen Sicherheitseinstellungen. Fügen Sie die folgenden Einstellungen hinzu oder aktualisieren Sie. Wir gehen nicht in detaillierten Beschreibungen darüber aus, aber diese Einstellungen sind sehr nützlich für die Produktionsserver.

#Rules stammen aus https: // cipherli.ST/ SSLCIPHERSUITE EECDH+AESGCM: EDH+AESGCM # Benötigt Apache 2.4.36 & OpenSSL 1.1.1 SSLProtocol -all +TLSV1.3 +tlsv1.2 SSLOPENSSLCONFCMD -Kurven x25519: SECP521R1: SECP384R1: Prime256v1 # ältere Versionen # SSLProtocol All -SSLV2 -SLV3 -tlsv1 -tlsv1.1 SSLHONORCIPHERORDER auf Header Immer strenge transport-sezidity "max-age = 63072000; enthält.4 SSLCompression von sslusestapling auf SSLStaplingCache "SHMCB: Protokoll/Stapling-Cache (150000)" # erfordert Apache> = 2.4.11 SSLSessionTickets ab
123456789101112131415161718#Rules stammen aus https: // cipherli.ST/ SSLCIPHERSUITE EECDH+AESGCM: EDH+AESGCM# Benötigt Apache 2.4.36 & OpenSSL 1.1.1SSLProtocol -all +TLSV1.3 +tlsv1.2SSLOpenSSLConfcMD -Kurven x25519: SecP521R1: SecP384R1: Prime256v1# ältere Versionen# SSLProtocol All -SSLV2 -SLV3 -tlsv1 -tlsv1.1SSLHONORCIPHERORDER onheader immer strenge transportsezialität "max-alalter = 63072000; enthält.4SSLCompression offsslusestapling onsslstaplingCache "SHMCB: Protokoll/Stapling-Cache (150000)"# erfordert Apache> = 2.4.11SSLSessionTickets ab

Nachdem Änderungen vorgenommen haben, starten Sie den Apache -Dienst neu, um die neue Konfiguration anzuwenden.

sudo systemctl laden apache2 neu laden2.Service 

Abschluss

Alles ausführen, Sie führen einen gesicherten Apache -Server auf Ihrem CentOS 8 oder RHEL 8 Linux -System aus.