Как да настроите Apache HTTP със SSL сертификат

Apache HTTP все още е лидер на пазара в уеб сървър, използван от топ милиона натоварени сайтове.


Можете да видите Nginx се прибира постепенно, така че ако сте в администрация на система / уеб / междинен софтуер; тогава опознахте и двамата Apache & Nginx уеб сървъри.

В тази статия обаче ще покрия само Apache Web Server.

След като се реализира 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 | катран xvf –

  • Ще имате нова папка „уеб–02.04.25
  • Влезте вътре и изпълнете следната команда за конфигуриране

./ конфигуриране –enable-ssl –-enable-so

Забележка: Ако правите това е на съвсем нов сървър, тогава може да срещнете проблеми, свързани с APR, PCRE, OpenSSL и можете да се обърнете към ръководството за отстраняване на проблеми.

Уверете се, че няма да получите грешка от горната команда за конфигуриране и след това трябва да инсталирате с командите make.

грим
направи инсталиране

Както обикновено, уверете се, че няма грешки от горните команди. Това заключава, че имате инсталирана Уеб сървър Apache със SSL поддръжка.

Получаване на SSL сертификат

Има множество начини за генериране и получаване на SSL сертификат, подписан от сертифициращия орган.

Ако търсите да внедрите SSL в интранет уеб сървър, по-голямата част от организацията има вътрешен екип за издаване на сертификати, така че трябва да проверите с тях.

Но все пак трябва да генерирате CSR (заявка за подписване на сертификат) и можете да го направите с OpenSSL.

Ако обаче търсите да се подсигурите URL адрес с интернет тогава или можете да закупите сертификат от VeriSign, GoDaddy, Namecheap, и т.н. или вземете БЕЗПЛАТНА сертификат от Encrypt на Let’s.

Да разберем, Encrypt е проект за съвместна работа на Linux Foundation БЕЗПЛАТЕН 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

Ще използваме уеб–ssl.conf файл за конфигуриране на детайлите за сертификата. Следните трябва да се уверите, че съществуват правилните параметри.

  1. SSLCertificateFile – Сертификат CRT файл файл, който сте изтеглили по-рано
  2. SSLCertificateKeyFile – частен път на ключов файл
  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

ServerName chandan.io

  • Запазете файла и рестартирайте уеб сървъра Apache

cd / usr / local / apache2 / bin
./ apachectl стоп
./ apachectl старт

И накрая, трябва да гарантирате, че вашият домейн е картографиран към ново конфигурирания 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