آشنایی با پروتکل احراز هویت DKIM ایمیل

(DomainKeys Identified Mail (DKIM پیچیده ترین پروتکل تصدیق ایمیل می باشد، این مقاله به صورت اختصاصی به معرفی پروتکل DKIM خواهیم پرداخت. با ما همراه باشید:

(DomainKeys Identified Mail (DKIM یک پروتکل است که به سازمان ها اجازه می دهد تا انتقال پیام را به گونه ای که توسط ارائه دهندگان ایمیل قابل تایید باشد، انجام دهند. این تاییدیه توسط احراز هویت رمزنگاری شده (Cryptographic authentication) و از طریق کلید های Public  و Private  انجام می پذیرد.

DKIM  کمی پیچیده می باشد، در ادامه سعی می کنیم، به زبانی ساده آن را برای شما شرح دهیم.

 

گام اول: شناسایی عناصر یک پیغام برای Sign در DKIM

یک فرستنده ایمیل ابتدا باید تصمیم بگیرد که کدام Elements های یک ایمیل را می خواهد در فرایند Sign  قرار دهد، آن ها باید تصمیم بگیرند که کل پیام (Header,Body) یا فقط یک یا چند فیلد خاص در هدر ایمیل در جریان این فرایند رمزنگاری قرار بگیرد.، Element هایی که قرار است در Sign DKIM  قرار بگیرند نباید در حین انتقال پیام تغییر کنند، در غیر اینصورت احراز هویت DKIM رد یا Fail  می شود.

برای مثال، اگر یک ایمیل از Yahoo  به Gmail   forward شود، یاهو یک متن در بالای ایمیل مانند (forward By yahoo mail)  اضافه می کند و Body  ایمیل دچار تغییر می شود، اگر Body  جز Element  های امضا شده در فرایند DKIM  باشد، احراز هویت در ایمیل Forward  شده Fail  خواهد شد.

با این حال، اگر تنها یک Element از Header مانند فیلد From در فرایند امضای DKIM قرار گرفته باشد، و ایمیل از Yahoo به Gmail  forward شود، احراز هویت DKIM  تایید می شود، زیرا آن بخشی از ایمیل که تغییر کرده است در فرایند امضای DKIM  قرار نگرفته بوده است.

گام دوم: فرایند رمزنگاری

فرستنده باید یک سری تنظمیات بر روی Platform ایمیل خود انجام دهد، که به صورت خودکار یک Hash از Element هایی که قرار است در فرایند Sign قرار بگیرند ساخته شود. فرایند Hash، متن را تبدیل به یک رشته متنی منحصر بفرد می کند.

<From: Ehsan Ataei <IT@PardisMail.com

Subject: Testing

:Maps to the following unique hash string

3303baf8986f910720abcfa607d81f53

قبل از ارسال ایمیل، رشته متنی Hash  شده با استفاده از Private Key  رمزنگاری می شود، کلید خصوصی از ترکیب نام دامنه و Selector (هر اسمی امکان پذیر می باشد، بیشتر بر اساس نوع کاربری ایمیل انتخاب می شود) ساخته می شود، که به شما این قابلیت را می دهد که چندین کلید خصوصی قانونی برای یک دامنه داشته باشید( که برای مدیریت ایمیل و اهداف امنیتی مهم می باشد)، و فقط فرستنده به کلید خصوصی دسترسی دارد. بعد از کامل شدن فرایند رمزنگاری ایمیل ارسال می شود.

 

گام سوم: تایید DKIM Signature با کلید عمومی:

Mail سرور گیرنده بعد از دریافت ایمیل، متوجه می شود که ایمیل دارای امضای DKIM  می باشد، که نشان دهنده نام دامین و Selector  است که فرایند رمزنگاری را امضا کرده اند، دریافت کننده ایمیل یک پرس و جو Query DNS برای پیدا کردن کلید عمومی براسا Domain\Selector  برای تایید امضا انجام می دهد.

کلید عمومی دارای خصوصیات منحصربفردی است که تنها با کلید خصوصی که ایمیل را امضا کرده است، مطابقت دارد،که به عنوان keypair match هم شناخته می شود، که ارائه دهندگان ایمیل را قادر به رمزگشایی امضای DKIM   و بدست آوردن رشته اصلی Hash میسازد.

ارائه دهندگان ایمیل  سپس با استفاده از Element های شرکت کننده در امضای DKIM دوباره یک Hash از این عناصر میسازد، سپس هش را با هش بدست امده از DKIM Hash مقایسه می کند، اگر دو Hash  با هم مطابقت داشته باشند، ما می دانیم که:

  • دامنه با امضای DKIM مالک ایمیل می باشد، در غیر اینصورت فرایند رمزگشایی در وهله اول کار نخواهد کرد.
  • عناصر ایمیل که توسط DKIM امضا شده بودند در هنگام ارسال تغییری نکرده اند (زیرا اگر تغییر کرده بودند، Hash ها با یکدیگر مطابقت نداشتند).

 

ارائه دهندگان ایمیل که امضای DKIM را تایید می کنند، می توانند از اطلاعات مربوط به امضاکننده به عنوان بخشی از یک برنامه برای کاهش حملات Spam,Spoofing و Phishing  استفاده کنند، هر چند که DKIM به دریافت کنندگان ایمیل برای انجام، اقدامی خاص کمک نمی کند، بستگی به پیاده سازی DKIM می توان اطمینان حاصل کرد که پیام در نقل و انتقالات دستخوش تغییرات بوده است یا خیر

 

مشکل DKIM این است که به دلیل اجرای سخت پیاده سازی، فرستنده های کمتری آن را قبول کرده اند، این نقطه ضعف بدان معنی است که عدم وجود امضای DKIM لزوما نشان دهنده جعلی بودن ایمیل نیست، بنابراین DKIM یک راه قابل اعتماد برای تایید هویت فرستنده نیست، علاوه بر این DKIM برای کاربر نهایی غیر فنی قابل مشاهده نیست، و هیچ کاری برای جلوگیری از جعل هویت Header From  دامین نمی کند.

DMARC، آخرین و پیشرفته ترین پروتکل در احراز هویت ایمیل می باشد و این مشکل را با تضمین اینکه دامنه قابل مشاهده برای کاربر نهایی همان دامنه ای است که توسط SPF و DKIM بررسی و تایید شده است حل می کند. علاوه بر این، ارائه دهندگان صندوق پستی را با دستورالعمل مشخصی در مورد اینکه کدام ایمیل ها باید توسط DKIM  احراز هویت شوند و کدامیک نه کمک رسانی می کند.

نحوه ی کانفیگ ابتدایی Exchange Server 2016

در این مقاله قصد داریم تا شما را با تنظیمات اولیه این نرم افزار آشنا گمیم با ما همراه باشید:

قبل از انجام هر کاری بهتر است بدانید که چه اقداماتی را می بایست در Exchange Server انجام دهید تا به مرحله استفاده برسد. در قسمت زیر با کلیه مراحل پس از نصب و راه اندازی آشنا خواهید شد:
– ثبت سریال نامبر جهت فعال سازی Exchange Server
– خرید و نصب SSL در Exchange Server
– کانفیگ Mail Flow جهت ارسال و دریافت ایمیل
– ساخت و کانفیگ دیتابیس جهت ایجاد میل باکس کاربران
– مدیریت ساخت میل باکس در Exchange Server
– کانفیگ آنتی اسپم در Exchange Server
در نظر داشته باشید که موارد فوق هیچکدام دارای اولویت کمتر یا بیشتر نمی باشند. به این صورت که شما می توانید به هر ترتیبی که تمایل دارید موارد فوق را انجام دهید.
در مرحله اول برای فعال سازی Exchange Server 2016 از سریال نامبرهای موجود استفاده کنید. برای فعال سازی Exchange Server 2016 می توانید از کنسول مدیریتی Exchange Server که به صورت Web Base می باشد استفاده کنید و یا از طریق Exchange PowerShell با وارد کردن کامند مربوطه این مورد را انجام دهید. برای شروع وارد کنسول مدیریتی Exchange Server شوید.

 

exchange server 2016 configuration

همانند تصویر فوق وارد منوی Server شده و پس از انتخاب سرور مورد نظر از گزینه های سمت راست آیتم Enter Product Key را انتخاب کنید.

 

exchange server 2016 configuration

در فیلدهای فوق سریال نامبر مربوطه را وارد کنید تا Exchange Server از حالت Trial به نسخه اصلی تبدیل شود.
بعد از وارد نمودن سریال نامبر لازم است که سرویس Microsoft Exchange Information Store را یکبار Restart کنید.
جهت وارد سریال نامبر از طریق Exchange Management Shell می توانید از طریق کامند ذیل اقدام کنید:
Set-ExchangeServer ServerName -ProductKey XXXXX – XXXXX – XXXXX – XXXXX -XXXXX
خب تا این مرحله نصب سریال نامبر Exchange Server 2016 با موفقیت به اتمام رسید.
در مرحله بعد برای اینکه بتوانید در محیط اینترنت ارسال داشته باشید نیاز است که یک Send Connector از نوع Internet ایجاد کنید. توجه داشته باشید که به صورت پیش فرض تنظیمات Mail flow آماده دریافت ایمیل از اینترنت می باشد. اما در مورد ارسال ایمیل به اینترنت می بایست کانکتور مربوطه مربوطه ایجاد شود. در این مقاله در مورد چگونگی تنظیم کانکتورها صحبت نخواهد شد.
برای ایجاد Internet Send Connector در Exchange Server 2016 به صورت ذیل عمل کنید:

 

exchange server 2016

از طریق منوی Mail Flow وارد ساب منوی Send Connectors شوید و از طریق دگمه + اقدام به ساخت یک کانکتور جدید کنید. همانند تصویر فوق یک نام برای کانکتور خود در نظر بگیرید و نوع آن را Internet انتخاب کنید و وارد مرحله بعد شوید.

 

exchange server 2016 configuration

تنظیمات این صفحه را تغییری ندهید و وارد صفحه بعدی شوید.

 

در این قسمت طبق تصویر بالا مراحل را انجام دهید. در فیلد FQDN (شماره 2) کاراکتر * (ستاره) را وارد کنید.

 

exchange server 2016 configuration

طبق تصویر فوق، انتخاب کنید که خروجی ایمیل ها از طریق کدام سرور می بایست انجام شود. و با کلیک بر روی Finish عملیات مربوط به ساخت Send Connector برای Exchange Server 2016 به اتمام می رسد.
اگر سرور شما به اینترنت متصل باشد اکنون قادر خواهید بود از طریق میل باکس پیش فرضی که در حین نصب ساخته شده، به آدرس ایمیلهای خارج از سازمان خود در محیط اینترنت، ارسال ایمیل داشته باشید.