web-dev-qa-db-fra.com

Wildcard SSL avec LetSenCrypt Donne une erreur

Je souhaite créer SSL Wildcard pour mon site Web via LetsEncrypt. J'ai suivi l'instruction et après avoir exécuté Certbot, cela me donne un défi DNS et dit:

Please deploy a DNS TXT record under the name

_acme-challenge.db.example.com with the following value:
 jn324jr348r342bhr234hrou234nbr4324fj34r

Aussi db.example.com est à l'intérieur /etc/bind/.

Ce que je fais, c'est que ça a ouvert db.example.com et en bas de la ligne, ajoutez ceci:

_acme-challenge.db.example.com 3600 IN TXT "jn324jr348r342bhr234hrou234nbr4324fj34r"

Mais je vérifie ça comme ça:

nslookup -type=TXT _acme-challenge.example.com

Cela me donne cette erreur:

 - The following errors were reported by the server:                           

   Domain: db.example.com                                                
   Type:   dns                                                                 
   Detail: DNS problem: NXDOMAIN looking up TXT for                            
   _acme-challenge.db.example.com - check that a DNS record              
   exists for this domain                                                      
ubuntu@me-1:/etc/bind$ nslookup -type=TXT _acme-challenge.example.com
Server:         127.0.0.53                                                     
Address:        127.0.0.53#53                                                  

** server can't find _acme-challenge.example.com: NXDOMAIN

Et quand je gère CrèsBot, obtenez aussi une erreur:

Some challenges have failed.                                                   

IMPORTANT NOTES:                                                               
 - The following errors were reported by the server:                           

   Domain: db.example.com                                                
   Type:   dns                                                                 
   Detail: DNS problem: NXDOMAIN looking up TXT for                            
   _acme-challenge.db.example.com - check that a DNS record                                           
   exists for this domain

Quel mal je fais ici?

7
Fcoder

Veuillez noter que vous devez attendre un moment jusqu'à ce que les modifications de votre zone DNS soient mises à jour sur les serveurs du monde entier. Votre problème est que vous essayez de vérifier si des modifications sont appliquées au DNS trop rapidement. Il y a un bon moyen de sortir de cette affaire et nécessite l'utilisation de l'API du fournisseur DNS. Si vous utilisez par exemple OVH, vous pouvez utiliser leur API pour les modifications DNS et CERTBOT pourra vérifier immédiatement les modifications. Il existe une liste de tous les plugins API ici: https://certbot.eff.org/docs/using.html?highlight=dns#dns-plugins

Si votre fournisseur DNS ne prend pas en charge cela, essayez de déplacer votre zone DNS sur Cloudflare. C'est super facile et vous obtiendrez ce service gratuitement. En outre, en utilisant une API DNS, vous pourrez renouveler gratuitement des certificats WildCard en laissant une seule commande à Cron comme ceci:

0  1   20 * *   root    certbot certonly --non-interactive -d example.com -d '*.example.com' --dns-cloudflare --dns-cloudflare-credentials /my/secret/api/key/location
10
suprovsky

Notez que dans un fichier de zone, les noms qui ne se terminent pas par un dot . Sont relatifs, généralement au domaine actuel.

Donc une entrée pour _acme-challenge.db.example.com À l'intérieur de la zone pour db.example.com Signifie réellement une entrée pour _acme-challenge.db.example.com.db.example.com.

Pour vous assurer que vous avez la bonne entrée, vous pouvez soit:

  • Ajoutez un point A la fin: _acme-challenge.db.example.com.

  • Ou n'incluez pas le domaine: _acme-challenge

Ceci est basé sur la zone étant pour db.example.com, Les choses seront légèrement différentes. La zone était légèrement différente de example.com.

N'oubliez pas non plus de mettre à jour la série de la zone (dans l'enregistrement SOA) lorsque vous le mettez à la mettre à jour et rechargez la zone.

Ceci est bien sûr basé sur les serveurs de noms enregistrés pour votre domaine étant votre propre serveur (et un secondaire).

Lors de la requête en utilisant nslookup ou Dig Vous pouvez leur dire quel serveur poser la réponse. Commencez toujours par vérifier votre primaire, puis vos serveurs secondaires, puis d'autres serveurs. Et n'oubliez pas que certains types de mises à jour peuvent prendre un certain temps (en particulier des changements soumis à TTL de l'enregistrement précédent et des ajouts soumis au cache négatif TTL du domaine).

7
jcaron