فنی · پاسخ مستند
selector در DKIM چیست؟
selector در DKIM رشتهای یکتاست که برای شناسایی یک کلید عمومی مشخص در رکوردهای DNS دامنه به کار میرود. selector به فرستنده امکان میدهد برای یک دامنه چند کلید DKIM داشته باشد، کلیدها را عوض کند و از سرویسهای امضای مختلف بدون تداخل در رکوردهای DNS استفاده کند.
عملکرد فنی
selector در کوئری DNS نقش یک اشارهگر را دارد. وقتی سرور گیرنده امضای DKIM را در هدر ایمیل میبیند، مقدار selector را در امضا پیدا میکند. سپس یک کوئری DNS برای رکورد موجود در selector._domainkey.example.com میسازد. به این ترتیب گیرنده دقیقاً همان کلید عمومی لازم برای تأیید امضای رمزنگاریشده آن پیام را دریافت میکند.
اهمیت برای فرستندگان
selectorها برای تداوم عملیات حیاتیاند. فرستندگان با selector میتوانند کلیدها را بهطور دورهای عوض کنند تا امنیت حفظ شود، بدون اینکه احراز هویت شکست بخورد. اگر کلیدی لو برود، میتوان یک selector جدید مستقر کرد و selector قبلی را بهتدریج کنار گذاشت. این کار از قطعی جلوگیری میکند و تضمین میکند ایمیلهای معتبر در دوره گذار همچنان از بررسیهای احراز هویت عبور کنند.
اشتباهات عملیاتی رایج
یک خطای رایج، عدم تطابق selector مورداستفاده سرور امضاکننده با selector منتشرشده در رکورد DNS است. اگر ابزار امضا از selector1 استفاده کند اما رکورد DNS زیر selector2 منتشر شده باشد، تأیید شکست میخورد. اشتباه رایج دیگر، زمانبندی نادرست انتشار DNS است؛ یعنی ایمیل با selector جدید ارسال شود پیش از آنکه رکورد DNS به همه resolverهای جهانی رسیده باشد.
نمونه عملی
اگر شرکتی از دو سرویس مختلف استفاده کند، ممکن است برای ابزار خبرنامه از selector-marketing و برای اعلانهای برنامه از selector-transact استفاده کند. رکوردهای DNS در این حالت marketing._domainkey.example.com و transact._domainkey.example.com خواهند بود. میتوانید با ابزارهای رایگان https://sendhq.cc/tools این رکوردها را بررسی کنید تا مطمئن شوید کلیدهای عمومی بهدرستی منتشر شدهاند.
راهبرد چرخش کلید
بهترین روش این است که یک جفت کلید جدید بسازید و آن را زیر نام selector جدیدی منتشر کنید. پس از انتشار کامل selector جدید، سرور ارسال بهروزرسانی میشود تا با کلید جدید امضا کند. رکورد selector قدیمی برای مدت کوتاهی نگه داشته میشود تا گیرندگان بتوانند پیامهایی را که درست پیش از تغییر ارسال شدهاند تأیید کنند و سپس با خیال راحت حذف میشود.
پرسشهایی که تیمها میپرسند
آیا یک دامنه میتواند بیش از یک selector در DKIM داشته باشد؟
بله، دامنهها میتوانند چند selector داشته باشند تا از سرویسهای ارسال مختلف پشتیبانی کنند یا چرخش کلید بدون وقفه را ممکن سازند.
selector در کجای ایمیل قرار دارد؟
selector در هدر DKIM-Signature ایمیل و بهطور مشخص در تگ s= قرار دارد.
آیا تغییر selector بر SPF اثر دارد؟
خیر، selectorهای DKIM مستقل از رکوردهای SPF هستند و بر پیکربندی یا تأیید SPF اثری ندارند.
اگر selector در DNS وجود نداشته باشد چه میشود؟
سرور گیرنده نمیتواند کلید عمومی را پیدا کند و نتیجه DKIM بهصورت permerror یا fail خواهد بود.
منابع اصلی
- RFC 6376: امضاهای DomainKeys Identified Mail (DKIM) — RFC Editor
- مستندات DNS در Cloudflare — Cloudflare