Base de conhecimento

1000 perguntas frequentes, 500 tutoriais e vídeos explicativos. Aqui, você encontra apenas soluções!

Renovar um certificado "wildcard" por meio de um desafio DNS

Atualização 24/08/2026

Este guia explica como gerar e renovar automaticamente um certificado wildcard através de um desafio DNS, utilizando o Certbot e o plugin dns-infomaniak.

 

1. Instalação das ferramentas necessárias

O plugin DNS da Infomaniak não está incluído por padrão. Para evitar o erro plugin does not appear to be installed, instale o certbot e sua extensão seguindo as instruções oficiais.

Certifique-se de selecionar a guia Wildcard no site do Certbot após escolher o seu sistema.

 

2. Geração manual inicial

Execute este comando para iniciar a primeira geração do certificado:

certbot certonly --manual \
-d *.example.com \
--preferred-challenges dns-01 \
--server {{URL_1}}

 

3. Validação do desafio DNS (Registro TXT)

Para comprovar que você é o proprietário do domínio, acesse o seu Painel de Controle Infomaniak e crie o seguinte registro TXT:

  • Nome: _acme-challenge
  • Valor: (o valor fornecido pelo comando Certbot)

 

4. Preparação da API Infomaniak

Para automatizar o processo, gere um token de API com o escopo domain na sua interface de gestão. Este token permitirá que o script atualize os seus DNS automaticamente.

 

5. Script de autenticação (infomaniak-auth.sh)

Crie o arquivo /root/infomaniak-auth.sh. Este script será chamado pelo Certbot durante a renovação:

#!/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_5}} \
  -d "$CERTBOT_DOMAIN" \
  --agree-tos

Torne o script executável:

chmod +x /root/infomaniak-auth.sh

 

6. Script de limpeza (infomaniak-clean.sh)

Crie o arquivo /root/infomaniak-clean.sh para finalizar o procedimento:

#!/bin/bash
# Optional: Cleanup operations after challenge
exit 0

Torne o script executável:

chmod +x /root/infomaniak-clean.sh

 

7. Configuração da renovação automática

Edite ou crie o seguinte arquivo de configuração: /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_6}}
pref_challs = dns-01
account = YOUR_ACCOUNT_ID
key_type = rsa

 

8. Teste e Automatização (Cron)

Antes de automatizar, verifique se tudo funciona corretamente com uma simulação:

certbot renew --dry-run

Se o teste for bem-sucedido, adicione esta tarefa Cron para verificar a renovação a cada X dias:

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

Modifique os 30 dias acima de acordo com a frequência desejada. O cron utilizará automaticamente:

  • o arquivo domain.tld.conf
  • o script de autenticação infomaniak-auth.sh
  • o plugin dns-infomaniak

Esta seção de perguntas frequentes foi útil?