Let’s Encrypt چیست؟
Let’s Encrypt یک مرکز گواهی دیجیتال جدید است که بر پایه همکاری و بازبودن، بناشده است و به همگان اجازه میدهد که با یک فرایند ساده برای دامنهی خود گواهی سرور پایه بگیرند. برای ایجاد این زیرساخت، شرکتهای Mozilla, Cisco, Akamai, Electronic Frontier Foundation, Identrust و محققین دانشگاه میشیگان تحت عنوان Internet Security Research Group همکاری میکنند.
لازم به ذکر است که مقدار اعتبار این گواهینامه 90 روزه بوده و امکان تمدید خودکار آن نیز موجود می باشد.
از دیگر قابلیت آن می توان به فعال سازی راحت این گواهینامه تنها با چند کلیک ساده بروی دامنه خود اشاره نمود همچنین این سرویس از زیر دامنه های نیز پشتیبانی می نماید و با استفاده از این سرویس می توانید کلیه زیر دامنه های خود را نیز secure نمایید.
همچنین لازم به ذکر است که برای دریافت نماد اعتماد دو ستاره، نمی توان از این گواهینامه استفاده نمود و می بایست از گواهینامه های دیگر مراکز ارائه دهنده گواهینامه SSL استفاده بفرمایید.
نصب Let’s Encrypt برروی سرور
درابتدا لازم است فعال بودن SNI در کنترل پنل دایرکت ادمین شما بررسی گردد. به این منظور در صورتی که از سیستم عامل CentOS 6 به بعد بر روی سرور شما نصب می باشد، امکان فعال سازی SNI نیز فراهم می باشد. جهت بررسی فعال بودن یا نبودن این سرویس لازم است از طریق SSH به سرور خود متصل شوید و فایل directadmin.conf را در آدرس زیر باز نمایید:
/usr/local/directadmin/conf/directadmin.conf
و مقدار زیر را پیدا و بررسی نمایید:
enable_ssl_sni=0
در صورتی که مقدار آن همانند مقدار بالا 0 بوده است یعنی این سرویس در حال حاضر غیر فعال می باشد. به منظور فعال سازی آن لازم است به جای عدد 0 ، عدد 1 را جایگزین و فایل را ذخیره نمایید.
در مرحله بعدی لازم است که دستور زیر را نیز در فایل directadmin.conf تصحیح نمایید تا Let’s Encrypt فعال گردد:
letsencrypt=1
پس از تغییر و تصحیح به مقدار بالا، لازم است با اجرا دستور زیر از درست تنظیم شدن مقدار Letsencrypt اطمینان حاصل نمایید:
cd /usr/local/directadmin
./directadmin c | grep ^letsencrypt=
در صورت یکسان بودن مقدار نشان داده با مقدار تنظیم شده در مرحله قبل، این بدان معناست که مقدار به درستی تغییر و ذخیره شده است.
در این مرحله می بایست یک مرتبه کنترل پنل دایرکت ادمین را ریستارت نمایید تا تنظیمات جدید توسط دایرکت ادمین شناسایی شود برای این منظور لازم است که دستورات زیر اجرا گردند:
cd /usr/local/directadmin
echo “action=directadmin&value=restart” >> data/task.queue; ./dataskq d2000
پس از ریستارت کنترل پنل ، با استفاده از دستور زیر پوشه /.well-known ایجاد نمایید:
cd /usr/local/directadmin/custombuild
./build rewrite_confs
پیشنهاد می شود که دستور زیر را نیز اجرا نمایید تا از آپدیت بودن اسکریپت و سرویس مد نظر اطمینان حاصل نمایید: ( می توانید از آموزش تصویری نصب SSL برروی دایرکت ادمین نیز استفاده نمایید )
cd /usr/local/directadmin/custombuild
./build update
./build letsencrypt
فعال سازی SSL رایگان Let’s Encrypt برروی دایرکت ادمین
برای فعال کردن گواهینامه SSL رایگان Let’s Encrypt بر روی یک دامین اصلی مراحل زیر را دنبال کنید:
۱. ابتدا وارد کنترل پنل سایت شوید و از بخش تنظیمات پیشرفته (Advanced Options) در صفحه نمایش دامین اصلی مورد نظر بر روی SSL Certificates کلیک کنید.
۲. در بخش SSL Certificates در صفحه ظاهر شده گزینه ایجاد یک گواهینامه جدید را انتخاب و سپس از باکس انتخاب عملیات برای گواهینامه جدید گزینه گواهینامه رایگان و خودکار Let’s Encrypt را انتخاب کنید.
۳. در باکس اطلاعات مورد نیاز برای ایجاد گواهینامه جدید این اطلاعات را وارد کنید:
- Common Name: نام دامین اصلی خود را در این فیلد وارد کنید. چنانچه آدرس اصلی سایت با www آغاز میشود، نام دامین را به همراه www در این فیلد وارد کنید.
- Email: آدرس ایمیل خود را در این فیلد وارد کنید. با توجه به اینکه پیامهای اطلاع رسانی نزدیک بودن تاریخ انقضای گواهینامه از سوی Let’s Encrypt به آدرس ایمیل وارد شده در این فیلد ارسال میشوند حتما یک آدرس ایمیل معتبر با میلباکس فعال را در این فیلد وارد کنید.
- Key Size: گزینه ۴۰۹۶ را از لیست کشویی انتخاب کنید.
- Hashing (Hashing Algorithm: گزینه SHA-256 را از لیست کشویی انتخاب کنید.
۴. در ستون Select در باکس Let’s Encrypt Certificate Entries تیک مربوط به دامینها و سابدامینهایی که مایل هستید در گواهینامه صادر شده گنجانده شوند را فعال کنید. با توجه به محدودیت تعداد hostname پشتیبانی شده توسط یک گواهینامه رایگان Let’s Encrypt، انتخاب حداکثر ۱۰۰ دامین/سابدامین مختلف از این باکس در هنگام درخواست یک گواهینامه جدید امکانپذیر است.
۵. بر روی دکمه Save در پایین صفحه کلیک کنید و منتظر بمانید تا فرایند هویت سنجی و صدور و نصب گواهینامه SSL حاوی آدرسهای انتخاب توسط دایرکتادمین دنبال شود.
دایرکت ادمین گزارش کامل فرایند هویت سنجی و نصب گواهینامه درخواست شده را در خروجی نمایش خواهد داد. نمایش پیام زیر در انتهای خروجی نشان میدهد که این فرایند با موفقیت طی شده و گواهینامه صادر شده بر روی دامین نصب شده است:
به این ترتیب نصب گواهینامه SSL رایگان با موفقیت انجام شد و باز کردن دامنه خود با پیشوند https:// می توانید سایت را مشاهده نمایید.
ریدایرکت http به https
جهت ریدایرکت آدرسهای سایت به آدرسهای امن (با پروتکل Https)، یعنی اگر سایت شما به صورت domain.com در مرورگر وارد شد به آدرس https://domain.com ریدایرکت شود. تنها کافیست کد زیر را در فایل .htaccess قرار دهید.
برای انجام این کار، اگر از قبل فایل .htaccess در هاست شما وجود ندارد، در پوشه public_html یک فایل نام .htaccess ایجاد کنید و در آن کد های زیر را قرار دهید. با این کار سایت شما با https بارگذاری خواهد شد.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]