چگونه می توان گواهی SSL در سیستم عامل لینوکس نصب نمود؟

در این آموزش با نحوه فعالسازی گواهی ssl در سیستم عامل لینوکس اشنا می شوید.

این راهنما مبتنی بر سیستم عامل ubuntu تنظیم شده است و توزیع های دیگر ممکن است تغییراتی داشته باشند.

ابتدا لازم است مستقیما به ترمینال سرور خود متصل شوید برای این منظور میتوانید از راهنمای استفاده از ssh رجوع نمایید.

پس از اتصال به سرور لامز است فایل های گواهی ssl را روی سرور خود اپلود نمایید و در یک پوشه مشخص قرار دهید.
در این راهنما با نحوه تنظم و فعالسازی گواهی ssl روی وب سرور apache اشنا میشوید.
ابتدا باید فایل های گواهی اماده شود.
گواهی های فعال شده از شرکت سرتوم certum دارای دو فایل chain است که باید یکی شوند برای این منظور وارد پوشه فایل های گواهی شوید و با فرمان زیر اقدام به ادغام انها نمایید.
cat chain1.cer chain2.cer > chainfull.cer
پس از ارجای فرمان فایل های لازم برای گواهی را به پوشه مشخص برای معرفی به وب سرور منتقل نمایید. (پیشنهاد می گردد طی فرمان های زیر یک پوشه بسازید و و فایل های crt , private key , chainfull.cer را به ان منتقل نمایید)
mkdir -p /etc/ssl/newssl

cp certificate.crt /etc/ssl/newssl/

cp private.key /etc/ssl/newssl/

cp chainfull.cer /etc/ssl/newssl/
برای افزایش امنیت فایل کلید خصوصی فرمان زیر را اجرا نمایید
chmod 600 /etc/ssl/newssl/private.key

chown root:root /etc/ssl/newssl/private.key
در ادامه باید فایل کانفیگ وب سرور مربوط به دامنه خود را باز نمایید.
nano /etc/apache2/sites-avaliable/domain.conf

اگر فایل کانفیگ ssl مجزا باشد به طور معمول بصورت زیر است

nano /etc/apache2/sites-avaliable/domain-ssl.conf
به طور معمول فایل ساختار کانفیگ شما بصورت زیر است و فقط ادرس فایل های گواهی در ساختار زیر جایگزاری گردد.
<VirtualHost *:80>
    ServerName domain.com
    ServerAlias www.domain.com
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

<VirtualHost *:443>

    ServerName domain.com
    ServerAlias www.domain.com

    DocumentRoot /var/www/html

    SSLEngine on

    SSLCertificateFile /etc/ssl/newssl/certificate.crt
    SSLCertificateKeyFile /etc/ssl/newssl/private.key
    SSLCertificateChainFile /etc/ssl/newssl/chainfull.crt

</VirtualHost>
پس از تنظیم مسیر فایل های گواهی وب سرور را restart نمایید.
systemctl restart apache2