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

Настройка вебсервера 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>

Квоты

Квоты позволяют ограничивать размер дискового пространства, которое может использовать пользователь или группа. Для того, чтобы устанавливать квоты в системе AlmaLinux необходимо выполнить несколько шагов.

Установка необходимых пакетов: dnf install quotaвключение квот на уровне файловой системы путем добавления необходимых параметров (usrquota и grpquota) в файл /etc/fstab - редактируем его: vim /etc/fstabотредактированная строка может выглядеть так: /dev/mapper/almalinux-home /home     xfs     defaults,usrquota,grpquota     0 0далее необходимо перемонтировать файловую систему:mount -o remount /home


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

Опрос

Адаптирован ли ваш сайт для смартфонов и планшетов? (голосов: 33)

  • Да - 4 (12%)
  • Нет - 2 (6%)
  • Не знаю - 1 (3%)
  • Нет сайта - 26 (79%)