Investisseurs

Base de connaissances

1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !

Renouveler un certificat "wildcard" par challenge DNS

Mise à jour 28/09/2026

Ce guide explique comment générer et renouveler automatiquement un certificat wildcard via un challenge DNS en utilisant Certbot et le plugin dns-infomaniak.

 

1. Installation des outils

Installez certbot et son extension (❓: aide). Sélectionnez l'onglet Wildcard, cela évitera l'erreur plugin does not appear to be installed.

 

2. Préparation de l'API Infomaniak

Pour automatiser le processus, générez un token d'API (❓: aide). Recherchez "dns" et cocher impérativement les deux scopes dns:read et dns:write:

Ces autorisations sont requises pour que Certbot puisse lire vos zones DNS et créer/supprimer l'enregistrement TXT de validation.

 

3. Génération manuelle initiale et Validation

Lancez la première génération du certificat :

certbot certonly --manual \
-d *.example.com \
--preferred-challenges dns-01 \
--server https://acme-v02.api.letsencrypt.org/directory

Accédez ensuite au Manager et créez l'enregistrement TXT demandé (Nom : _acme-challenge, Valeur : celle fournie par Certbot) pour prouver que vous possédez le domaine (❓: aide). 

 

4. Scripts d'automatisation

Créez le script d'authentification /root/infomaniak-auth.sh :

#!/bin/bash

# API Token for Infomaniak
INFOMANIAK_API_TOKEN="YOUR_API_TOKEN_HERE"

# Update DNS record via Infomaniak API plugin
/usr/bin/certbot \
  --authenticator dns-infomaniak \
  --server https://acme-v02.api.letsencrypt.org/directory \
  -d "$CERTBOT_DOMAIN" \
  --agree-tos

Créez le script de nettoyage /root/infomaniak-clean.sh :

#!/bin/bash

# Optional: Cleanup operations after challenge
exit 0

Rendez ces deux scripts exécutables :

chmod +x /root/infomaniak-auth.sh /root/infomaniak-clean.sh

 

5. Configuration du renouvellement automatique

Éditez ou créez le fichier de configuration /etc/letsencrypt/renewal/example.com.conf :

cert = /etc/letsencrypt/live/example.com/cert.pem
privkey = /etc/letsencrypt/live/example.com/privkey.pem
chain = /etc/letsencrypt/live/example.com/chain.pem
fullchain = /etc/letsencrypt/live/example.com/fullchain.pem

[renewalparams]
authenticator = manual
manual_auth_hook = /root/infomaniak-auth.sh
manual_cleanup_hook = /root/infomaniak-clean.sh
server = https://acme-v02.api.letsencrypt.org/directory
pref_challs = dns-01
account = YOUR_ACCOUNT_ID
key_type = rsa

 

6. Test et Automatisation (Cron)

Vérifiez que tout fonctionne correctement avec une simulation de renouvellement :

certbot renew --dry-run

Si le test réussit, ajoutez cette tâche Cron pour automatiser le renouvellement (ici, une vérification tous les 30 jours) :

0 0 */30 * * /usr/bin/certbot renew --quiet --config /etc/letsencrypt/renewal/example.com.conf

Lien vers cette FAQ: https://faq.infomaniak.com/1708


Cette FAQ a été utile?