GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie Apache 2 mit SSL unter Linux (mit mod_ssl, openssl)

Dieser Artikel enthält Schritt-für-Schritt-Anleitungen zur Installation von Apache 2 mit mod_ssl.

Ich ziehe es vor, Apache von der Quelle zu installieren, da es mir mehr Flexibilität gibt, welche Module ich genau aktivieren oder deaktivieren möchte, und ich kann Patches auch unmittelbar nach der Veröffentlichung durch die Apache Foundation aktualisieren oder anwenden.

1. Laden Sie Apache herunter

Laden Sie Apache von httpd.apache.org herunter. Die aktuelle stabile Version ist 2.2.17.

Sobald Sie die direkte URL zum Herunterladen der neuesten stabilen Version von Apache erhalten haben, verwenden Sie wget wie unten gezeigt, um sie direkt auf Ihren Server herunterzuladen.

cd ~
wget http://www.eng.lsu.edu/mirrors/apache//httpd/httpd-2.2.17.tar.gz
tar xvfz httpd-2.2.17.tar.gz

2. Installieren Sie Apache mit SSL/TLS

Zeigen Sie alle verfügbaren Apache-Installations- und Konfigurationsoptionen wie unten gezeigt an.

cd httpd-2.2.17
./configure --help

Um ein Apache-Modul zu installieren, würden Sie normalerweise sagen –enable-{module-name}. Um beispielsweise SSL mit Apache zu installieren, ist es –enable-ssl. Um das LDAP-Modul zu installieren, ist es –enable-ldap.

Um ein Standardmodul zu deinstallieren, das mit Apache geliefert wird, würden Sie normalerweise sagen –disable-{module-name}. Um beispielsweise die grundlegende Authentifizierung in Apache zu deaktivieren, ist es –disable-auth-basic

In diesem Beispiel installieren wir Apache mit allen Standardmodulen, mit Hinzufügen von –enable-ssl (um mod_ssl für die SSL-Unterstützung zu installieren) und –enable-so, was hilft, Module in Apache während der Laufzeit über Dynamic Shared zu laden Object (DSO)-Mechanismus, anstatt eine Neukompilierung zu erfordern.

./configure --enable-ssl --enable-so
make
make install

Hinweis :Standardmäßig installiert das obige Apache unter /usr/local/apache2. Wenn Sie diesen Speicherort ändern möchten, verwenden Sie die Option –prefix in ./configure.

3. Aktivieren Sie SSL in httpd.conf

Die Apache-Konfigurationsdatei httpd.conf befindet sich unter /usr/local/apache2/conf.

Entkommentieren Sie die Include-Zeile httpd-ssl.conf in der Datei /usr/local/apache2/conf/httpd.conf.

# vi /usr/local/apache2/conf/httpd.conf
Include conf/extra/httpd-ssl.conf

Sehen Sie sich httpd-ssl.conf an, um alle Standard-SSL-Konfigurationen zu überprüfen. In den meisten Fällen müssen Sie in dieser Datei nichts ändern.

vi /usr/local/apache2/conf/extra/httpd-ssl.conf

Das SSL-Zertifikat und der Schlüssel sind erforderlich, bevor wir den Apache starten. Die in httpd-ssl.conf erwähnten Dateien server.crt und server.key müssen erstellt werden, bevor wir fortfahren.

# egrep 'server.crt|server.key' httpd-ssl.conf
SSLCertificateFile "/usr/local/apache2/conf/server.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/server.key"

4. Server.crt- und server.key-Datei erstellen

Generieren Sie zuerst den server.key mit openssl.

cd ~
openssl genrsa -des3 -out server.key 1024

Der obige Befehl fragt nach dem Passwort. Merken Sie sich dieses Passwort unbedingt. Sie benötigen dies, wenn Sie später Ihren Apache starten.

Wenn Sie kein Passwort angeben, erhalten Sie die folgende Fehlermeldung.

2415:error:28069065:lib(40):UI_set_result:result too small:ui_lib.c:849:You must type in 4 to 8191 characters

Generieren Sie als Nächstes eine Zertifikatsanforderungsdatei (server.csr) mithilfe der obigen server.key-Datei.

openssl req -new -key server.key -out server.csr

Erstellen Sie abschließend ein selbstsigniertes SSL-Zertifikat (server.crt) mithilfe der obigen server.key- und server.csr-Datei.

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Weitere Einzelheiten finden Sie unter:So generieren Sie SSL-Schlüssel, CSR und selbstsigniertes Zertifikat für Apache

5. Kopieren Sie server.key und server.crt

Kopieren Sie die Dateien server.key und server.crt in das entsprechende Apache-Konfigurationsverzeichnis.

cd ~
cp server.key /usr/local/apache2/conf/
cp server.crt /usr/local/apache2/conf/

6. Starten Sie den Apache und überprüfen Sie SSL

Starten Sie den Apache wie unten gezeigt.

/usr/local/apache2/bin/apachectl start

Dies fordert Sie auf, das Passwort für Ihren privaten Schlüssel einzugeben.

Apache/2.2.17 mod_ssl/2.2.17 (Pass Phrase Dialog)
Some of your private key files are encrypted for security reasons.
In order to read them you have to provide the pass phrases.

Server www.example.com:443 (RSA)
Enter pass phrase:

OK: Pass Phrase Dialog successful.

Standardmäßig läuft Apache SSL auf Port 443. Öffnen Sie einen Webbrowser und vergewissern Sie sich, dass Sie über https://{Ihre-IP-Adresse}

auf Ihren Apache zugreifen können
Linux
  1. Wie kompiliere und installiere ich Python mit OpenSSL-Unterstützung?

  2. So installieren Sie Let’s Encrypt SSL mit Apache unter Debian 11

  3. So installieren Sie Apache 2.4.2 von der Quelle auf CentOS 6.2 mit SSL

  4. So installieren Sie JBoss AS 7 mit SSL unter Linux (Aktivieren Sie HTTPS SSL auf JBoss)

  5. So installieren Sie den Virtualisierungs-Linux-Server

So installieren Sie Apache in Fedora 20

So installieren Sie Apache unter Debian 7

So installieren Sie Apache auf Fedora 22

So installieren Sie Apache unter Arch Linux

So installieren Sie Apache unter Debian 8.2

So installieren und konfigurieren Sie Apache Webserver unter Oracle Linux 8