Certificatele wildcard (*.domeniu.ro) acoperă toate subdomeniile unui domeniu cu un singur certificat SSL. Pentru emiterea lor, Let's Encrypt necesită DNS-01 challenge — adică să scrii un record TXT în zona DNS a domeniului tău.
Condiții necesare
- BIND9 instalat și configurat ca server DNS master
- Zona domeniului gestionată de BIND9
- certbot-dns-rfc2136 instalat
- TSIG key configurată în BIND9 cu allow-update
1. Instalare certbot-dns-rfc2136
pip install certbot-dns-rfc2136 --break-system-packages
2. Configurare credențiale
cat > /etc/letsencrypt/rfc2136.ini << 'EOF'
dns_rfc2136_server = 127.0.0.1
dns_rfc2136_port = 53
dns_rfc2136_name = certbot-key
dns_rfc2136_secret = <TSIG_SECRET>
dns_rfc2136_algorithm = HMAC-SHA256
EOF
chmod 600 /etc/letsencrypt/rfc2136.ini
3. Emitere certificat wildcard
certbot certonly \
--authenticator dns-rfc2136 \
--dns-rfc2136-credentials /etc/letsencrypt/rfc2136.ini \
--dns-rfc2136-propagation-seconds 120 \
-d "*.panel.host-panel.site" \
-d "panel.host-panel.site" \
--agree-tos -m admin@host-panel.site
HostPanel automatizează întreg procesul acesta prin restoressl.sh.