Archive for 2016/11

راه اندازی گواهی SSL رایگان با Let's Encrypt

۱۳۹۵/۰۹/۰۴ ۷:۳۰ Salar Khalilzadeh https://plus.google.com/105397214522932500988 منتشر شده در تاریخ : ۱۳۹۵/۰۹/۰۴ دسته بندی : 0

Let's Encrypt سرویس رایگان صدور گواهی نامه های SSL هست که توسط چند شرکت و دانشگاه از جمله سیسکو و Mozilla راه اندازی شده و هدف آن حذف مشکلات صدور گواهی نامه های دیجیتالی SSL و در دسترسی قرار دادن این گواهی برای همگان هست. همانطور که می دانید صدور گواهی نامه های SSL هزینه بر بوده و نصب و راه اندازی آن هم دردسر های خودش را دارد ولی در ادامه مشاهده می کنید که به راحتی هر چه تمام تر با یک ابزار کمکی و سرویس Let's Encrypt این کار را انجام می دهیم.

در حالت کلی ویژگی های عمده سرویس Let's Encrypt را اینگونه میشود لیست کرد
  • کاملا رایگان می باشد
  • اجازه تولید خودکار گواهی نامه ها با استفاده از API
  • 3 ماهه بودن گواهی نامه ها
  • وبسایت دریافت کننده گواهی باید به اینترنت متصل باشد
  • فایل به خصوصی در محل سایت قرار میگیرد که توسط آن، سرویس گواهی صحت گواهی صادر شده را کنترل می کند
  • امکان صدورمجدد گواهی هر زمانی، حتی اگر تاریخ انقضا نرسیده باشد
از ابتدا ابزارهای اصلی Let's Encrypt برای لینوکس توسعه داده شده بود ولی پس از باثبات شدن نسبی API های این سرویس شاهده تولید ابزارهای ویندوز توسط علاقه مندان شدیم.

LetsEncrypt-Win-Simple
برای راه اندازی Let's Encrypt بر روی سرور مجازی و شخصی، من قصد دارم که از ابزار LetsEncrypt-Win-Simple استفاده کنم. این ابزار که از خط فرمان ساده ای بهره میگیره و چندین مزایا داره. از جمله مزایای آن
  • سادگی و خودکار بودن همه عملیات
  • شناسایی گواهی نامه های قدیمی Let'sEncrypt و جایگزین کردن آنها
  • استفاده از Task Scheduler ویندوز برای صدور مجدد گواهی ها
 چند نکته در مورد این ابزار وجود دارد و آنها اینکه، برای انجام خودکارعملیات ، ابزار باید روی سرور محل نصب وبسایت اجرا شود؛ همچنین سرور سایت مورد نظر از طریق اینترنت در دسترس باشد.

برای شروع نرم افزار را از آدرس پروژه LetsEncrypt-Win-Simple دریافت کرده و اجرا نمایید.

همانطور که در تصویر مشخص هست، نرم افزار چندین انتخاب را در اختیار قرار می دهد.
گزینه اول W، راهتترین روش هست که همه کارها را به  صورت خودکار انجام میدهد. پس از انتخاب W باید وبسایت IIS مورد نظر را که با شماره لیست مشخص شده است انتخاب کنید و بقیه عملیات خودکار انجام می شود. سوالی هم در پایان عملیات همانند تصویر زیر پرسیده می شود که همانظورکه درویژگی های این ابزار دکر شد، مربوط به افزودن task برای صدور مجدد گواهی در زمان انقضا به صورت خودکار می شود.

گزینه F همه این کارها را با استفاده از اتصال به سرویس FTP وبساتتان که با اتصال به آن توسط نام کاربری و کلمه عبوری که پرسیده خواهد شد انجام میدهد.
با استفاده از گزینه M می توانید گواهی نامه را برای وبسات مورد نظر از هر جایی تولید کنید (عدم نیاز به اجرا شدن برنامه درسرور)، ولی در این صورت مراحل نصب خودکار گواهی نامه و همچنین تنظیم Task Scheduler را نخواهید داشت. و در آخر هم باید فایل ها و پوشه well-known که جهت تایید هویت سایت درخواست کننده گواهی نامه تولید می شود را نیز دستی کپی کنید. و البته فراموش نشود که هر 3 ماه همین کار راباید تکرار کنید. این روش برای زمانی مناسب هست که سایت شما در یک هاست اشتراکی است و هیچ امکانی برای خودکار سازی عملیات ندارید.

نکته مهم: در پایان این قسمت نکته ای لازم به ذکراست. پشتیبانی از SNI مخفف Server Name Indication پس از IIS 2012 اضافه شد و این گزینه این اجازه را می دهد که برای هر IP آدرس بیش از یک گواهی نامه صادر شود. همانطور که درتصویر زیر مشاهده می کنید این گزینه پیش فرض انتخاب شده است و با توجه به اینکه برای آدرس هر ساب دامین والبته www هم گواهی نامه جداگانه ای باید تولید شود وجود گزینه SNI لازم و مهم است. تنها مشکلی که وجود دارد عدم پشتیبانی از این ویژگی در نسخه های قدیمی IE در ویندوز XP هست، که اگر این پشتیبانی برای شما مهم می باشد، مجبور خواهید بود که این گزینه را غیر فعال کرده و برای هر IP فقط یک گواهینامه استفاده کنید.


و در آخر تبریک میگم، شما هم به جمع دارندگان گواهی SSL پیوستید :)

ابزار Certify
این ابزار هم یک محیط گرافیکی (GUI) را برای مدیریت گواهی نامه های Let'sEncrypt فراهم می کند. متاسفانه هنوزاین ابزار به مرحله نهایی نرسیده و ظاهرا بدون ایراد نمی باشد. همچنین برای دریافت آن نیاز به عضویت در خبرنامه سایت را دارید.


نصب و راه اندازی در هاست های اشتراکی
از آنجایی که مدت زمان گواهی نامه های Let's Encrypt محدود به 3 ماه می باشد، همین مسئله مشکلاتی رو برای نصب روی هاستینگ های اشتراکی دارد و باید برای تجدید خودکار گواهی ها ابزارهایی در دسترس باشد. برای همین منظور با یک جستجوی سریع در گوگل نتایج زیر بدست آمد.

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

برای کنترل پنل Plesk افزونه Let's Encrypt Plesk Extensions وجود دارد که باید توسط مدیر سرور بر روی کنترل پنل نصب شود.
برای کنترل پنل cPanel چندین افزونه رایگان و پولی وجود دارد که البته قبلا باید توسط مدیرسرورشما نصب شده باشد. ازمیان آنها پلاگین letsencrypt-cpanel رایگان می باشد. از همان لینک پیش نیاز ها رو هم میتوانید مشاهده کنید.

جهت مطالعه بیشتر