راه اندازی CA Server بر اساس ساختار استاندارد Tier در شبکه های مایکروسافتی – قسمت اول

5 435
مدت زمان برای مطالعه این مطلب : ۱۷ دقیقه                                                                                 سطح : پیشرفته

سلام به همه دوستان عزیز Theways ، امیدوارم حالتون خوب باشه ،  بعد از یک غیبت طولانی در خدمت شما هستم با یک مقاله جوندار 🙂

در این مجموعه مقالات میخواهیم با یکدیگر CA  مایکروسافتی را بر مبنای اصول سلسه مراتبی راه اندازی کنیم در واقع هدف راه اندازی یک CA با ساختار استاندارد و طراحی سلسله مراتبی و یا به اصطلاح  CA with 2 Tier implementation و به کمک وجود Offline root CA خواهد بود  . در این روش بدون حذف کردن آدرس های CDP و AIA به طراحی خواهیم پرداخت و جزئیات را مطابق با استاندارد واقعی مایکروسافت جلو خواهیم رفت . اگر کمی سرچ کنید در مورد راه اندازی این سناریو مطالب و مقالات مشابه را در سایت های مختلف از جمله بهترین سایت های فارسی جهان ! :))) پیدا خواهید کرد ولیکن در آن مقالات ساختار استاندارد و استفاده درست از آدرس های AIA  و CDP انجام نشده و صرفا صورت مسئله برای ارائه این طراحی پاک شده است که در عمل شما را با مشکلات جدی روبرو خواهد کرد ! هدف ما راه اندازی واقعی ( واقعی یعنی واقعا کار کنه و صرفا از روی یک ویدئو آموزشی راه اندازی نشده باشه ! ) این سناریو با رعایت اصول استاندارد آن خواهد بود .

 قطعا نیاز خواهیم داشت تا اطلاعات اولیه ای در مورد مباحث PKI و نحوه عملکرد CA داشته باشید . در اینجا لازم است به مجموعه مقالات دوست خوبم آقای جهلولی اشاره کنم که در لینک زیر میتوانید آنها را مطالعه کنید ، به جرات این مقالات  یکی از بهترین و کاملترین مقالات موجود به زبان فارسی در مورد CA مایکروسافتی می باشد و به قول بعضی از دوستان بهترین در دنیا خواهد بود ! (  من عاشق این مدل جملاتم که بهترین ها در دنیا رو با اعتماد به سقف مثال زدنی معرفی میکنند : ))) )

مقالات آموزشی مهندس جهلولی مرتبط با CA 

بسیار خوب کارمان را شروع میکنیم ، در ابتدا میخواهم مراحل را با یکدیگر مرور کنیم ، هدف راه اندازی یک CA استاندارد و سلسله مراتبی در بستر شبکه داخلی دومین مایکروسافتی می باشد ، خب همانطور که گفته شد قطعا برای این مقاله می بایست اطلاعات اولیه ای از ساختار CA مایکروسافتی داشته باشید و فرض بر این خواهد بود که ما با خوانندگانی روبرو هستیم که آشنایی حداقلی و ابتدایی از مفاهیم Certificate مایکروسافتی دارند و با CA کار کرده اند .

اگر بخواهیم یک ساختار استاندارد از CA در شبکه داخلی داشته باشیم صرفا با چند Next  و بر روی یک Member Server نقش AD CS را راه اندازی و شروع به ارائه certificate به سرویس های داخلی شبکه کنید ولیکن مسلما این طراحی یک اشتباه بزرگ و خطای نابخشودنی !! در رعایت اصول امنیتی خواهد بود . در واقع اگر ما از یک Enterprise Root CA به طور مستقیم در شبکه داخلی دومین خود استفاده کنیم با کوچترین نفوذی در این سرور و آسیب به Private Key اصلی  Certificate های ارائه شده به کاربران و دیوایس ها از درجه اعتبار خارج وبدتر از آن  ROOT CA ما از درجه اعتبار ساقط خواهد شد و نیاز به راه اندازی یک CA مجدد ، تصحیح تمامی Trusted Root CA ها و از رده خارج کردن Certificate های صادر شده توسط CA مورد نفوذ خواهد بود که خود پروسه بسیار طولانی و با تغییراتی زیاد در سرویس PKI دومین همراه خواهد بود .

 

به عبارت دیگر وقتی قرار بر امن کردن سرویس ها و داده های یک شبکه بر اساس معماری PKI باشد مسلما قبل از هر چیزی می بایست سرویس دهنده این طراحی خود از اصول استاندارد و حداقلی برخوردار باشد . برای این مهم ما ابتدا یک CA از نوع Standalone راه اندازی میکنیم و به عنوانRoot CA  در شبکه دومین داخلی از این سرور استفاده خواهیم کرد . سا در ادامه یک CA Enterprise  از نوع Subordinate در شبکه داخلیو بر روی سروری که جوین دومین است راه اندازی میکنیم که Certificate خود را از سرور Root CA که در مرحله قبل ساخته شده است بدست میاورد و سپس بعد از پیاده سازی این طراحی به ارائه Certificate برای سرویس ها و داده های لازم در بستر دومین خواهد کرد .

شاید برای شما این سوال به وجود بیایید که چرا به این Certitifate  عبارت Offline  گفته میشود ؟ جواب روشن است ، بعد از راه اندازی این سرور و استفاده جهت ارائه سرویس به CA Suboredinate این سرور را خاموش و از مدار خارج میکنیم تا زمانی که نیاز به آن داشته باشیم ! بسیار خب اما سوال بعدی اینکه دلیل استفاده از Offline Root CA چه خواهد بود ! بسیار سوال خوبی پرسیدید اما جواب آن چیست ؟ اگر اکنون در کلاس درس بودیم جواب من مشخص بود ! ؟ بعلههه درست حدس زدید ! جواب میشد سرچ شما برای جلسه بعد ! 🙂  ولی اینبارچاره ای  جز این نیست که خودم به این سوال جواب بدهم ، واقعیت این است که طبق اصول استاندارد از آنجایی که Root CA  به عنوان سرپرست و ریشه ارائه دهنده Certificate و Private Key در شبکه دومین شناخته میشود می بایست از آن حداکثر محافظت در برابر آسیب ها و نفوذ ها را در نظر گرفت تا کمترین آسیب به هسته اصلی ارائه سرویس Certificate در شبکه دومین وارد شود . رانگه با در دسترس بودن همیشگی سرور Offline Root CA  قطعا امکان آسیب زدن و ایجاد حملات بر رو این سرور بالا خواهد رفت و اینجاست که ما به دنبال راه حل یا همان پرتقال فروش خواهیم گشت !

 

 در واقع در طراحی استاندارد PKI استفاده از روش مطمئن برای امن کردن Root CA  در برابر حملات مختلف کلید اصلی  خواهد بود ، و ما برای امن کردن این سرویس ترجیح می دهیم بعد از راه اندازی  Root CAو ساختن Private Key  و  Certificate توسط این CA ، سرور مربوطه را خاموش کنیم و Private key و Certificate  لازم را در اختیار CA دیگری قرار دهیم که جوین دومین بوده و قرار است به کلاینت ها و سرویس گیرندگان داخل دومین سرویس Certificate  را ارائه دهد ، با این کار هم ارائه سرویس در بستر دومین توسط CA enterprise که داخل شبکه دومین انجام شده صورت میپذیرد و هم سرور ROOT از دسترسی مستقیم خارج میشود و عملا نفوذ به آن ممکن و شدنی نخواهد بود ! و در صورت نفوذ و آسیب زدن به CA  که در بستر شبکه داخلی در حال ارائه سرویس است هیچ گونه آسیبی به ریشه و هسته اصلی سرور Root CA ما وارد نخواهد شد و با روشن کردن مجدد آن و ارائه Certificate های جدید و معتبر به یک Enterprise CA  جدید و بدون نیاز به تغیری در اعتبار ROOT CA کل دومین به ادامه ساختار PKI در سرویس های دومین بپردازیم .

یک راهنمایی دوستانه خدمت شما دوست عزیز که تا اینجای مقاله راخوانده اید بکنم ، اگر مطالب برای شما گنگ و یا نامفهوم است بهتراست ابتدا به مطالبی که در مورد عملکرد CA و ساختار AD CS در مباحث مایکروسافت وجود دارد رجوع کنید و با مسلط شدن به مباحث اولیه و اصلی Certificate دوباره به خواندن این مقاله بپردازید ، در واقع این مقاله مثل یک سریال تلویزیونی می باشد که حداقل ۱۰ جلسه از ۲۰ جلسه آن طی شده و شما نیاز به دانستن مطالب اولیه خواهید داشت. صد البته تلاش میکنم مطالب را در حد ممکن با پیش نیاز ها ارائه کنم ولیکن برای خواندن و مسلط شدن به این مطالب نیاز به بلد بودن بسیاری از مطالب قبلی خواهد بود که همانطور که در ابتدای مطلب نیز گفتم با خواندن سلسله مطالب آقای جهلولی عزیز به این تسلط خواهید رسید .

بسیار خب مراحل انجام پروژه ما بدین صورت خواهد بود :

۱- راه اندازی Offline Root CA

۲-تنظیم آدرس های CDP و AIA بر روی Standalone Root CA  جهت ارائه این لیست ها توسط Enterprise Root CA

۳- راه اندازی Enterprise Subordinate CA در شبکه داخلی دومین

۴-درخواست دریافت Certificate از Root CA

۵- انجام تنظیمات مربوط به CDP و CRL و AIA بر روی Subordinate CA

۶- معرفی Offline Root CA به سیستم ها و تجهیزات داخلی شبکه از طریق Group Policy

۷- ارائه سرویس نهایی توسط Subordinate CA به بستر شبکه داخلی و انجام تنظیمات واجبی همچون EFS Recovery Agent و …

بسیار خب برای شروع به نصب CA  از نوع ROOT CA و با ساختار Stand alone  خواهیم پرداخت و مراحل را به ترتیب در این مقالات دنبال خواهیم کرد و توضیحات هر قسمت را با جزئیات مربوطه خدمت شما ارائه خواهیم کرد .

ابتدا می بایست Role مروبط به AD CS  را تیک بزنیم و مراحل نصب را جلو ببریم :

سپس تنظیمات لازم جهت کانفیگ CA  را انتخب میکنیم ، نیازی به سرویس های تحت وب و غیره فعلا نخواهیم داشت

بعد از نصب مراحل ، بایستی مراحل تکمیلی را ادامه دهیم :

طبق توضیحات داده شده و با توجه به نیاز ما جهت نصب CA بدون نقش های اضافی بر روی آن نیازمند دسترسی ادمین بر روی سرور مورد نظر خواهیم بود .

اکنون طبق تصویر زیر می بایست گزینه Stand Alone CA را انتخاب کنیم ، همانطور که میداند ! یعنی باید از قبل بدانید چون این سرور در بستر Workgroup راه اندازی شده است پس امکان نصب به صورت Enterprise وجود نخواهد داشت .

اکنون در تصویر زیر با توجه به اینکه این سرور قرار است نقش offline Root CA را بازی کند گزینه Root CA را انتخاب میکنیم

اکنون در هفتمین مرحله نوبت به ساختن یک Private Key جدید خواهد بود :

همچنین انتخاب نوع متد رمز نگاری و الگوریتم های مورد انتخاب و طول کلید رمز نگاری خواهد بود که عرفا انتخاب SHA 256 و طول کلید ۲۰۴۸  به عنوان انتخاب ایده آل و متداول خواهد بود

اکنون نامی برای CA خود انتخاب خواهیم کرد ، توصیه میکنم نام کوتاه و با معنی انتخاب کنید و بدانید که با این نام می بایست به کلاینت ها به عنوان  Root CA شناخته شوید پس در انتخاب نام خود کمی بیشتر دقت کنید

اکنون مدت اعتبار Certificate صادرشده برای این CA  تعیین خواهد شد

و در نهایت محل ذخیره دیتابیس و لاگ فایل ها مشخص خواهد شد

و در نهایت CA ما نصب و اولین گام ما به سر انجام خواهد رسید

بسیار خب امیدوارم قسمت اول این مجموعه آموزشی مورد پسند شما بوده باشد و تا انتهای این سری آموزشی با ما همراه باشید

نویسنده : میلاد اسحاقی

برای تهیه این مطالب زمان صرف شده است ، با رعایت حق نویسنده و منبع به گسترش فرهنگ کپی رایت کمک کنیم

5 نظرات
  1. علیرضا بابایی می گوید

    بسیار عالی 👌🏻👌🏻👌🏻
    یادمون نره سایتی که در ابتدا معرفی کردید، قطعا بهترین در دنیاست 😂😂😂

    1. میلاد اسحاقی می گوید

      ممنونم آقای بابایی ، آره راستی بهترین در دنیاست ! باید تکرار کنم که یادم بمونه :)))))))))

  2. ahmad-JH می گوید

    دست مریزاد مهندس واقعا لذت بردن از خوندن مقاله خوبتون. مثل همیشه عالی و بهترین هستید 👍

    1. میلاد اسحاقی می گوید

      مخلصم مهندس جهلولی عزیز و گرانقدر ، شما لطف دارین ، مقاله های شما بی نظیر ، کامل و دقیق هستن و همیشه ازشون استفاده میکنم

  3. محمدمهدی دهقان می گوید

    خیلی عالی و با جزییات کامل بود مهندس
    خیلی ممنون از زمانی که گذاشتین
    بی صبرانه منتظر ادامه هستم…/

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.