Як налаштувати HTTP Apache за допомогою SSL-сертифіката

Apache HTTP досі залишається лідером ринку веб-серверів, якими користується Топ мільйонів найзайнятіших сайтів.


Ви можете бачити, що Nginx збирається поступово, тому якщо ви перебуваєте в адміністрації системи / веб / середнього програмного забезпечення; тоді ти познайомився з обома Апачем & Веб-сервери Nginx.

Однак у цій статті я висвітлю лише веб-сервер Apache.

Після реалізації SSL налаштований домен / IP буде доступний через HTTPS. Давайте почнемо.

На високому рівні ми зробимо наступне.

  • Скомпілюйте Apache HTTP 2.4.5 з модулем SSL
  • Отримайте сертифікат SSL
  • Настройте Apache для підтримки SSL

Встановіть Apache за допомогою SSL з Source

Щоб налаштувати SSL, Apache HTTP повинен бути компільований з mod_ssl. Я буду використовувати CentOS 7 VM від Цифровий океан щоб продемонструвати це.

  • Увійдіть на сервер Linux із root та завантажте останню версію Apache

wget http://www-us.apache.org/dist//httpd/httpd-2.4.25.tar.gz .

  • Витяг за допомогою команди gunzip

gunzip -c httpd-2.4.25.tar.gz | tar xvf –

  • У вас буде нова папка “httpd-2.4.25
  • Зайдіть всередину та виконайте таку команду настройки

./ configure –enable-ssl –-enable-so

Примітка: Якщо ви робите це на абсолютно новому сервері, то у вас можуть виникнути проблеми, пов’язані з APR, PCRE, OpenSSL, і ви можете звернутися до посібника з усунення несправностей..

Переконайтеся, що ви не отримаєте помилок із вищезгаданої команди конфігурації, а потім вам доведеться встановити команди make.

зробити
зробити встановлення

Як завжди, не переконайтесь у помилках вищезазначених команд. Це робить висновок, що у вас є встановлено Веб-сервер Apache з підтримкою SSL.

Отримання сертифіката SSL

Існує кілька способів генерування та отримання сертифікату SSL, підписаного органом сертифікації.

Якщо ви хочете впровадити SSL на веб-сервері Intranet, то в більшості організацій є внутрішня команда видавців сертифікатів, тож вам потрібно перевірити їх.

Але вам все одно потрібно генерувати CSR (запит на підпис сертифіката), і ви можете це зробити за допомогою OpenSSL.

Однак якщо ви хочете забезпечити себе Інтернет-адреса тоді ви можете купити сертифікат від VeriSign, GoDaddy, Ім’ячек, тощо або отримати БЕЗКОШТОВНИЙ сертифікат від шифруваня Let’s.

Давайте Encrypt – це проект співпраці Фонду Linux, який пропонується БЕЗКОШТОВНИЙ сертифікат SSL / TLS. Я використовую Let’s Encrypt, щоб отримати один сертифікат для мого домену – Chandan.io

Існує кілька способів генерування CSR, але найпростіший я знайшов, що використовує “SSL БЕЗКОШТОВНО“Інтернет-інструмент.

Введіть URL-адресу, яку потрібно захистити

Перевірте право власності на домен одним із перелічених способів та завантажте файли сертифікатів домену.

Ви отримаєте три файли, які ми будемо використовувати далі для налаштування веб-сервера Apache.

  1. ключ – це ваш ключовий файл, і його не слід ділитися ні з ким публічно
  2. Сертифікат – фактичний сертифікат SSL для вашого домену
  3. Ca_bundle – корінь / проміжний сертифікат підписанта

Перенесіть завантажений файл на веб-сервер. Незабаром вони нам знадобляться.

Конфігурація SSL Apache

І останнім кроком буде налаштування Apache, щоб він міг обслуговувати запит через HTTPS.

  • Вхід на веб-сервер Apache
  • Створіть резервну копію файлу httpd.conf (місце за замовчуванням / usr / local / apache2 / conf /)
  • Відкрийте файл за допомогою редактора vi та переконайтеся, що модуль mod_ssl & httpd-ssl.conf існує та не коментується

Модулі LoadModule ssl_module / mod_ssl.so
Включіть conf / extra / httpd-ssl.conf

Ми будемо використовувати httpd-ssl.conf файл для налаштування даних про сертифікат. Нижче вам потрібно переконатися в наявності правильних параметрів.

  1. SSLCertificateFile – шлях до файлу сертифіката CRT, який ви завантажили раніше
  2. SSLCertificateKeyFile – шлях до файлу private.a.
  3. SSLCertificateChainFile – шлях до файлу ca_bundle.crt

Порада: ви можете створити нову папку під назвою “ssl” і зберегти в цьому всі файли, пов’язані з сертифікатом.

  • Візьміть резервну копію, якщо потрібно, та скористайтеся редактором vi для зміни файлу.

SSLCertificateFile "/usr/local/apache2/conf/ssl/certificate.crt"
SSLCertificateChainFile "/usr/local/apache2/conf/ssl/ca_bundle.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/ssl/private.key"

Далі вам потрібно налаштувати “Ім’я сервера“Директива. Зазвичай це ваше домен / URL-адреса

Ім’я сервера chandan.io

  • Збережіть файл та перезапустіть веб-сервер Apache

cd / usr / local / apache2 / bin
./ apachectl зупинка
./ apachectl start

І нарешті, ви повинні переконатися, що ваш домен відображається на ново-налаштованому веб-сервері IP. Після завершення спробуйте отримати доступ до свого домену за допомогою https.

І як ви бачите, Chandan.io є доступний через https з налаштованим мені сертифікатом.

Наведені вище кроки є важливими для налаштування сертифіката SSL, і вам слід додатково підготувати SSL, щоб затвердіти та захистити, що я пояснив тут.

Перед початком роботи ви також можете протестувати свій веб-сервер SSL / TLS, щоб переконатися, що він не піддається загальним уразливості безпеки..

Сподіваюся, це дає вам уявлення про те, як реалізувати сертифікат SSL на веб-сервері Apache, щоб URL-адреса була доступна через HTTPS.

Якщо ви новачок у веб-сервері Apache, я б рекомендував взяти це онлайн-курс.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map