نصب ssl در Apache
برای نصب ssl در Apache ابتدا می بایست مطابق آموزش زیر csr و private key را تولید کنید و در اختیار شرکتی که گواهینامه ی ssl را از آن خریدای کرده اید قرار دهید تا پیکربندی گواهینامه را انجام دهند و فایل های certificate و CA BUNDLE را به شما ارائه دهند
پس از صدور گواهینامه توسط سازمان صدور گواهینامه ، شما آماده ی نصب بر روی سرور Apache خود هستید. این مراحل را دنبال کنید:
مرحله 1: آپلود فایل های گواهی نامه بر روی سرور
فایل های گواهینامه را بر روی سروری که وب سایت شما را میزبانی نموده است آپلود کنید. شما دو فایل yourdomain.crt و yourdomain.ca-bundle در اختیار دارید که میتوانید محتویات آنها را با Notepad مشاهده کنید.
مرحله 2: فایل پیکربندی Apache را پیدا کنید
ممکن است مکان و نام فایل پیکربندی Apache بسته به سرور و نسخه سیستم عامل مورد استفاده شما متفاوت باشد. این فایل ممکن است به نام httpd.conf ، apache2.conf یا ssl.conf باشد
محل فایل پیکربندی بستگی به سرور و نسخه سیستم عامل شما دارد٬ چند مثال مختلف در زیر آماده است:
برای Fedora/CentOS/RHEL : در مسیر /etc/httpd/conf/httpd.conf
برای Debian و سیستم های مبتنی بر Debian: در مسیر /etc/apache2/apache2.conf
فایل پیکربندی شامل Virtual Host هایی است که برای همه دامنه های روی سرور ایجاد شده است.
توجه: در صورتی که Apache را در سیستم عامل اوبونتو نصب کردید باید بدانید که هر سایت دارای پیکربندی جداگانه ای است که می توانید در /etc/apache2/sites-enabled/. پیدا کنید.
برای اینکه سایت شما از طریق اتصال امن و غیرامن در دسترس باشد ، به دو فایل پیکربندی مجزا احتیاج دارید: یکی برای پورت 80 و دیگری برای پورت 443.
توصیه می کنیم قبل از ایجاد هرگونه تغییر در آن ، از فایل پیکربندی بکاپ تهیه کنید. در این صورت اگر اشتباهی پیش آمد ، می توانید تغییرات را برگردانید
مرحله 3 : ویرایش فایل htaccess و نصب ssl در Apache
فایل مربوط به VirtualHost برای پورت 443 را ایجاد کنید و یا ویرایش نمایید.
همچنین شما میتوانید از یک کپی رکورد مربوط به پورت 80 (که بایستی در فایل پیش فرض VirtualHost شما باشد) استفاده نمایید و پورت را به 443 تغییر دهید. به راحتی آن را به انتهای ماژول non-secure اضافه کنید. علاوه بر تغییر پورت٬ شما بایستی خطوط زیر را نیز به رکورد ها اضافه نمایید:
SSLCertificateFile به مسیر certificate شما روی سرور اشاره می کند.
SSLCertificateKeyFile به مسیر کلید خصوصی یا همان private key روی سرور اشاره می کند.
SSLCertificateChainFile به مسیر فایل CA-Bundle اشاره می کند.
<VirtualHost [IP ADDRESS]:443>
ServerAdmin webmaster@Domain.com
DocumentRoot var/www
ServerName www.domain.com
ErrorLog www/home/logs/error_log
SSLEngine on
SSLCertificateFile /etc/ssl/domain.com.crt
SSLCertificateKeyFile /etc/ssl/domain.com.key
SSLCertificateChainFile /etc/ssl/domain.com.ca-bundle
</VirtualHost>
توجه: از زمان انتشار Apache 2.4.8 ، دستورالعمل SSLCertificateChainFile منسوخ شد و شما می توانید کد گواهی میانی یا همان intermediate را به انتهای SSLCertificateFile اضافه کنید.
توجه! اگر از گواهینامه های وایلدکارد یا مالتی دامین استفاده میکنید٬ نیاز است که فایل پیکربندی را برای هر دامین یا ساب دامین میزبانی شده در سرور ایجاد نمایید. می بایست نام هر ساب دامین یا دامین را به صورت مجزا تعریف کنید و مسیر گواهینامه را به سمت گواهینامه اصلی تنظیم نمایید همانطور که در بالا نوشته شده است.
وقتی که فایل VirtualHost را تغییر دادید نیاز است که سرویس apache را راه اندازی مجدد کنید تا تنظیمات اعمال شود. این کار با استفاده از دستور زیر قابل انجام است:
systemctl restart httpd.service
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگو شرکت کنید؟نظری بدهید!