Aller au contenu principal

Installation d'un certificat SSL sur un serveur Apache2

Vous pouvez installer un certificat SSL sur un serveur Apache afin que celui-ci prenne en charge des accès HTTPS sécurisés. Cet article explique comment installer un certificat SSL sur un serveur Apache.

Remarque

La version d'Apache utilisée comme exemple dans ce document est Apache/2.4.58(ubuntu). Avant l'installation, vérifiez que le port 443 n'est pas occupé. Si le port 443 est déjà utilisé, liez un autre port lors de l'installation du certificat.

Obtenir le certificat

  1. Après l'émission de votre certificat, nous vous remettrons un fichier de certificat compressé (.zip). L'archive contient quatre dossiers correspondant respectivement à quatre formats de certificat : Tomcat, Nginx, IIS et Apache ; le serveur Apache doit utiliser le certificat contenu dans le dossier Apache.
  2. Le dossier Apache contiendra trois fichiers :
  • domain_com.crt fichier de certificat
  • domain_com.key fichier de clé privée
  • domain_com.ca-bundle fichier de chaîne de certificats

Installer le certificat SSL

  1. Copiez le fichier de certificat domain_com.crt, le fichier de clé privée domain_com.key et le fichier de chaîne de certificats domain_com.ca-bundle depuis votre répertoire local vers le répertoire /etc/apache2/ssl du serveur Apache. Remarque :
  • Si le répertoire /etc/apache2/ssl n’existe pas, vous pouvez le créer avec la commande mkdir -p /etc/apache2/ssl
  • Des différences peuvent exister entre les versions ; pour certains Apache, le répertoire peut être /etc/httpd
  1. Apache ne lisant que les fichiers de configuration situés dans sites-enabled, il est nécessaire de créer un lien symbolique
ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/000-default-ssl.conf
  1. Modifiez le fichier /etc/apache2/sites-available/default-ssl.conf comme suit :
<VirtualHost *:443>
DocumentRoot /var/www/html
#启用 SSL 功能
SSLEngine on
#证书文件的路径
SSLCertificateFile /etc/apache2/ssl/domain_com.crt
#私钥文件的路径
SSLCertificateKeyFile /etc/apache2/ssl/domain_com.key
#证书链文件的路径
SSLCertificateChainFile /etc/apache2/ssl/domain_com.ca-bundle
</VirtualHost>

Après modification, enregistrez le fichier de configuration et exécutez la commande suivante :

a2enmod ssl       #加载ssl模块,如果是替换证书可以忽略
apache2ctl configtest #检测配置文件是否报错
apache2ctl restart #重启Apache使配置生效

Tester le certificat SSL

Saisissez le domaine lié au certificat SSL dans la barre d’adresse du navigateur pour vérifier si votre certificat SSL est bien installé. En cas de succès, un cadenas de sécurité s’affiche dans la barre d’adresse du navigateur ; cliquez dessus pour consulter les informations du certificat.

Effet du certificat SSL

Configuration de sécurité pour la redirection automatique HTTP vers HTTPS (facultatif)

Si vous devez rediriger automatiquement les requêtes HTTP vers HTTPS, vous pouvez effectuer les opérations suivantes :

  1. Saisissez a2enmod rewrite dans la ligne de commande pour activer le module de redirection
  2. Ouvrez ensuite le fichier de configuration HTTP, par exemple : /etc/apache2/sites-available/000-default.conf, puis ajoutez le contenu suivant dans le fichier de configuration :
<VirtualHost *:80>
# 新增
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</VirtualHost>
  1. Redémarrez le serveur Apache pour pouvoir accéder au site via le nom de domaine, avec redirection automatique de HTTP vers HTTPS.