GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer Apache 2 avec SSL sur Linux (avec mod_ssl, openssl)

Cet article explique étape par étape comment installer Apache 2 avec mod_ssl.

Je préfère installer Apache à partir de la source, car cela me donne plus de flexibilité sur les modules que je veux activer ou désactiver, et je peux également mettre à niveau ou appliquer un correctif immédiatement après sa publication par la fondation Apache.

1. Télécharger Apache

Téléchargez Apache depuis httpd.apache.org. La version stable actuelle est la 2.2.17.

Une fois que vous avez obtenu l'URL directe pour télécharger la dernière version stable d'Apache, utilisez wget comme indiqué ci-dessous pour la télécharger directement sur votre serveur.

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. Installer Apache avec SSL/TLS

Affichez toutes les options d'installation et de configuration Apache disponibles, comme indiqué ci-dessous.

cd httpd-2.2.17
./configure --help

Pour installer un module Apache, vous diriez généralement –enable-{module-name}. Par exemple, pour installer SSL avec Apache, c'est –enable-ssl. Pour installer le module ldap, c'est –enable-ldap.

Pour désinstaller tout module par défaut fourni avec Apache, vous diriez généralement –disable-{module-name}. Par exemple, pour désactiver l'authentification de base dans Apache, c'est –disable-auth-basic

Dans cet exemple, nous allons installer Apache avec tous les modules par défaut, avec l'ajout de –enable-ssl (pour installer mod_ssl pour le support SSL), et –enable-so, qui aide à charger les modules dans Apache pendant l'exécution via le Dynamic Shared Mécanisme d'objet (DSO), plutôt que de nécessiter une recompilation.

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

Remarque :Par défaut, ce qui précède installe Apache sous /usr/local/apache2. Si vous souhaitez modifier cet emplacement, utilisez l'option –prefix dans le ./configure.

3. Activer SSL dans httpd.conf

Le fichier de configuration Apache httpd.conf se trouve sous /usr/local/apache2/conf.

Décommentez la ligne httpd-ssl.conf Include dans le fichier /usr/local/apache2/conf/httpd.conf.

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

Consultez le fichier httpd-ssl.conf pour passer en revue toutes les configurations SSL par défaut. Dans la plupart des cas, vous n'avez rien à modifier dans ce fichier.

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

Le certificat SSL et la clé sont requis avant de démarrer Apache. Les fichiers server.crt et server.key mentionnés dans httpd-ssl.conf doivent être créés avant de continuer.

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

4. Créez les fichiers server.crt et server.key

Tout d'abord, générez le server.key en utilisant openssl.

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

La commande ci-dessus demandera le mot de passe. Assurez-vous de vous souvenir de ce mot de passe. Vous en aurez besoin pour démarrer votre Apache plus tard.

Si vous ne fournissez pas de mot de passe, vous obtiendrez le message d'erreur suivant.

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

Ensuite, générez un fichier de demande de certificat (server.csr) à l'aide du fichier server.key ci-dessus.

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

Enfin, générez un certificat SSL auto-signé (server.crt) à l'aide des fichiers server.key et server.csr ci-dessus.

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

Pour plus de détails, consultez :Comment générer une clé SSL, un CSR et un certificat auto-signé pour Apache

5. Copiez le server.key et le server.crt

Copiez les fichiers server.key et server.crt à l'emplacement approprié du répertoire de configuration Apache.

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

6. Démarrez apache et vérifiez SSL

Démarrez Apache comme indiqué ci-dessous.

/usr/local/apache2/bin/apachectl start

Cela vous demandera d'entrer le mot de passe de votre clé privée.

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.

Par défaut, Apache SSL s'exécute sur le port 443. Ouvrez un navigateur Web et vérifiez que vous pouvez accéder à votre Apache en utilisant https://{votre-adresse-ip}


Linux
  1. Comment compiler et installer Python avec le support OpenSSL ?

  2. Comment installer Let's Encrypt SSL avec Apache sur Debian 11

  3. Comment installer Apache 2.4.2 à partir de la source sur CentOS 6.2 avec SSL

  4. Comment installer JBoss AS 7 avec SSL sur Linux (Activer HTTPS SSL sur JBoss)

  5. Comment installer Virtualization Linux Server

Comment installer Apache dans Fedora 20

Comment installer Apache sur Debian 7

Comment installer Apache sur Fedora 22

Comment installer Apache sur Arch Linux

Comment installer Apache sur Debian 8.2

Comment installer et configurer Apache Webserver sur Oracle Linux 8