چگونه می توان گواهی SSL در CentOS نصب نمود؟

برای تکمیل مراحل نصب گواهی SSL می بایست فایل گواهی SSL که مطابق با CSR ایجاد شده ی خود از شرکت ارائه دهنده ی خدمات گواهی SSL دریافت نموده اید را در سیستم عامل CentOS نصب نمایید. بدین منظور ابتدا می بایست به سرور خود ارتباط SSH برقرار نمایید. برای انجام این مورد می توانید از راهنمای زیر استفاده نمایید.

راهنمای برقراری ارتباط SSH با نرم افزار Putty

پس از برقراری ارتباط SSH با سرور خود می بایست فایل .crt یا .cer ارائه شده را به سرور خود منتقل نمایید.

** نکته ** اگر فرمت فایل گواهی SSL شما .cer می باشد می بایست آن را به .crt تغییر دهید.

پیشنهاد می شود فایل key و csr خود را به محل مشخصی انتقال داده و در آن ذخیره سازی نمایید. به عنوان مثال مسیر زیر استفاده می شود.

mkdir /etc/ssl 

دستور فوق پوشه ی SSL را در مسیر /etc می سازد. در نظر داشته باشید می بایست فایل های مربوط به گواهی خود را Copy نمایید و از دستور Move برای جابجایی فایل ها استفاده نکنید. زیرا ممکن است SELinux خطا دهد.

باقی مراحل برای دو وب سرور Apache و Nginx متفاوت می باشد. در ابتدا به وب سرور Apache پرداخته می شود.

مراحل نصب SSL در وب سرور Apache:

تمامی اطلاعات لازم جهت راه اندازی وب سایتی تحت SSL را داریم. در این مرحله می بایست تنظیمات مربوط به Virtual host وب سرور Apache را اعمال نمایید. بدین منظور ابتدا فایل ssl.conf را ویرایش می کنیم.

vi /etc/httpd/conf.d/ssl.conf

قسمتی که با عبارت  <VirtualHost _default_:443> شروع می شود را پیدا نمایید و موارد زیر را انجام دهید.

1- خط های مربوط به  DocumentRoot و ServerName را uncomment  کنید.

2- عبارت example.com را با نام دامنه ی خود که در DNS سرور شما تنظیم شده جایگزین کنید. همچنینی می توانید از IP نیز استفاده کنید. (معمولا این عبارت می بایست معادل Common name گواهی SSL شما باشد)

نتیجه به شکل زیر می باشد.

 ServerName example.com:443

خطوط زیر را یافته و دقت نمایید که عین موارد زیر باشند.

SSLEngine on
SSLCertificateFile /etc/ssl/domain.crt
SSLCertificateKeyFile /etc/ssl/domain.key 

حال Virtual Host شما اماده می باشد. برای نهایی شدن مراحل می بایست Apache را یک بار ریست نمایید.

Service httpd restart

اگر از Virtual Host متفاوتی استفاده می کنید می توانید مقادیر زیر را در فایل Config مربوط به سرور خود اضافه نمایید.

<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/httpd/ssl/domain.crt
        SSLCertificateKeyFile /etc/httpd/ssl/domain.key
        <Directory /var/www/vhosts/yoursite.com/httpsdocs>
        AllowOverride All
        </Directory>
        DocumentRoot /var/www/vhosts/yoursite.com/httpsdocs
        ServerName yoursite.com
</VirtualHost>

مراحل نصب SSL در وب سرور Nginx:

به صورت پیش فرض Nginx بدون ساختار می باشد و می بایست مطابق با نیازهای خود آن را سفارش سازی کنید. بدین منظور فایل ssl.conf را در پوشه ی مربوط به Nginx ایجاد می کنیم.

vi /etc/nginx/conf.d/ssl.conf

در این فایل مقادیر زیر را وارد نمایید.

server {
    listen 443 http2 ssl;
    listen [::]:443 http2 ssl;
    server_name server_IP_address;
    ssl_certificate /etc/ssl/domain.crt;
    ssl_certificate_key /etc/ssl//domain.key;
    root /usr/share/nginx/html;
    location / {
    }
    error_page 404 /404.html;
    location = /404.html {
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    }
}
 
 
در نظر داشته باشید که server_name نام دامنه ای می باشد که در قسمت common name وارد نمودین و همچنین server_ip_address نیز آدرس IP سرور می باشد.
قسمت ssl_certificate و sssl_certificate_key نیز مربوط به مسیر فایل های SSL می باشد که در گام های اولیه این راهنمای ایجاد نموده بودیم.
در نهایت برای ازمایش تغییرات اعمال شده دستور زیر را وارد نمایید.
nginx -t​
در نهایت سرویس وب سرور Nginx را می بایست ریست نمایید بدین منظور دستور زیر را اجرا نمایید.
systemctl restart nginx

Add Feedback