So installieren und konfigurieren Sie Apache auf Debian 10

So installieren und konfigurieren Sie Apache auf Debian 10

Voraussetzungen

Sie müssen SSH mit sudo privileges zugreifen auf Server für die Apache -Webserver -Installation auf Debian 10.

Installieren Sie Apache auf Debian 10

Melden Sie sich zunächst über SSH bei Ihrem Debain 10 -System an und aktualisieren Sie den APT -Cache. Installieren Sie dann Apache2 HTTP Server -Pakete wie unten:

sudo APT aktualisieren sudo apt apache2 installieren 

Apache -Dienst verwalten

Der Apache -Dienst wird mit der SystemCTL -Befehlszeile verwaltet. Verwenden Sie nach der Installation den folgenden Befehl, um den Status des Apache -Dienstes zu überprüfen.

sudo systemctl Status apache2.Service 

Hier sind die anderen Befehle zum Anhalten, Starten oder Neustarten von Apache -Dienst über Befehlszeile.

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

Testen Sie Apache Setup

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

Apache2 -v Serverversion: Apache/2.4.38 (Debian) Server erstellt: 2019-10-15t19: 53: 42 

Greifen Sie nun auf Ihren Apache -Server zu, indem Sie die IP -Adresse des Servers oder eine Domäne auf den Server -IP zeigen. Sie sehen eine Standard -Apache -Seite im Webbrowser. Dies bedeutet, dass Apache Web Server erfolgreich in Ihrem Debian 10 -System installiert wurde.

Erstellen Sie virtuelle Hosts

Erstellen wir den ersten virtuellen Host auf Ihrem Apache -Server. Für das Tutorial verwenden wir Beispieldomä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 sudo echo "Hallo Beispiel.com ">/var/www/Beispiel.com/Index.html 

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

sudo vim/etc/apache2/sites-verfügbare/Beispiel.com.Conf 

Fügen Sie den folgenden Inhalt in 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 ### conproment bei Bedarf fehlerlog $ apache_log_dir/Beispiel.com_error.Log CustomLog $ apache_log_dir/Beispiel an.com_access.log kombiniert
123456789101112 Serveradmin [email protected] documentroot/var/www/Beispiel.Com ServerName Beispiel.com Serveralias www.Beispiel.com #Glowoverride alle ### Inkontroller bei Bedarf Fehlerlog $ apache_log_dir/Beispiel.com_error.Log CustomLog $ apache_log_dir/Beispiel an.com_access.log kombiniert

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

sudo a2ensit Beispiel.com sudo systemctl relade apache2.Service 

Konfigurieren Sie SSL VirtualHost

Sie können diesen Schritt überspringen, wenn Sie keine SSL benötigen. Die Sicherheit ist jedoch immer das Hauptkonzert für jede Website.

Der Standard -Apache -HTTPS -Antrag an Port 443. Stellen Sie sicher, dass keine anderen Dienste denselben Port verwenden. Jetzt müssen Sie das Apache -SSL -Modul aktivieren, das standardmäßig deaktiviert ist.

sudo a2enmod ssl 

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

Erstellen Sie dann eine neue virtuelle Hostdatei und bearbeiten Sie sie:

sudo vim/etc/apache2/sites-verfügbare/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 $ apache_log_dir/Beispiel.com_ssl-remor.Log CustomLog $ apache_log_dir/Beispiel an.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 $ apache_log_dir/Beispiel.com_ssl-remor.Log CustomLog $ apache_log_dir/Beispiel an.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 a2ensit Beispiel.com_ssl sudo systemctl relade apache2.Service 

Secure Apache Server

Bearbeiten Sie die Apache -Sicherheitskonfigurationsdatei

sudo vim/etc/apache2/conf-fähig/Sicherheit.Conf 

Hier finden Sie 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 für die Produktionsserver sehr nützlich.

Serververtokens Prod Servers-Signatur aus verfolgerbarem Off-Header sind immer X-Frame-Optionen Sameorigin-Header immer X-XSS-Protektion ein. Transport-Security "max-altern = 31536000; umfasst UNTERBOMAINS" -Header immer bearbeiten Set-Cookie ^(.*) $ 1; httponly; sicher
12345678Serververtokens prodServerSignature offtraceEnable offheader immer angehängt X-Frame-Options SameOriginheader Setzen Sie immer X-XSS-Protekte: "1; Modus = Block" Header immer festgelegt X-Content-Typ-Optionen: "NoSniff" -Anleiter strenge strenge tratsportversehnislich "festgelegt" max-altern = 31536000; includeubdomains "Header" immer bearbeiten Set-Cookie ^(.*) $ 1; httponly; sicher

Bearbeiten Sie nun die SSL -Konfigurationsdatei. Hier können Sie das serverbreite SSL -Protokoll und das SSLCIPHERSUITE festlegen, um sichere Ciper zu verwenden, um Ihre Website zu bedienen.

sudo vim/etc/apache2/mods-fähig/ssl.Conf 
SSLProtocol -all +TLSV1.2 SSLCIPHERSUITE HOCH:!Anull:!MD5
12SSLProtocol -all +TLSV1.2sslciphersuite hoch:!Anull:!MD5

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

sudo systemctl laden apache2 neu laden2.Service 

Abschluss

Alles fertig, Sie haben einen gesicherten Apache -Server auf Ihrem Debian 10 Linux -System, der ausgeführt wird.