Base di conoscenze
1 000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Rinnovare un certificato "wildcard" tramite verifica DNS
Questa guida spiega come generare e rinnovare automaticamente un certificato wildcard tramite una verifica DNS utilizzando Certbot e il plugin dns-infomaniak.
1. Installazione degli strumenti
Installa certbot e la sua estensione (❓: guida). Selettiona la scheda Wildcard, in questo modo eviterai l'errore plugin does not appear to be installed.
2. Preparazione dell'API Infomaniak
Per automatizzare il processo, genera un token API (❓: guida). Cerca "dns" e seleziona obbligatoriamente le due autorizzazioni dns:read e dns:write:
Queste autorizzazioni sono necessarie affinché Certbot possa leggere le tue zone DNS e creare/eliminare il record TXT di validazione.
3. Generazione iniziale manuale e convalida
Avvia la prima generazione del certificato:
certbot certonly --manual \
-d *.example.com \
--preferred-challenges dns-01 \
--server {{URL_3}}Accedi quindi al pannello di controllo e crea il record TXT richiesto (Nome: _acme-challenge, Valore: quello fornito da Certbot) per dimostrare di essere il proprietario del dominio (❓: guida).
4. Script di automazione
Crea lo script di autenticazione /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 {{URL_6}} \
-d "$CERTBOT_DOMAIN" \
--agree-tosCrea lo script di pulizia /root/infomaniak-clean.sh:
#!/bin/bash
# Optional: Cleanup operations after challenge
exit 0Rendete questi due script eseguibili:
chmod +x /root/infomaniak-auth.sh /root/infomaniak-clean.sh
5. Configurazione del rinnovo automatico
Modifica o crea il file di configurazione /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 = {{URL_7}}
pref_challs = dns-01
account = YOUR_ACCOUNT_ID
key_type = rsa
6. Test e Automazione (Cron)
Verifica che tutto funzioni correttamente con una simulazione di rinnovo:
certbot renew --dry-runSe il test ha esito positivo, aggiungi questo job Cron per automatizzare il rinnovo (qui, una verifica ogni 30 giorni):
0 0 */30 * * /usr/bin/certbot renew --quiet --config /etc/letsencrypt/renewal/example.com.confLink a questa FAQ: https://faq.infomaniak.com/1708
Questa FAQ è stata utile?