راهنما: احراز هویت
راهاندازی DKIM
DKIM هر پیام را با یک کلید خصوصی امضا میکند و کلید عمومی متناظر را در DNS شما منتشر میکند تا گیرنده بتواند بررسی کند کدام دامنه مسئولیت پیام را پذیرفته است و بخشهای امضاشده در راه تغییر نکردهاند.
آخرین بازبینی: ۱۳ آبان ۱۴۰۵
امضای DKIM چه چیزی را ثابت میکند
DomainKeys Identified Mail یا DKIM (استاندارد RFC 6376) به هر پیام یک سربرگ DKIM-Signature اضافه میکند. این سربرگ دامنه امضاکننده (d=) و selector (s=) را نام میبرد، سربرگهای امضاشده را فهرست میکند و درهمسازی (hash) بدنه و امضایی روی هر دو را در خود دارد.
گیرنده کلید عمومی را از DNS میگیرد، امضا را بررسی میکند و hash بدنه را دوباره حساب میکند. نتیجه pass نشان میدهد دامنه امضاکننده مسئولیت پیام را پذیرفته و بخشهای امضاشده پس از امضا تغییر نکردهاند.
کلید کجا قرار میگیرد
کلید عمومی یک رکورد TXT در selector._domainkey.yourdomain است. selector به دامنه اجازه میدهد چند کلید همزمان داشته باشد، مثلاً یکی برای هر سرویس ارسال، یا کلید قدیم و جدید در دوره جابهجایی.
سرویس ارسال، جفت کلید را میسازد، کلید خصوصی را نگه میدارد و رکوردی را که باید منتشر کنید به شما میدهد. مقدار را دقیق کپی کنید: یک نویسه جاافتاده در مقدار p= همه امضاها را نامعتبر میکند.
- کلیدهای بلند از ۲۵۵ نویسه، یعنی سقف یک رشته TXT، بیشترند. بیشتر سرویسهای DNS آن را خودشان تقسیم میکنند. اگر سرویس شما این کار را نمیکند، مقدار را بهصورت چند رشته داخل گیومه وارد کنید تا گیرنده آنها را به هم بچسباند.
- رکورد را بهصورت TXT ساده منتشر کنید، بدون پراکسی یا بازنویسی از سوی سرویس DNS.
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...طول کلید و الگوریتم
طبق RFC 8301، امضاکننده باید کلید RSA دستکم ۱۰۲۴ بیتی به کار ببرد، بهتر است دستکم ۲۰۴۸ بیت باشد و نباید با rsa-sha1 امضا کند. کلید RSA ۲۰۴۸ بیتی با rsa-sha256 امروز انتخاب رایج است و همه ارائهدهندگان بزرگ صندوق پستی آن را میپذیرند.
چه چیزی امضا را میشکند
هر چیزی که پس از امضا سربرگهای امضاشده یا بدنه را تغییر دهد: فهرست پستی که پانویس اضافه میکند یا موضوع را تغییر میدهد، دروازه امنیتی که پیوندها را بازنویسی میکند، یا سروری که کدگذاری پیام را عوض میکند. canonicalization از نوع relaxed (c=relaxed/relaxed) تغییر فاصلهها و بزرگی و کوچکی حروف در نام سربرگها را تحمل میکند، نه تغییر محتوا را.
بازارسال ساده معمولاً امضا را سالم نگه میدارد و به همین دلیل DKIM بخش مقاومتر DMARC است.
نتیجه را بررسی کنید
پیامی به صندوقی که در اختیار دارید بفرستید و سربرگ Authentication-Results را بخوانید. چیزی که میخواهید dkim=pass است و header.d= برابر دامنه خودتان. اگر دامنه d= متعلق به ارائهدهنده باشد نه شما، پیام امضا شده اما برای DMARC همراستا نیست.
Mail.Land با DKIM چه میکند
وقتی دامنهای اضافه میکنید، Mail.Land برای آن یک جفت کلید RSA ۲۰۴۸ بیتی میسازد و یک رکورد TXT به شما میدهد تا در mlnd._domainkey.yourdomain منتشر کنید (selector برابر mlnd است). هر پیام آن دامنه با کلید خودش و با دامنه شما در d= امضا میشود، پس DKIM با نشانی From شما همراستاست.
DKIM الزامی است: SPF و DKIM و DMARC هر سه باید تأیید شوند تا دامنه بتواند ارسال کند.
منابع
- RFC 6376، DomainKeys Identified Mail (DKIM) Signatures (بررسیشده در ۱۳ آبان ۱۴۰۵)
- RFC 8301، بهروزرسانی الگوریتم رمزنگاری و کاربرد کلید در DKIM (بررسیشده در ۱۳ آبان ۱۴۰۵)
- Google، راهنمای فرستندگان ایمیل (بررسیشده در ۱۳ آبان ۱۴۰۵)
- Yahoo، بهترین شیوههای فرستندگان (بررسیشده در ۱۳ آبان ۱۴۰۵)
آموختهها را به کار بگیرید
دامنه خود را به Mail.Land اضافه کنید تا داشبورد دقیقاً همان رکوردهای SPF، DKIM و DMARC را که باید منتشر کنید نشان دهد.