Certificat SSL sur un serveur apache2

De RomainGuyot
Révision datée du 11 avril 2024 à 15:41 par Rguyotadmin (discussion | contributions)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Nous allons voir quelles sont les configurations nécessaires pour afin de chiffrer les communications d'un serveur web Linux qui utilise apache2.

Voici quelques informations sur les certificats SSL :

  • Un certificat SSL (SecureSocketsLayer) assure l’authenticité de votre site Web.
  • Le protocole SSL chiffre la communication entre les ordinateurs.
  • Il existe des certificats signés par des autorités de certification de confiance et des certificats «auto-signés» (pour un usage interne ou des tests).
  • Un certificat SSL doit se renouveler périodiquement.
  • Il y a différentes «gammes» de certificat.
  • Google pénalise les sites sans certificat de sécurité.

La configuration

Installer openSSL sur votre machine Lancez la commande suivante pour générer un certificat autosigné openssl req -x509 -nodes -days 3000 -newkey rsa:4096 -keyout /etc/ssl/NomDuServeur.key -out /etc/ssl/NomDuServeur.crt

Activer le module SSL a2enmod ssl

Redémarrer le service apache 2

Configurez le virtualHost sur le port 443 et indiquez l'emplacement de vos certificats

SSLEngine On SSLCertificateFile /etc/ssl/NomDuServeur.crt SSLCertificateKeyFile /etc/ssl/NomDuServeur.key


Mettre en place la redirection via une réécriture du port 80 vers le port 443

a2enmod rewrite

<VirtualHost *:80>

ServerName NomDuServeur.com

RewriteEngine On

RewriteCond %{HTTPS} off

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

</VirtualHost>