در این پست میخواهیم نحوه گرفتن certificate از سایت lets encrypt را به شما آموزش دهیم.
این مقاله را هم در Debian و هم در CentOS میتوانید استفاده کنید.
این گواهی امنتی در وب سرورها و جهت رمزنگاری صفحه هات وب کاربرد دارند و شما می توانید با گرفتن این نوع از certificate که به SSL هم مشهور هستند و امنیت سایت شما را بالا می برند.
لطفا توجه داشته باشید که برای گرفتن certificate از سایت lets encrypt شما باید حتما یک دامنه داشته باشید و حدالمقدور به DNS آن نیز دسترسی داشته باشید.
خب حالا شروع به آموزش می کنیم .
در ابتدای کار باید سیستم خود را به آخرین نسخه آپدیت کنیم برای این منظور بصورت زیر عمل میکنیم
Debian:
sudo apt-get update && sudo apt-get upgrade
CentOS:
sudo yum update && sudo yum upgrade
بعد از آپگرید کردن سیستم برای اینکه بتوانیم کد lets encrypt را بگیریم باید پکیج git را روی سسیستم نصب کنیم . برای ان منمظور بصورت زیر عمل میکنیم
Debian:
sudo apt-get install git
CentOS:
sudo yum install git
سپس با استفاده از دستور زیر یک clone از کد lets encrypt را روی سیستم خود کپی میکنیم.
sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
بعد از اتمام عملیات clone گرفتن به دایرکتوری /opt/letsencrypt رفته و از اقلام موجود در آن ls میگیریم تا ببینیم آیا درست دانلود شده است یا نه .
بعد از اینکه کارهای بالا را انجام دادیم نوبت به گرفتن certificate می شود.
ابتدا وارد دایریکتوری /opt/letsencrypt می شویم.
cd /opt/letsencrypt
سپس دستور زیر را اجرا میکنیم
sudo -H ./letsencrypt-auto certonly –standalone -d example.com -d www.example.com
توجه داشته باشید که عبارت example.com و www.example.com را با آدرس دامنه خود که می خواهید برای آن certificate بگیرید عوض کنید.
بعد از اجرای دستور بالا اگر همه کارها را درست انجام داده باشید با صفحه ای مانند شکل زیر مواجه میشوید که از شما می خواهد ایمیل مدیر سیستم را وارد کنید.
بعد از وارد کردن ایمیل و OK کردن سیستم از شما میخواهد که با موافقت نامه lets encrypt موافقت کنید تا certificate برای شما صادر شود.
در این مرحله نصویری مانند زیر میبینید
بعد از زدن دکمه agree یکسری اطلاعات روی صفحه ترمینال به شما نمایش داده میشود و بعد از اتمام certificate شما ساخته شده و ما به معرفی دایرکتوری هایی که lets encrypt می سازد می پردازیم.
تمام certificate هایی که از lets encrypt می گیریم در آدرس زیر در لینوکس ذخیره میشوند.
ls /etc/letsencrypt/live
برای مثال certificate که ما برای example.com گرفتیم در آدرسی مانند زیر قرار میگیرد
ls /etc/letsencrypt/live/example.com
و با لیست گرفتن از این دایرکتوری باید خروجی مانند زیر دربافت کنید تا مطمئن شوید که certificate به درستی دریافت شده است
cert.pem
chain.pem
fullchain.pem
privkey.pem
در اینجا کار ما تمام شده و شما میتوانید از این certificate ها در web server خود مانند apache یا nginx یا … استفاده کنید.
در مقاله ای جداگانه نحوه تنظیم web server های مختلف برای استفاده از certificate را آموزش خواهیم داد.
نکته : از آنجایی که تاریخ certificate های lets encrypt در بیشترین حالت ۳ ماه میباشد ما باید این روند گرفتن certificate را برای سرورمان اتوماتیک کنیم. برای این منظور دستور زیر را اجرا میکنیم.
echo ‘@monthly root /opt/letsencrypt/letsencrypt-auto certonly –quiet –standalone –renew-by-default -d example.com -d www.example.com >> /var/log/letsencrypt/letsencrypt-auto-update.log’ | sudo tee –append /etc/crontab