Быстро, доступно, безопасно!
Магазин готовых сайтов

Настройка вебсервера Apache 2.4 на AlmaLinux 8.8

Подробная инструкция по настройке веб-сервера Apache, дополнительных модулей, виртуальных хостов, работе с Cloudflare и других нюансах.

Настройка сервера на AlmaLinux 8.8 -> Apache 2.4

В стандартной комплектации AlmaLinux 8.8 поставляется с вебсервером Apache 2.4 который по умолчанию отключен. Для автоматического запуска при включении сервера надо выполнить команду: chkconfig httpd on

Конфигурация iptables по умолчанию в AlmaLinux 8.8 не разрешает доступ к портам HTTP (TCP порт 80) и HTTPS (TCP порт 443), используемым веб-сервером Apache. Необходимо открыть эти порты. Проще всего это сделать через графический интерфейс Firewall.

Редактируем конфигурацию Apache: vim /etc/httpd/conf/httpd.confследующий файл загружает большинство модулей, включенных в сам HTTP-сервер Apache - проверяем наличие необходимых нам модулей: vim /etc/httpd/conf.modules.d/00-base.confредактируем виртуальные хосты: vim /etc/httpd/conf.d/vhosts.confпроверяем версию: httpd -vболее подробно об Apache: httpd -Vпроверить конфигурационные файлы: httpd -tили apachectl configtest

При возникновении ошибки "because search permissions are missing on a component of the path" выполнить следующую команду: chmod +rx /home /home/user1 /home/user1/public_html


Виртуальные хосты

Главная задача веб-сервера - обслуживать сайты. Виртуальные хосты позволяют httpd серверу работать с любым их количеством.

Для начала необходимо создать запись в файле vhosts.conf для базовой конфигурации: <VirtualHost 192.168.1.100:80>
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot "/home/example/public_html"
    #RewriteCond %{HTTPS} off
    #RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</VirtualHost>


Cloudflare

Особенности настройки Cloudflare. При работе с Cloudflare следует использовать максимально безопасный вариант - Full (strict). Это сквозное шифрование данных от браузера пользователя до сервера, защищённое SSL сертификатом, выданным доверенным Центром Сертификации или самой Cloudflare.

Ваш режим шифрования SSL/TLS — "Полный" (строгий)
Ваш режим шифрования SSL/TLS — "Полный" (строгий)

Следует понимать, что с любым из SSL-сертификатов на бесплатном тарифе соединение от браузера пользователя до Cloudflare будет происходить через SSL-сертификат полученный самой Cloudflare в ваших интересах (на момент написания этой статьи их выдает Google Trust Services LLC), а от Cloudflare до вашего сервера либо доверенным ЦС, либо сгенерированным самой Cloudflare. В обоих вариантах Cloudflare будет иметь доступ к расшифрованному трафику.

Исходя из этого получать SSL-сертификат в доверенном ЦС не имеет практического смысла, хотя это и возможно. Для получения SSL-сертификата от Cloudflare надо нажать в меню SSL/TLS, выбрать подменю Origin Server и нажать на кнопку "Create Certificate". После чего скопировать сертификат и ключ на свой сервер и добавить информацию о них в файл vhosts.conf. По умолчанию Cloudflare выдает свой сертификат сроком на 15 лет.

Перед включением этого режима также следует убедиться, что сервер разрешает HTTPS-соединения через порт 443. В файле vhosts.conf это может выглядеть так: <VirtualHost 192.168.1.10:443>
...
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/example.com/fullchain.pem
SSLCertificateKeyFile /etc/httpd/ssl/example.com/privkey.pem
...
В противном случае Cloudflare вернет ошибку 526.


Паролирование директорий

После того, как сайт настроен и работает может потребоваться закрыть паролем какой-то определенный каталог. Для этого потребуется создать файл .htaccess и пароль к нему. Ключ -c создает новый файл с паролем, ключ -B определяет самый стойкий алгоритм шифрования.

Создаем файл: htpasswd -cB /home/path-to-file/passwd user


Метки: apache; httpd; cgi; vhosts

Опрос

В каком году был сделан ваш сайт? (голосов: 24)

  • до 2015 года - 23 (96%)
  • в 2015 - 0 (0%)
  • в 2016 - 0 (0%)
  • в 2017 - 0 (0%)
  • в 2018 - 1 (4%)
  • в 2019 - 0 (0%)