گواهی SSL(Secure Socket Layer)، تکنولوژي استانداردی است که توسط شرکت Netscape جهت برقراری ارتباطی امن میان سرور و مرورگر کاربران ارائه شده است. این کانال ارتباطی ایمن، باعث می شود اطلاعات و داده های مبادله شده بین مرورگر کاربران و سرور به صورت کدگذاری و کاملا محرمانه تبادل شود.
با فعال سازی گواهی SSL قفل سبز رنگی در کنار آدرس بار مرورگر نمایش داده میشود.این قفل سبز رنگ به معنی تضمین برقراری ارتباط امن و مطمئن بین مرورگر کاربر و سرور می باشد و باعث می شود اطلاعات کاربران در بستری امن به صورت کدگذاری شده تبادل شود.
در دنیای آنلاین و کسب و کارهای اینترنتی، تهیه گواهی SSL از اقدامات پایه جهت بالا بردن امنیت وبسایت می باشد. با فعال کردن گواهی SSL، ارتباط بین سرور و مرورگر کاربر رمزنگاری شده و اطلاعات در بستری ایمن تر مبادله می شوند. در نتیجه گواهی SSL باعث امنیت بیشتر وبسایت می شود.
جهت مطالعه بیشتر به مقاله زیر مراجعه نمایید:“تاثیر گواهی ssl در امنیت بیشتر وبسایت ها”
علاوه بر امنیت، گواهی SSL یکی از عوامل موثر در بالا رفتن رتبه(Ranking) وبسایت در موتورهای جستجو می باشد، زیرا که امکان تشخیص هویت اصلی وبسایت توسط موتورهای جستجو فراهم می شود. در نتیجه یکی از موارد تاثیرگذار روی سئو(SEO) وبسایت نیز می باشد.
جهت مطالعه بیشتر به مقاله زیر مراجعه نمایید:“تاثیر گواهی SSL در سئوی وبسایت چیست؟”
همچنین در مرورگرهای متفاوت پروتکل HTTPS، با علامت قفل سبز رنگ همراه است که به معنای ارتباط امن و سالم میان مرورگر کاربر و سرور می باشد. در نتیجه اعتماد کاربران نسبت به وبسایت شما افزایش می یابد.
جهت مطالعه بیشتر به مقاله زیر مراجعه نمایید:“تاثیر گواهینامه SSL در افزایش اعتماد کاربران چیست؟”
گواهینامه SSL ارائه شده توسط Let’s Encrypt کاملا رایگان و بدون هزینه بوده و به راحتی قابل نصب میباشد، در واقع هدف از راه اندازی چنین سرویسی گسترش استفاده از پروتکل امن https به جای http به منظور افزایش امنیت صفحات وب میباشد.
مزایا و معایب استفاده از Let’s Encrypt
همچنین قابل ذکر است در کنار مزایای رایگان بودن Let’s Encrypt، بهتر است به معایب آن نیز توجه نمود:
- گواهی رایگان Let’s Encrypt برخلاف دیگر گواهی ها، فاقد هرگونه ضمانت میباشند.
- این گزینه با چند مورد از پلتفرم ها سازگار نیست.بطور مثال پشتیبانی این روش روی سرور های NGINX در محله ای آزمایشی است و هنوز به صورت قطعی نمی توان گفت که Let’s Encrypt بتواند روی Nginx نصب شود.
- گواهینامه SSL معتبر اغلب برای یکسال یا بیشتر از آن معتبر است، اما گواهینامه Let’s Encrypt تنها برای ۹۰ روز معتبر است و هر ۶۰ روز باید تجدید شود.
- این گزینه تنها گواهینامه تایید دامنه را دارد و این موضوع بدین معنی است که نمی توان گواهینامه هایی را برای نوار سبز رنگ EV و OV خریداری نمود. همچنین Let’s Encrypt نوع گواهینامه wildcard را برای ایمن نمودن دامنه و تمامی ساب دامین های آن را ارائه نمی دهد. جهت اطلاعات بیشتر در مورد انواع گواهینامه SSL به این مقاله مراجعه نمایید:انواع گواهی SSL
- این گواهینامه مورد تایید مراکز توسعه تجارت الکترونیک نمی باشد.
- جهت دریافت درگاه پرداخت آنلاین تهیه گواهینامه از شرکت های معتبر الزامی است.
لذا در صورتی که امنیت وب سایت شما مهم می باشد، پیشنهاد میشود گواهی نامههای SSL معتبر را تهیه نمایید.
جهت مشاهده و آشنایی با انواع گواهی نامه SSL اینجا کلیک نمایید.
در این آموزش، روش نصب گواهی TLS / SSL در سرور وب آپاچی را آموزش خواهیم داد. در انتهای آموزش، خواهید دید تمام ترافیک بین سرور و سرویس گیرنده رمزگذاری می شود. جهت اینکار از Let’s Encrypt جهت SSL رایگان و به عنوان ارائه دهنده گواهی در این مورد استفاده می شود.
پیش نیازهای نصب Let’s Encrypt
قبل از شروع این راهنما، به موارد زیر نیاز دارید:
- دسترسی root به ریموت سرور SSH در سرور مجازی CentOS 7
- پیکر بندی صحیح سرور وب آپاچی با دامنه و vhost
- دسترسی کاربر غیر از root به دستور sudo
نصب ماژول های وابسته
برای نصب certbot شما بایستی مخزن EPEL را نصب کنید، زیرا به طور پیش فرض روی سرور نصب نیست، mod_ssl نیز برای رمزگذاری مورد نیاز توسط Apache مورد نیاز است:
sudo yum install -y epel-release mod_ssl
دانلود Let’s Encrypt
سپس certbot client را از مخزن EPEL نصب نمایید:
sudo yum install python-certbot-apache
دریافت و پیکربندی گواهینامه SSL
Certbot به راحتی مدیریت صدور گواهینامه SSL را مدیریت خواهد کرد. با اینکار یک گواهی جدید برای دامنه ارائه شده به عنوان یک پارامتر تولید می کند.
در ادامه، example.com به عنوان دامنه ای که گواهی صادر می شود استفاده می کنیم. شما بجای example.com می بایست نام دامنه خود را وارد نمایید:
sudo certbot –apache -d example.com
اگر میخواهید SSL را برای چندین دامنه یا زیر دامنه ایجاد کنید، از دستور زیر استفاده کنید:
sudo certbot –apache -d example.com -d www.example.com
توجه: دامنه اول، می بایست دامنه اصلی شما باشد، در این مثال: example.com.
هنگامی که گواهی را نصب می کنید، یک راهنمای گام به گام دریافت خواهید کرد که به شما امکان می دهد جزئیات گواهینامه را سفارشی کنید. شما می توانید بین ریدارکت اتوماتیک به پروتکل HTTPS یا استفاده از HTTP به عنوان پروتکل پیش فرض انتخاب کنید. به دلایل امنیتی، ارائه یک آدرس ایمیل نیز ضروری است.
وقتی نصب کامل شد، پیامی مشابه زیر دریافت خواهید کرد:
IMPORTANT NOTES:
- If you lose your account credentials, you can recover through
emails sent to user@example.com.
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/example.com/fullchain.pem. Your cert
will expire on 2019-04-21. To obtain a new version of the
certificate in the future, simply run Let's Encrypt again.
- Your account credentials have been saved in your Let's Encrypt
configuration directory at / etc / letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also have certificates and private keys obtained by Let's
Encrypt so regular backups of this folder is ideal.
- If you like Let's Encrypt, please consider supporting our work by:
تنظیم تمدید خودکار گواهی SSL
همانطور که پیشتر توضیح داده شد، گواهی Let’s encrypt برای 90 روز معتبر است توصیه می شود که می بایست آن را ظرف 60 روز تمدید کنید تا از هرگونه مشکلی جلوگیری شود. برای رسیدن به این هدف، certbot با دستور renewal این را انجام میدهد. این دستور بررسی خواهد کرد که کمتر از 30 روز از تاریخ انقضا گواهی باقیمانده است:
sudo certbot renew
اگر گواهی قبلاً نصب شده است، certbot تنها تاریخ انقضا آن را بررسی می کند:
Processing /etc/letsencrypt/renewal/example.com.conf
The following certs are not due for renewal yet:
/etc/letsencrypt/live/example.com/fullchain.pem (skipped)
No renewals were attempted.
برای خودکار کردن روند تمدید، شما می توانید یک cronjob را تنظیم کنید. ابتدا crontab را باز کنید و دستورات زیر را تایپ نمایید :
sudo crontab -e
0 0 * * 1 / usr/bin/certbot renew >> /var/log/sslrenew.log
در نتیجه دستور بالا تمدید گواهی را می توان با خیال راحت برنامه ریزی کرد تا هر دوشنبه در نیمه شب اجرا شود و نتیجه در فایل /var/log/sslrenew.log ذخیره خواهد شد.
در انتها شما با استفاده از یک گواهینامه SSL رایگان، سرور وب آپاچی خود را ایمن نموده اید. در حال حاضر تمام ترافیک بین سرور و سرویس گیرنده رمزگذاری شده است.
1 دیدگاه دربارهٔ «نصب Let's Encrypt SSL در Centos و وب سرور Appache»
گرفتن ssl برای دامنه و letsencrypt نیاز به آی پی سالم کلودفلر دراه ؟
ایپی سالم کلودفلر را از کجا باید گیر بیارم ؟
چطور می تونم از سالم بودن ای پی سالم کلود فلر مطمئن شد ؟