جدول محتوایی
آپاچی یکی از محبوب ترین سرورهای وب است که به بیش از 30 درصد از وب سایت ها سرویس می دهد. این یک سرور HTTP منبع باز و رایگان است. این ابزار با هزاران ابزار و ویژگی برای اجرای ایمن و آسان برنامه ها همراه است.
این آموزش نحوه راه اندازی وب سایت های امن SSL را در وب سرور آپاچی توضیح می دهد.
توجه: این آموزش برای دبیان 9، 10 و 11 و اوبونتو 20.04 نوشته و تست شده است.
پیش نیازها
1.نصب اوبونتو/دبیان
2.مجوز sudo یا root برای نصب بسته ها، تغییر فایل های پیکربندی و راه اندازی مجدد خدمات.
نصب آپاچی
اگر آپاچی را نصب نکرده اید، باید آن را نصب کنیم. دستورات را وارد کنید:
sudo apt update sudo apt install apache2 openssl
هنگامی که سرور آپاچی را نصب کردید، سرویس را راه اندازی کنید و مطمئن شوید که همه چیز به درستی کار می کند.
فعال کردن Mod_SSL و Mod_Rewrite Modules
مرحله بعدی فعال کردن ماژول های mod_ssl و mod_rewrite است. برای این کار از اسکریپت a2enmod استفاده می کنیم که به ما امکان می دهد ماژول ها را در تنظیمات آپاچی فعال و غیرفعال کنیم.
از دستورات مطابق شکل زیر استفاده کنید:
sudo a2enmod ssl sudo a2enmod rewrite
htaccess. Override را فعال کنید
مرحله بعدی این است که تنظیمات آپاچی را ویرایش کنید و یک ورودی اضافه کنید تا تنظیمات پیشفرض آپاچی لغو شوند. تنظیمات لغو در فایل htaccess. واقع در دایرکتوری ریشه Apache انجام می شود.
sudo vim /etc/apache2/apache2.conf
به انتهای فایل بروید و ورودی زیر را اضافه کنید:
<Directory /var/www/html> AllowOverride ALL </Directory>
ذخیره کنید و فایل را ببندید.
تولید گواهی SSL
راه های مختلفی برای دریافت گواهینامه SSL رایگان وجود دارد. ابزارهایی مانند certbot و ژنراتورهای SSL گزینه های عالی هستند.
با این حال، در این راهنما، با استفاده از ابزار OpenSSL، یک گواهی خودامضا ایجاد خواهیم کرد.
یک دایرکتوری در دایرکتوری تنظیمات آپاچی به صورت زیر ایجاد کنید:
sudo mkdir /etc/apache2/certs
به دایرکتوری ایجاد شده در بالا بروید.
cd /etc/apache2/certs
ابزار OpenSSL را اجرا کنید تا گواهی امضا شده خود را مطابق دستور زیر ایجاد کنید:
توجه: در این فرآیند می توانید هر اطلاعاتی را به جز نام مشترک ارائه دهید. اطمینان حاصل کنید که یک آدرس IP یا نام میزبان را ارائه دهید.
هنگامی که فرآیند با موفقیت انجام شد، باید apache.crt و apache.key را در پوشه certs داشته باشید.
افزودن Cert به پیکربندی آپاچی
گواهی را با ویرایش فایل پیکربندی وبسایت پیشفرض آپاچی اضافه کنید.
sudo vim /etc/apache2/sites-enabled/000-default.conf
همانطور که نشان داده شده است، یک بلوک میزبان مجازی در پورت 443 اضافه کنید:
<VirtualHost *:443> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined SSLEngine on SSLCertificateFile /etc/apache2/certs/apache.crt SSLCertificateKeyFile /etc/apache2/certs/apache.key </VirtualHost>
تغییر مسیر به HTTPS
در بیشتر موارد، شما می خواهید کاربران را از هیچ نقطه پایانی SSL به SSL هدایت کنید. شما این کار را با افزودن یک قانون Rewrite در هاست مجازی پورت 80 انجام می دهید.
ورودی را به عنوان اضافه کنید:
RewriteEngine on RewriteCond %{HTTPS} !=on RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R=301,L]
توجه: مطمئن شوید که بلوکهای بالا زیر میزبان مجازی پورت 80 هستند.
راه اندازی مجدد و دسترسی به آپاچی
هنگامی که همه چیز در بالا پیکربندی شد، سرویس Apache را مجددا راه اندازی کنید و از طریق لوکال هاست به وب سایت خود دسترسی پیدا کنید.
با کلیک بر روی نماد قفل در مرورگر خود می توانید اطلاعات گواهی را مشاهده کنید.