Clouder
Blog Clouder

Let's encrypt+ssl wildcard au Maroc : guide pratique 2026

Clouder·19 août 2026·17 min de lecture

Découvrez let's encrypt+ssl wildcard au Maroc : guide pas à pas pour valider, installer et automatiser un certificat gratuit en 2026.

Vous avez une boutique, une API et un extranet sur le même domaine marocain. Le certificat du site principal fonctionne, mais api.domaine.ma affiche une alerte, le staging utilise encore un certificat séparé et personne ne sait vraiment qui peut modifier la zone DNS. Dans ce contexte, Let's Encrypt + SSL Wildcard paraît être la solution évidente, mais le point difficile n'est pas le certificat. C'est le contrôle opérationnel du DNS.

Pour une PME marocaine, le choix dépend de trois éléments : le nombre de sous-domaines, la structure réelle des noms utilisés et la personne qui peut publier le TXT de validation. Un Wildcard peut réduire les achats récurrents et simplifier l'exploitation, mais il peut aussi élargir le périmètre d'un incident si production, administration et environnements de test partagent la même couverture.

Table des matières

Comprendre le Wildcard Let's Encrypt et la Validation DNS-01

Une PME basée à Casablanca exploite boutique.domaine.ma, api.domaine.ma et extranet.domaine.ma. Un certificat *.domaine.ma peut couvrir ces trois sous-domaines directs avec un seul certificat, ce qui réduit le nombre de certificats à installer et à renouveler. Les offres marocaines présentent aussi le Wildcard comme une solution pour sécuriser plusieurs sous-domaines dans l'écosystème .ma.

Schéma explicatif illustrant le fonctionnement d'un certificat SSL Wildcard Let's Encrypt et la validation DNS-01 pour sécuriser plusieurs sous-domaines.

Le caractère * couvre un seul niveau. api.domaine.ma est donc couvert, tandis que api.v2.domaine.ma ne l'est pas automatiquement. Le domaine racine domaine.ma doit aussi être inclus séparément si le site principal utilise ce certificat.

Pourquoi DNS-01 est obligatoire

Let's Encrypt propose plusieurs défis ACME. Pour demander un certificat Wildcard, la validation DNS-01 est requise. Elle consiste à publier une valeur TXT sous _acme-challenge.domaine.ma, puis à laisser Let's Encrypt vérifier que le demandeur contrôle la zone DNS, selon la documentation officielle des types de challenge.

HTTP-01 vérifie généralement un nom d'hôte en demandant un fichier temporaire au serveur web. Cette méthode convient à un certificat classique, mais elle ne valide pas le contrôle de la zone DNS nécessaire au Wildcard. DNS-01 reste adapté lorsque les services sont répartis sur plusieurs serveurs, à condition de pouvoir modifier la zone autoritaire.

Règle pratique : identifiez avant toute installation de Certbot la personne ou l'équipe qui peut créer _acme-challenge.domaine.ma. Sans cet accès, l'émission manuelle devient lente et le renouvellement automatique peut échouer.

Le vrai prérequis pour un domaine .ma

Le registrar peut héberger le domaine, tandis qu'un autre prestataire fournit les serveurs DNS. L'accès à l'espace client du domaine ne donne donc pas forcément le droit de modifier les enregistrements. Vérifiez où se trouve la zone autoritaire et si son interface propose une API capable de créer puis supprimer les TXT automatiquement.

Pour examiner les options liées aux noms de domaine .ma, vérifiez aussi la délégation DNS, les droits accordés et la portée des identifiants API. Un compte limité à cette zone réduit les conséquences d'une fuite, surtout si le Wildcard couvre la production, l'administration et les environnements de test.

Coût Réel et Alternatives Commerciales au Maroc

Un certificat Wildcard Let's Encrypt reste gratuit, mais son exploitation automatisée implique des coûts cachés. Il faut maintenir la gestion des défis DNS, surveiller les renouvellements et préparer une procédure de secours. Si un administrateur intervient manuellement à chaque émission, le temps consacré devient le coût principal.

Au Maroc, les offres commerciales affichent des écarts importants avec Let's Encrypt. Un certificat Wildcard peut coûter 1499 DH/an, 4499 DH/an ou 5999 DH/an, selon l'autorité et le niveau de validation, tandis que Let's Encrypt reste gratuit, comme l'indique la grille SSL publiée par un prestataire marocain.

CritèreLet's Encrypt WildcardCertificat Commercial, Sectigo/DigiCert
Prix affichéGratuitEnviron 1499 DH/an, 4499 DH/an ou 5999 DH/an selon l'offre
ValidationAutomatique via DNS-01Selon l'offre et l'autorité
Support humainNon inclusGénéralement proposé par le vendeur
Assurance commercialeNon inclusePeut dépendre du certificat acheté
RenouvellementÀ automatiserDépend du contrat et du mode de gestion
Usage adaptéSites et services maîtrisés techniquementOrganisations recherchant un accompagnement ou des exigences spécifiques

Ce que le prix commercial achète réellement

Une offre payante peut inclure un support, un processus de validation différent ou une garantie commerciale, selon le contrat. Elle ne modifie pas les propriétés techniques du chiffrement TLS. Pour une équipe qui contrôle sa zone DNS et surveille correctement ACME, Let's Encrypt couvre souvent le besoin opérationnel.

Le choix change si la PME dépend d'un registrar .ma dont l'interface DNS est limitée, si plusieurs équipes partagent la responsabilité du certificat ou si une procédure interne impose un fournisseur commercial. Dans ce cas, le prix rémunère surtout l'accompagnement, la gestion des incidents et la traçabilité attendue. Un e-commerce ne gagne rien à choisir une autorité payante uniquement pour son nom. Il doit relier la dépense à ses contraintes de support, de gouvernance et de conformité.

Pour une zone DNS administrée par un prestataire externe, vérifiez aussi le coût du temps d'intervention et le délai de création des enregistrements TXT. Une automatisation API bien cloisonnée peut réduire ces frais, tandis qu'une procédure manuelle fragilise chaque renouvellement.

Comparez le prix, le temps d'administration, le support disponible et les conséquences d'une expiration.

Let's Encrypt ne fournit ni assurance ni support humain personnalisé. Cette limite reste acceptable lorsque l'automatisation est testée, journalisée et surveillée. Une modification manuelle dans une interface DNS mal documentée peut toutefois rendre le certificat gratuit plus risqué à exploiter qu'une offre accompagnée.

Préparer Son Environnement et Choisir Son Client ACME

Avant toute demande, vérifiez la chaîne complète. Le serveur doit pouvoir communiquer avec Internet et l'administrateur doit disposer d'un accès réel à la zone DNS. Un compte de registrar, à lui seul, ne garantit pas que les enregistrements autoritaires sont modifiables depuis cette interface.

Infographie illustrant les quatre étapes essentielles pour préparer son environnement et choisir un client ACME pour certificat SSL.

Vérifications avant installation

  • Zone DNS: confirmez qui héberge le DNS et si vous pouvez créer _acme-challenge.
  • Droits API: si l'automatisation est prévue, créez une clé limitée à la gestion DNS de la zone concernée.
  • Connectivité: vérifiez que le serveur peut effectuer des requêtes DNS sortantes et joindre les services ACME.
  • Accès système: préparez une session SSH avec des droits suffisants pour installer le client et protéger les secrets.
  • Architecture: notez les serveurs qui termineront TLS, notamment le reverse proxy, le VPS et les éventuels nœuds secondaires.

Pour un hébergement ou un VPS au Maroc, le choix de l'infrastructure influence surtout la manière de déployer et de renouveler le certificat. Les environnements VPS permettent de contrôler le client ACME, les hooks et les permissions, comme le présente l'offre VPS serveur de Clouder.

Certbot ou acme.sh

Certbot convient bien à une installation Apache ou Nginx classique. Il est connu, documenté et s'intègre naturellement aux commandes de renouvellement du système. Sa méthode manuelle est claire pour un premier déploiement, mais elle ne crée pas automatiquement le TXT si le registrar ne fournit pas de plugin adapté.

acme.sh est un script Bash léger qui s'intègre bien dans les environnements où l'administrateur veut un contrôle fin des hooks. Il propose des plugins DNS pour plusieurs fournisseurs. Le nom du plugin dépend du prestataire utilisé, il faut donc vérifier la documentation du fournisseur avant d'écrire la configuration.

Sur Ubuntu, installez les paquets dont vous avez besoin avec le gestionnaire de paquets de la distribution, par exemple certbot, openssl et l'outil fournissant dig. Sur AlmaLinux, les noms de paquets et les dépôts activés peuvent différer. Vérifiez toujours la disponibilité avec apt ou dnf plutôt que de copier une commande destinée à une autre distribution.

Séparer les secrets du code

Ne placez jamais une clé API DNS dans un dépôt Git, un fichier de configuration public ou une commande conservée dans l'historique shell. Utilisez un fichier protégé, un secret système ou le mécanisme prévu par le plugin, avec des permissions minimales et une rotation possible.

Obtenir le Certificat avec Certbot et acme.sh

Le choix entre Certbot manuel et acme.sh dépend de l'API DNS disponible chez votre registrar ou fournisseur DNS. La validation DNS-01 exige de publier un enregistrement TXT, et cette opération doit rester contrôlable sur une zone example.ma.

Infographie illustrant les étapes pour obtenir un certificat SSL wildcard via Certbot ou l'outil acme.sh.

Parcours Certbot manuel

Pour demander le domaine racine et son Wildcard, utilisez une commande de ce type :

certbot certonly --manual --preferred-challenges dns -d "example.ma" -d "*.example.ma"

Certbot affiche une valeur à publier sous _acme-challenge.example.ma. Ajoutez-la dans la zone DNS gérée par le registrar ou le fournisseur choisi, puis vérifiez sa visibilité depuis des résolveurs externes. Le Wildcard repose sur cette validation DNS, comme le rappelle la FAQ de Let's Encrypt.

Contrôlez la publication avant de poursuivre :

dig TXT _acme-challenge.example.ma

La réponse doit contenir la valeur demandée. Ne supprimez pas immédiatement un TXT déjà présent si plusieurs défis sont nécessaires pour la même demande. Des tentatives parallèles peuvent laisser plusieurs valeurs valides, et leur retrait prématuré provoque l'échec de la vérification.

Le délai varie selon le fournisseur DNS et sa propagation. Conservez un TTL raisonnable pendant l'opération, sans supposer qu'un TTL court actualisera tous les caches immédiatement. La procédure DNS-01 détaillée recommande de prévoir ce délai et de tester le renouvellement avant la mise en production, surtout lorsque l'accès DNS est limité.

Parcours acme.sh automatisé

acme.sh sélectionne le plugin correspondant au fournisseur DNS et utilise les variables attendues par ce plugin. Les noms peuvent ressembler à dns_cf pour Cloudflare, dns_ovh pour OVH ou dns_gd pour GoDaddy. Un plugin dédié à un registrar marocain n'est pas garanti. Il faut alors vérifier l'existence d'une API compatible ou prévoir un hook personnalisé.

La commande suit généralement cette logique :

acme.sh --issue -d example.ma -d '*.example.ma' --dns dns_provider

Remplacez dns_provider par le plugin réellement disponible. Le client crée le TXT, attend sa propagation, demande la validation, puis conserve les fichiers dans son arborescence ACME. Gardez les identifiants hors de portée des utilisateurs non concernés.

Après l'émission, copiez les fichiers vers le chemin attendu par le serveur avec un hook de déploiement. Après chaque renouvellement réussi, acme.sh peut installer le certificat, la chaîne et la clé privée, puis recharger le service. Testez ce hook séparément avant de l'utiliser en production.

Voici la vidéo intégrée consacrée au flux de certificat et à l'automatisation :

Certbot manuel facilite le diagnostic d'une première erreur DNS. acme.sh convient à un renouvellement sans intervention lorsque le fournisseur expose une API exploitable.

Installer le Certificat sur cPanel, VPS Apache et Nginx

Le certificat doit être installé sur chaque point qui termine une connexion TLS. Identifiez d'abord ce composant, puis vérifiez quel service reçoit réellement les requêtes HTTPS. Il peut s'agir de cPanel, d'Apache, de Nginx ou d'un reverse proxy placé devant plusieurs applications.

cPanel

Dans cPanel, ouvrez SSL/TLS Status ou l'outil d'installation SSL/TLS fourni par l'hébergeur. Collez le certificat, la clé privée et la chaîne intermédiaire dans les champs correspondants. Avec Certbot, fullchain.pem contient généralement le certificat et sa chaîne, tandis que privkey.pem doit rester confidentiel.

Contrôlez le domaine racine et chaque sous-domaine couvert. Un test externe confirme le certificat présenté, mais il faut aussi vérifier le bon Virtual Host. Si un script externe renouvelle le certificat, assurez-vous que cPanel ne sert pas une ancienne copie. Un renouvellement manqué fait tomber tout le trafic HTTPS jusqu'à l'installation d'un certificat valide.

Un hébergement web avec gestion cPanel convient à une PME qui veut déléguer les mises à jour du serveur et l'installation TLS. Choisissez plutôt un VPS géré en interne si vous devez contrôler les hooks ACME, les permissions des clés et le rechargement de plusieurs services. La zone DNS et la responsabilité du renouvellement doivent être clairement attribuées dans les deux cas.

Nginx sur VPS

Copiez fullchain.pem et privkey.pem dans un répertoire protégé, par exemple /etc/ssl/letsencrypt/, puis référencez-les dans le bloc serveur :

ssl_certificate /etc/ssl/letsencrypt/fullchain.pem;

ssl_certificate_key /etc/ssl/letsencrypt/privkey.pem;

Les paramètres DH et le chemin de la chaîne dépendent de votre configuration TLS. Testez la syntaxe avant chaque rechargement :

nginx -t

Si le test réussit, rechargez Nginx sans interrompre les connexions existantes :

systemctl reload nginx

Apache et architectures distribuées

Dans Apache, utilisez SSLCertificateFile, SSLCertificateKeyFile et, selon la version et la configuration, SSLCertificateChainFile. Activez mod_ssl, contrôlez le VirtualHost HTTPS, puis rechargez Apache après le test de syntaxe.

Sur plusieurs serveurs, transférez les fichiers par un canal sécurisé et limitez les permissions de la clé privée. Si un reverse proxy présente seul le certificat, installez le Wildcard à cet endroit. Les serveurs applicatifs n'en ont besoin que s'ils reçoivent eux-mêmes des connexions TLS.

Ne rendez jamais le répertoire des certificats accessible via HTTP. Configurez un --deploy-hook, ou le mécanisme équivalent du client ACME, pour copier les fichiers et recharger le service après chaque renouvellement validé. Testez ce parcours avec un certificat de staging avant de l'activer en production.

Quand le Wildcard ne Suffit Pas

Une PME peut organiser ses services sur plusieurs niveaux, par exemple prod.api.domaine.ma, staging.api.domaine.ma et region.boutique.domaine.ma. À ce stade, le choix du certificat devient une décision d'architecture. Il faut aligner les noms couverts sur la structure DNS, les équipes responsables et le niveau d'isolement attendu entre les environnements.

Pour regrouper ces niveaux, plusieurs certificats explicites ou un certificat SAN peuvent convenir. Un SAN regroupe des noms listés dans la demande, mais chaque changement d'architecture impose une mise à jour et un renouvellement contrôlé. La discussion sur les certificats Wildcard multi-domaines rappelle aussi qu'un motif comme *.*.domaine n'est pas une solution valide (discussion sur les Wildcards multi-domaines).

Choisir selon l'architecture

Un certificat par service réduit le périmètre d'une compromission et facilite la révocation ciblée. En contrepartie, il augmente le nombre de demandes, de fichiers à déployer et de renouvellements à surveiller. Cette approche convient aux services sensibles ou gérés par des équipes distinctes.

Un certificat SAN peut limiter cette multiplication lorsque la liste des noms reste stable. Il demande une gouvernance stricte, car l'ajout d'un sous-domaine modifie le certificat à distribuer. Les certificats ECC peuvent réduire la taille des clés et certaines opérations cryptographiques, mais vérifiez la compatibilité avec les clients, équipements et logiciels intermédiaires avant de les adopter.

Le coût des alternatives commerciales est déjà comparé dans la section 2. Pour une PME marocaine, la décision ne repose pas uniquement sur le prix. Une offre commerciale peut apporter du support ou des exigences de gouvernance, tandis que Let's Encrypt évite le coût du certificat mais exige une automatisation DNS-01 correctement maîtrisée.

Choisissez le Wildcard pour une arborescence simple, stable et administrée par une même équipe. Préférez des certificats séparés lorsque la révocation, les permissions ou les environnements doivent être isolés. Utilisez un SAN lorsque les noms sont peu nombreux et prévisibles. Dans tous les cas, protégez chaque clé privée et documentez qui peut modifier la zone DNS.

Automatiser le Renouvellement et Résoudre les Pannes Courantes

À 3 h du matin, le renouvellement peut réussir côté ACME, puis laisser Nginx servir l'ancien certificat. La vérification doit donc couvrir toute la chaîne, création du TXT, visibilité DNS, validation, déploiement des fichiers et rechargement du service TLS. Un certificat Let's Encrypt reste valide 90 jours, ce qui rend une tâche planifiée plus fiable qu'un rappel manuel.

Pour Certbot, vérifiez le timer avec systemctl status certbot.timer, puis lancez certbot renew --dry-run à intervalles réguliers. Avec acme.sh, contrôlez les certificats connus via acme.sh --list et testez le hook de déploiement dans un environnement maîtrisé. Une émission réussie mais non déployée laisse le serveur avec une ancienne copie.

Une infographie montrant quatre étapes pour automatiser le renouvellement des certificats SSL et résoudre les pannes courantes.

Les pannes qui reviennent en production

  • TXT invisible : exécutez dig TXT _acme-challenge.domaine.ma depuis plusieurs résolveurs. Comparez la valeur publiée avec le défi actif et contrôlez la zone réellement autoritaire chez votre registrar .ma.
  • API refusée : vérifiez l'expiration de la clé, ses permissions et le fournisseur qui gère effectivement la zone DNS.
  • Doubles défis : conservez toutes les valeurs TXT nécessaires lorsqu'une demande en cours en attend plusieurs. Supprimer l'une d'elles peut faire échouer une validation parallèle.
  • Fichier inaccessible : examinez les droits de /var/log/letsencrypt/, le répertoire des secrets et les journaux du timer avec journalctl -u certbot.timer.
  • Certificat non rechargé : contrôlez le hook, les chemins utilisés et la sortie de nginx -t ou du contrôle Apache avant le rechargement.

Les limites de fréquence imposent de distinguer une erreur de configuration d'un quota atteint. Utilisez l'environnement de staging pour tester les scripts et les intégrations DNS avant de multiplier les demandes en production. Après un échec, corrigez la cause observée au lieu de relancer mécaniquement la même commande.

Routine de contrôle

  1. Tester le renouvellement : exécutez régulièrement --dry-run.
  2. Contrôler le déploiement : vérifiez que le service présente la nouvelle date d'expiration.
  3. Surveiller les logs : recherchez les erreurs de permissions, d'API et de propagation.
  4. Protéger les secrets : limitez les droits et documentez leur rotation.
  5. Préparer le secours : sachez créer manuellement le TXT si l'API DNS devient indisponible.

Pour les règles de renouvellement et les limites du service, consultez la FAQ officielle de Let's Encrypt.

Le risque durable vient de la dépendance entre le serveur ACME, le registrar, l'API DNS et le service HTTPS. Documentez qui contrôle chaque étape avant la mise en production.

Clouder propose la gestion de domaines .ma, des environnements VPS et des certificats SSL, avec une option Let's Encrypt automatisée ainsi que des certificats Wildcard commerciaux selon le besoin. Pour vérifier la configuration adaptée à votre zone DNS et à vos sous-domaines, visitez Clouder et échangez avec leur équipe avant le déploiement.