Skip to content

Nginx. Émettre un certificat SSL ​

Le panneau BeAdmin sait émettre des certificats SSL Let’s Encrypt gratuits pour les hôtes virtuels Nginx et les maintient à jour automatiquement. Le travail avec le certificat diffère selon le mode de l’hôte virtuel, constructeur ou expert ; cet article décrit les deux scénarios, ainsi que l’émission et la réémission manuelles.

Créer un hôte virtuel en mode constructeur ​

En mode constructeur, le panneau émet le certificat automatiquement à la création de l’hôte virtuel, à condition que le commutateur « Connexion en HTTPS (port 443) » soit activé dans le formulaire. Le certificat est alors demandé pendant la création. Si vous choisissez la connexion en HTTP (port 80) ou indiquez manuellement un autre port, aucun certificat n’est demandé.

Commutateur « Connexion en HTTPS (port 443) » dans le formulaire de création d’un hôte virtuelCommutateur « Connexion en HTTPS (port 443) » dans le formulaire de création d’un hôte virtuel

Si l’émission du certificat échoue, l’hôte est tout de même créé et fonctionne avec un certificat auto-signé. Le panneau signale l’erreur dans une notification détaillée en haut à droite de l’écran ; les messages précis et la marche à suivre sont décrits dans l’article Résoudre les erreurs ACME lors de l’émission d’un certificat SSL.

Créer un hôte virtuel en mode expert ​

En mode expert, le certificat n’est pas émis automatiquement, même si la configuration contient une ligne listen 443 ssl. Pour obtenir un certificat, il faut, après l’enregistrement de l’hôte, cliquer séparément sur le bouton d’émission (voir la section suivante).

Dans le formulaire de création, à la première ouverture de l’éditeur, le champ est prérempli avec un modèle de départ contenant deux blocs server : HTTP sur le port 80 et HTTPS sur le port 443. Pour que l’émission manuelle fonctionne, trois fragments du modèle doivent être conservés :

  • Un bloc server sur le port 80 avec le bon server_name. Let’s Encrypt vérifie la propriété du domaine via HTTP-01, et la requête de validation arrive précisément sur le port 80.
  • Dans le bloc du port 80, location /.well-known/acme-challenge { proxy_pass http://127.0.0.1:5180; ... } avec le commentaire # DO NOT REMOVE — required for Let's Encrypt issuance via "Renew SSL". C’est par là que passent les requêtes de validation de Let’s Encrypt.
  • Dans le bloc du port 443, ssl_certificate /etc/ssl/beadmin/<server_name>/<server_name>.crt et le ssl_certificate_key associé, avec le commentaire # DO NOT CHANGE — the panel writes the issued cert to these paths. Le panneau enregistre le certificat émis à ces emplacements.

Si vous écrivez la configuration de zéro ou si vous avez supprimé l’un de ces fragments, remettez-le : sinon l’émission manuelle échouera avec une erreur.

⚠️ Chemins de certificat personnalisés en mode expert

Le certificat émis est toujours enregistré à des emplacements fixes : /etc/ssl/beadmin/<server_name>/<server_name>.crt et le fichier .key associé. La configuration de l’hôte n’est pas analysée lors de l’émission, et les chemins des directives ssl_certificate et ssl_certificate_key ne sont pas pris en compte.

Si, dans votre configuration, ces directives pointent ailleurs, l’émission se termine sans erreur visible : le bouton signale un succès, un nouveau certificat apparaît dans la base de données et le fichier est écrit au chemin standard de BeAdmin — mais Nginx lit le certificat au chemin que vous avez indiqué et continue de servir l’ancien, si bien que l’émission semble n’avoir rien changé. Pour que le nouveau certificat soit réellement pris en compte, remettez dans ssl_certificate* les chemins standard du modèle par défaut, ou bien, après chaque émission, copiez à la main le certificat du chemin de BeAdmin vers le vôtre et rechargez Nginx.

Émettre ou réémettre un certificat manuellement ​

Vous pouvez lancer l’émission ou la réémission d’un certificat aux endroits suivants :

  • Dans la liste latérale du module Nginx, avec l’icône en forme de flèche à droite du nom de l’hôte. Sur ordinateur, elle n’apparaît qu’au survol de la ligne.
  • Dans la section Sites et domaines, avec la même icône à côté de l’hôte ; la date d’émission et la durée de validité du certificat actuel y sont également visibles.
Icône en forme de flèche pour émettre ou réémettre un certificat dans la section « Sites et domaines », avec l’infobulle « Réémettre le certificat »Icône en forme de flèche pour émettre ou réémettre un certificat dans la section « Sites et domaines », avec l’infobulle « Réémettre le certificat »

Le bouton fait la même chose partout. Il n’y a pas de boîte de dialogue de confirmation : l’émission démarre dès le clic. Au survol du bouton, une infobulle indique l’action en cours : « Émettre le certificat » si aucun certificat n’a encore été émis, et « Réémettre le certificat » quand il y en a déjà un. Après une émission ou une réémission réussie, le panneau recharge la configuration de Nginx, et le site sert immédiatement le nouveau certificat.

En mode constructeur, le bouton ne fonctionne que pour les hôtes sur le port 443 ; pour les autres, une infobulle « Port 443 (HTTPS) requis » s’affiche au survol. En mode expert, le bouton est actif quelle que soit la configuration. Pendant l’émission, l’icône affiche un indicateur de chargement.

Limite de requêtes de Let’s Encrypt ​

Let’s Encrypt limite le nombre de requêtes par adresse IP, et non par domaine : la limite peut donc aussi être épuisée par d’autres serveurs qui partagent la même adresse sortante. Si la limite est atteinte ou si Let’s Encrypt est en panne, le panneau relance automatiquement l’émission auprès d’une autre autorité de certification. L’erreur « Trop de demandes d’émission de certificat SSL » n’apparaît que si l’émission échoue là aussi. Pour en savoir plus, consultez l’article Résoudre les erreurs ACME lors de l’émission d’un certificat SSL.

Attendez le résultat et ne cliquez pas de nouveau sur le bouton avant d’avoir compris ce qui s’est mal passé la fois précédente.

Ce qu’il advient du certificat lors d’un changement de mode ​

Le certificat est conservé quand vous passez du mode constructeur au mode expert, et inversement. La boîte de dialogue de changement de mode ne dit rien du certificat, et c’est normal : il n’est pas touché.

La configuration d’origine n’est pas perdue non plus quand vous revenez du mode expert au mode constructeur : vous pouvez la retrouver en changeant de mode une nouvelle fois. Après le retour, le mode constructeur affiche le dernier jeu de champs que vous y avez enregistré.

Ce qui peut mal tourner ​

Après une tentative d’émission, l’hôte utilise toujours un certificat auto-signé ​

Très probablement, la tentative précédente a échoué avec une erreur. Cliquez sur « Réémettre le certificat » et lisez le message ; les formulations précises sont expliquées dans l’article Résoudre les erreurs ACME lors de l’émission d’un certificat SSL.

Après l’émission ou la réémission, le navigateur affiche toujours l’ancien certificat ​

Le panneau signale un succès, mais le navigateur affiche toujours un avertissement de connexion non sécurisée (après la première émission) ou les anciennes dates du certificat (après une réémission). Vous pouvez vérifier avec la commande openssl s_client -connect <votre-domaine>:443 </dev/null 2>/dev/null | openssl x509 -noout -dates : si notBefore n’a pas changé, le nouveau certificat est déjà sur le disque, mais Nginx utilise encore l’ancien. Ouvrez le module Nginx dans le panneau et cliquez sur « Recharger la configuration » : le site servira ensuite le certificat à jour.

Mode expert : le certificat est « émis », mais Nginx continue de servir l’ancien ​

Très probablement, les directives ssl_certificate et ssl_certificate_key de votre configuration pointent vers un chemin différent du chemin standard de BeAdmin : Nginx lit le certificat à cet endroit et ne voit pas le nouveau. Il y a deux solutions : remettre dans ssl_certificate* les chemins standard du modèle par défaut, ou bien, après chaque émission, copier à la main le certificat du chemin standard vers le vôtre et recharger Nginx. Ce même scénario est détaillé dans l’avertissement sur les chemins personnalisés, plus haut.

Pour aller plus loin ​

BeAdmin © 2025. Tous droits réservés.