پروژه Let’s Encrypt برای بالا بردن امنیت کاربران شروع شدهاست و در زمان نگارش این پست، در مرحله بتا قرار دارد. اهداف کلیدی Let’s Encrypt این است که روند ساخت و تایید گواهینامههای SSL/TLS رایگان، خودکار، امن، شفاف، باز و همگانی باشد. برای توضیحات بیشتر میتوانید به وبسایت این پروژه مراجعه کنید.
در این نوشته، نحوه نصب Let’s Encrypt، ایجاد و تایید یک گواهینامه را بر روی سیستم عامل دبیان نسخه ۸ توضیح خواهم داد.
در قدم اول git را روی سیستم نصب میکنیم.
1 |
apt update && apt install git |
سپس مخزن Let’s Encrypt را روی شاخه دلخواهی از سیستم clone میکنیم:
1 2 3 |
cd /root git clone https://github.com/certbot/certbot cd certbot |
میتوانیم با دستور letsencrypt-auto با توجه به نسخه وبسروری که روی سیستم نصب شده، به صورت خودکار روند تولید، تایید و نصب گواهی نامه را انجام دهیم اما من در این مرحله ترجیح میدهم که شیوه دستی را استفاده کنم. استفاده از شیوه دستی کمک میکند تا بتوانم این روند را برای سایتهایی که در تنظیمات وب سرور وجود ندارند نیز انجام دهم.
برای استفاده از راهنما میتوانیم این دستور را استفاده کنیم:
1 |
./certbot-auto --help |
هر بار که از دستور certbot-auto استفاده شود، به صورت خودکار بهروزرسانی نیز انجام میشود.
برای انجام دستی این روند از گزینههای manual و certonly استفاده میکنیم.
1 |
./certbot-auto --manual certonly -d vpslabs.ir |
ابتدا آدرس ایمیل از ما پرسیده خواهد شد برای استفاده در مواقع ضروری. سپس شرایط استفاده توضیح داده خواهد شد که پس از تایید به مرحله بعد خواهیم رفت.
در این مرحله توضیحاتی به ما داده خواهد شد مبنی بر اینکه IP درخواست کننده این گواهینامه ذخیره خواهد شد و در صورت تایید، روند ساخت گواهینامه انجام میشود.
در مرحله بعد و جهت اطمینان از هویت مدیر سایت، درخواست می شود که در شاخهای از وبسایت مورد نظر، فایلی را با محتویات مشخص، ایجاد کنیم. توجه داشته باشید که دسترسی فایل ساخته شده در این مرحله به گونه ای باشد که وبسرور بتواند فایل را به بیننده نشان دهد. برای مثال ممکن است نیاز باشد تا کاربر و یا گروه این فایل مطابق کاربر و گروه وب سرور (می تواند www-data باشد) تعیین شود. به این دلیل که من از virtualmin استفاده میکنم، دسترسی فولدر و فایل ها را مطابق کاربر ایجاد شده برای هر سایت، تنظیم کردم.
در صورتی که فایل به درستی ساخته شود، گواهینامه نهایی در مسیر /etc/letsencrypt/live و در زیرشاخه آدرس سایت مورد نظر، قرار خواهد گرفت.
فایلهای cert.pem، chain.pem، fullchain.pem و privkey.pem ساخته شده را در تنظیمات SSL/TLS وبسرور استفاده خواهیم کرد. برای جابهجایی این فایلها به سرور نهایی (در صورتی که برای سرور دیگری ساخته شده باشند) نکات امنیتی را رعایت کرده و از رمزنگاری استفاده کنید.
اگر ترجیح میدهید این روند را به صورت خودکار انجام دهید و از وب سرور آپاچی استفاده میکنید می توانید از دستور زیر استفاده کنید و مرحله به مرحله جلو بروید.
1 |
./certbot-auto --apache |
با این تفاسیر باید بشه از روی کلاینت های خودمون هم سرتیفیکیت رو بگیریم و بعد انتقال بدیم به سرور یا هاستینگ . مگه نه ؟
بله. قابل انجامه