सभी शुरुआती गाइड शुरुआत करें

DNS-01 Challenge: यह कैसे काम करता है और कैसे पूरा करें

DNS-01 वो ACME challenge type है जो wildcard certificates (*.example.com) को support करता है। यह आपके DNS में TXT record जोड़कर domain ownership prove करता है — किसी web server या port 80 access की ज़रूरत नहीं।

यह कैसे काम करता है

  1. Let’s Encrypt हर domain के लिए एक token देता है
  2. GetHTTPS key authorization का SHA-256 digest calculate करता है और उसे base64url-encode करता है
  3. आप इस value के साथ _acme-challenge.yourdomain.com पर एक TXT record बनाते हैं
  4. Let’s Encrypt TXT record के लिए public DNS को query करता है
  5. अगर value match करता है, तो challenge pass हो जाता है और certificate issue हो जाता है

GetHTTPS के साथ, step 1-2 automatic हैं — आपको बस record name और value अपने DNS provider में copy-paste करना होगा।

Step-by-step setup

Step 1: GetHTTPS से TXT record details लें

GetHTTPS आपको दिखाता है:

  • Record name: _acme-challenge.yourdomain.com
  • Record value: एक base64url-encoded string (~43 characters)

Step 2: अपने DNS provider पर TXT record जोड़ें

FieldValue
TypeTXT
Name_acme-challenge (कुछ providers automatically domain जोड़ देते हैं)
ValueGetHTTPS में दिखाई गई string — exactly वैसे ही copy-paste करें
TTL60 seconds (या आपके provider का minimum allowed)

Provider-specific instructions:

Cloudflare

  1. Dashboard → आपका domain → DNSRecordsAdd record
  2. Type: TXT, Name: _acme-challenge, Content: value paste करें
  3. TTL: Auto
  4. Save पर click करें

AWS Route 53

  1. Hosted zones → आपका domain → Create record
  2. Record name: _acme-challenge
  3. Record type: TXT
  4. Value: "paste-value-here" (double quotes include करें — Route 53 के लिए ज़रूरी हैं)
  5. TTL: 300
  6. Create records पर click करें

GoDaddy

  1. DNS ManagementAdd
  2. Type: TXT, Name: _acme-challenge, Value: value paste करें
  3. TTL: 1 Hour (available minimum)
  4. Save पर click करें

Namecheap

  1. Domain ListManageAdvanced DNSAdd new record
  2. Type: TXT, Host: _acme-challenge, Value: value paste करें
  3. TTL: Automatic
  4. Save all changes पर click करें

Google Cloud DNS

gcloud dns record-sets create _acme-challenge.yourdomain.com. \
  --zone=your-zone --type=TXT --ttl=60 --rrdatas="the-value"

DigitalOcean

  1. NetworkingDomains → आपका domain → Add record
  2. Type: TXT, Hostname: _acme-challenge, Value: value paste करें
  3. TTL: 30

Step 3: DNS propagation का wait करें

DNS changes आपके provider और TTL settings के हिसाब से 1-15 minutes लेते हैं। GetHTTPS का pre-check Let’s Encrypt को submit करने से पहले verify करता है कि TXT record public internet से visible है।

Manually propagation check करें:

dig TXT _acme-challenge.yourdomain.com +short
# आपका value (quotes में) return होना चाहिए

या online propagation checker use करके देखें कि record globally visible है या नहीं।

Step 4: GetHTTPS में verify करें

Verify पर click करें। GetHTTPS challenge को Let’s Encrypt को submit करता है। अगर TXT record सही है, तो certificate issue हो जाता है।

Step 5: Cleanup

Certificate issue होने के बाद, अपने DNS से _acme-challenge TXT record हटा दें। इसकी अब ज़रूरत नहीं है और पुराने records छोड़ने से renewal के दौरान confusion हो सकता है।

DNS-01 के साथ wildcard certificates

*.yourdomain.com के लिए certificate पाने के लिए, आपको DNS-01 use करना होगाHTTP-01 wildcard को validate नहीं कर सकता क्योंकि wildcard infinite hostnames को cover करता है — file रखने के लिए कोई single server नहीं है।

Wildcard + bare domain: अगर आप *.example.com और example.com दोनों चाहते हैं, तो GetHTTPS को दो validations की ज़रूरत हो सकती है। कुछ setups में _acme-challenge.example.com पर एक साथ दो TXT records की ज़रूरत होती है — एक wildcard के लिए, एक apex के लिए। दोनों records तब तक रखें जब तक validation pass न हो जाए।

Full wildcard certificate guide →

DNS-01 vs HTTP-01

DNS-01HTTP-01
आप क्या करते हैंDNS में TXT record जोड़ेंअपने server पर एक file रखें
Required accessDomain DNS settingsWeb server file system
Port requirementकोई नहींPort 80 open होना चाहिए
Wildcard support✅ Wildcard के लिए ज़रूरी
बिना server के काम करता है
Speed1-15 minutes (DNS propagation)Instant (अगर file accessible है)
CDN के पीछे काम करता है✅ हमेशा⚠️ CDN bypass की ज़रूरत हो सकती है
Best forWildcard, server-less, CDN setupsज़्यादातर single-domain certificates

DNS-01 चुनें जब: आपको wildcard चाहिए, port 80 blocked है, आपका server publicly accessible नहीं है, या आप CDN के पीछे हैं।

HTTP-01 चुनें जब: आपके पास web server है, port 80 open है, और आपको wildcard की ज़रूरत नहीं है। यह faster है (कोई propagation wait नहीं)।

Troubleshooting

GetHTTPS को TXT record नहीं मिला

  • और wait करें — कुछ providers को 5-15 minutes लगते हैं। Low TTL help करता है लेकिन propagation time को eliminate नहीं करता।
  • Record name check करें: कुछ providers automatically domain जोड़ देते हैं। अगर आप _acme-challenge.example.com enter करते हैं और provider .example.com जोड़ देता है, तो actual record _acme-challenge.example.com.example.com बन जाता है (गलत)। सिर्फ _acme-challenge enter करें और provider को add करने दें।
  • Manually verify करें:
    dig TXT _acme-challenge.yourdomain.com +short
    अगर यह empty return करता है, तो record अभी propagate नहीं हुआ है।

Wrong value / case mismatch

  • Value case-sensitive है। GetHTTPS से directly copy-paste करें — इसे दोबारा type न करें।
  • जब तक आपका DNS provider quotes require नहीं करता (Route 53 करता है, ज़्यादातर बाकी नहीं), quotes न जोड़ें।

Multiple TXT records conflict

  • नया add करने से पहले पिछले attempts के पुराने _acme-challenge TXT records हटा दें।
  • Exception: wildcard + apex validation के लिए एक ही name पर एक साथ दो records की ज़रूरत हो सकती है।

DNS provider TXT records support नहीं करता

Rare है, लेकिन कुछ basic DNS services में TXT support नहीं है। एक full-featured DNS provider पर switch करें (Cloudflare का free plan सभी record types support करता है)।

DNS-01 कब use करें

ScenarioDNS-01?
Wildcard certificate (*.example.com)✅ Required
Port 80 blocked है✅ Best option
Internal network पर server✅ Only option
Cloudflare/CDN proxy के पीछे✅ Proxy issues से बचाता है
बिना server वाला domain (parking, redirect)✅ Only option
Server access के साथ simple single-domain certificate⚠️ HTTP-01 faster है

FAQs

क्या मैं DNS-01 challenges को automate कर सकता हूँ?

हाँ, CLI tools के साथ। acme.sh में 150+ DNS providers के लिए built-in API integrations हैं — यह automatically TXT records add और remove कर सकता है। Certbot major providers के लिए DNS plugins support करता है। GetHTTPS को manual DNS changes की ज़रूरत होती है (browser-based, कोई API calls नहीं)।

क्या ACME client को अपनी DNS API key देना safe है?

API key के पास आपके DNS zone तक write access है, इसलिए इसे अपने server credentials जितनी security के साथ treat करें। जब possible हो तो scoped API tokens use करें (जैसे, Cloudflare के per-zone tokens)। Maximum security के लिए, manual DNS changes के साथ GetHTTPS use करें — कोई API key involved नहीं।

TXT record कितने समय तक रखना होगा?

सिर्फ validation के दौरान — usually कुछ minutes। एक बार आपका certificate issue हो जाने पर, record हटा दें। जब आप renew करेंगे तो नई value के साथ एक नया record बनाएंगे।

अगर मेरा DNS provider propagation में slow है तो क्या करें?

TTL को अपने provider का minimum allowed (ideally 60 seconds) पर set करें। अगर propagation में 15 minutes से ज़्यादा लगता है, तो record name/value में typo check करें, या कोई दूसरा DNS provider try करें। Cloudflare seconds में TXT records propagate करता है।

क्या DNS-01 Cloudflare proxy (orange cloud) के साथ काम करता है?

हाँ। DNS-01 validation DNS के through TXT records को query करता है, HTTP के through नहीं — इसलिए Cloudflare proxy status (orange vs grey cloud) से कोई फ़र्क नहीं पड़ता। यह HTTP-01 पर एक major advantage है, जिसे proxy block कर सकता है।

संबंधित लेख

शुरुआत करें 2026-05-08
Free SSL certificate कैसे पाएं (step-by-step guide)
Let's Encrypt से 5 minutes में free SSL certificate पाएं — कोई software install नहीं, कोई account नहीं बनाना। 4 methods, दोनों challenge types, 6 platforms पर installation, और troubleshooting cover करने वाली complete guide।
शुरुआत करें 2026-05-08
HTTP-01 Challenge: यह कैसे काम करता है और कैसे पूरा करें
HTTP-01 SSL certificate के लिए domain ownership prove करने का सबसे simple तरीका है। अपने server पर एक file रखें, Let's Encrypt verify करता है, और आपका certificate issue हो जाता है।
शुरुआत करें 2026-05-07
Free wildcard SSL certificate कैसे पाएं
GetHTTPS use करके Let's Encrypt से free wildcard SSL certificate (*.example.com) पाएं। सिर्फ DNS-01 challenge ज़रूरी। Cloudflare, Route 53, GoDaddy, और Namecheap DNS setup शामिल।
अपने browser में मुफ़्त SSL certificate पाएँ
कोई installation नहीं, कोई account नहीं। आपकी private key कभी आपका device नहीं छोड़ती।
अपना certificate पाएँ