چک‌نت.

رکورد CAA: چه کسی برای دامنه گواهی صادر کند

فقط مرجع‌هایی را مجاز کنید که واقعاً از آن‌ها گواهی می‌گیرید.

بررسی با چک‌نت: دی‌ان‌اس (DNS)

رکورد CAA چیست؟

گواهی‌های HTTPS را مرجع‌های صدور گواهی (مثل Let’s Encrypt، DigiCert یا Sectigo) صادر می‌کنند. رکورد CAA یک رکورد DNS است که در آن می‌نویسید کدام مرجع‌ها اجازه دارند برای دامنهٔ شما گواهی صادر کنند. مرجع‌های معتبر موظف‌اند پیش از صدور هر گواهی این رکورد را بخوانند و اگر نامشان در آن نبود، گواهی ندهند.

چرا مهم است؟

بدون رکورد CAA هر مرجعی مجاز است برای دامنهٔ شما گواهی صادر کند. اگر کسی بتواند یکی از آن‌ها را فریب دهد، گواهی‌ای به اسم دامنهٔ شما می‌گیرد. با CAA این خطر به همان چند مرجعی محدود می‌شود که خودتان استفاده می‌کنید. نداشتن CAA خطا نیست، ولی داشتنش یک لایهٔ حفاظت ارزان است.

ساختار رکورد

هر رکورد CAA سه بخش دارد: یک عدد پرچم (معمولاً 0)، یک برچسب و یک مقدار. برچسب issue مرجع مجاز برای گواهی‌های معمولی را می‌گوید، issuewild مرجع مجاز برای گواهی‌های ستاره‌دار (مثل *.example.com) را، و iodef نشانی‌ای را که مرجع‌ها درخواست‌های ردشده را به آن گزارش کنند.

example.com.  CAA  0 issue "letsencrypt.org"
example.com.  CAA  0 issue "digicert.com"
example.com.  CAA  0 issuewild "letsencrypt.org"
example.com.  CAA  0 iodef "mailto:security@example.com"

یک رکورد درست بسازید

  1. فهرست کنید گواهی‌های دامنه و همهٔ زیردامنه‌ها از کجا می‌آیند: هاست، شبکهٔ توزیع محتوا (مثل کلودفلر)، سرویس ایمیل و هر سرویس دیگری که روی دامنهٔ شما HTTPS دارد.
  2. شناسهٔ CAA هر مرجع را از راهنمای خود آن مرجع یا سرویس بردارید؛ برای Let’s Encrypt letsencrypt.org است. بعضی سرویس‌ها مثل کلودفلر از چند مرجع گواهی می‌گیرند و فهرست خودشان را منتشر کرده‌اند.
  3. در پنل DNS دامنه برای هر مرجع یک رکورد از نوع CAA با نام @، پرچم 0، برچسب issue و نام مرجع بسازید.
  4. اگر گواهی ستاره‌دار دارید، برای آن مرجع یک رکورد issuewild هم بسازید.
  5. در صورت تمایل یک رکورد iodef با نشانی ایمیل خودتان اضافه کنید.
  6. در صفحهٔ DNS چک‌نت دامنه را دوباره بررسی کنید.

مشکل‌های رایج

  • تمدید گواهی شکست می‌خورد: مرجعی که هاست یا شبکهٔ توزیع محتوا از آن گواهی می‌گیرد در رکورد نیست. نامش را با یک رکورد issue اضافه کنید.
  • گواهی زیردامنه صادر نمی‌شود: رکورد CAA روی دامنهٔ اصلی برای زیردامنه‌ها هم اعمال می‌شود، مگر این‌که زیردامنه رکورد CAA خودش را داشته باشد.
  • می‌خواهید هیچ گواهی ستاره‌داری صادر نشود: رکورد 0 issuewild ";" را بگذارید.

پیش از افزودن CAA، تاریخ تمدید گواهی‌های فعلی را ببینید و بعد از نخستین تمدید خودکار مطمئن شوید که گواهی تازه صادر شده است.

بررسی با چک‌نت

در صفحهٔ DNS چک‌نت، ردیف «رکورد CAA مشخص کرده کدام مرجع گواهی صادر کند» یعنی رکورد پیدا شده است. «رکورد CAA ندارد» فقط یک یادآوری است، نه خطا: یعنی هر مرجعی مجاز است.