L’émission de certificats SSL wildcard nécessite la validation DNS-01. Avec Certbot et l’API Cloudflare, vous pouvez automatiser la création et le renouvellement de vos certificats pour *.example.com
.
Prérequis
- Domaine géré par Cloudflare
- Jeton API Cloudflare avec permissions DNS Edit
- Serveur Linux avec Certbot installé
1. Installer Certbot et le plugin Cloudflare
Debian/Ubuntu
sudo apt update
sudo apt install certbot python3-certbot-dns-cloudflare -y
RHEL/CentOS
sudo dnf install certbot python3-certbot-dns-cloudflare -y
2. Configurer les identifiants Cloudflare
Créez /etc/letsencrypt/cloudflare.ini
:
dns_cloudflare_api_token = your_cloudflare_api_token_here
Protégez le fichier :
sudo chmod 600 /etc/letsencrypt/cloudflare.ini
3. Obtenir un certificat wildcard
Exécutez :
sudo certbot certonly --dns-cloudflare --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini --dns-cloudflare-propagation-seconds 60 -d "*.example.com" -d example.com --agree-tos --non-interactive --email admin@example.com
4. Configuration automatique des renouvellements
Certbot ajoute un timer systemd pour renouveler. Vérifiez :
systemctl list-timers | grep certbot
Vous pouvez tester avec :
sudo certbot renew --dry-run
5. Intégration dans votre reverse proxy
Pour Nginx, ajoutez dans votre configuration :
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
Rechargez Nginx :
sudo systemctl reload nginx
Conclusion
En utilisant le plugin DNS Cloudflare de Certbot, vous obtenez des certificats wildcard Let’s Encrypt automatiquement renouvelés, simplifiant la gestion SSL de vos sous-domaines sans intervention manuelle.