Введение
Apache — один из самых популярных на сегодняшний день веб-серверов с открытым исходным кодом, предлагающий надежный набор функций и высокую производительность. В этой статье мы покажем вам, как установить Apache на RHEL и CentOS Stream 9, а затем защитить его для производственного использования.
Предпосылки
Прежде чем начать, у вас должен быть доступ к серверу, на котором запущены RHEL и CentOS Stream 9. У вас также должны быть привилегии root или sudo, чтобы вы могли устанавливать пакеты и вносить системные изменения. Кроме того, вам необходимо иметь общее представление о командах Linux и о том, как использовать текстовый редактор, такой как nano или vim.
Установить Апач
Чтобы установить Apache, вы должны сначала добавить репозиторий EPEL в свою систему. Это можно сделать с помощью следующей команды:
sudo dnf install epel-release
После этого вы можете установить Apache с помощью следующей команды:
sudo dnf install httpd
После завершения установки вы можете запустить Apache с помощью следующей команды:
sudo systemctl start httpd
Чтобы убедиться, что Apache запускается автоматически при запуске, выполните следующую команду:
sudo systemctl enable httpd
Протестируйте установку
Чтобы проверить установку, откройте веб-браузер и перейдите по адресу http://your-server-ip. Вы должны увидеть страницу с надписью «Добро пожаловать на ваш веб-сервер Apache». Это подтверждает, что Apache запущен и работает в вашей системе.
Защитите Apache
Теперь, когда Apache установлен, пришло время защитить его для использования в рабочей среде. Вот несколько основных шагов, которые необходимо выполнить:
Обновите Apache до последней версии
Важно поддерживать установку Apache в актуальном состоянии, чтобы воспользоваться исправлениями безопасности и другими улучшениями. Вы можете обновить Apache с помощью следующей команды:
sudo dnf update httpd
Отключить список каталогов
По умолчанию Apache отображает список каталогов, если в каталоге нет индексного файла. Это может быть угрозой безопасности, поэтому лучше отключить список каталогов. Вы можете сделать это, добавив следующие строки в файл конфигурации Apache, расположенный в /etc/httpd/conf/httpd.conf:
<Directory /var/www/html>
Options -Indexes
</Directory>
Настроить брандмауэр
Брандмауэр может помочь защитить ваш сервер от несанкционированного доступа, блокируя входящий трафик на определенных портах. В RHEL и CentOS Stream 9 вы можете использовать встроенную службу брандмауэра firewalld для управления входящим трафиком. Чтобы разрешить трафик на Apache, выполните следующую команду:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
Включить шифрование SSL/TLS
Для шифрования данных, передаваемых между сервером и клиентами, необходимо включить шифрование SSL/TLS. Это можно сделать, получив сертификат SSL и настроив Apache для его использования. Вы можете создать самозаверяющий сертификат с помощью следующей команды:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache.key -out /etc/ssl/certs/apache.crt
Далее вам нужно настроить Apache для использования сертификата. Это можно сделать, добавив следующие строки в файл конфигурации Apache, расположенный по адресу /etc/httpd/conf/httpd.conf:
<VirtualHost _default_:443>
DocumentRoot "/var/www/html"
ServerName your-server-name
SSLEngine on
SSLCertificateFile /etc/ssl/certs/apache.crt
SSLCertificateKeyFile /etc/ssl/private/apache.key
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
Перезапустите Apache после внесения этих изменений с помощью следующей команды:
sudo systemctl restart httpd
Ограничить доступ к конфиденциальным файлам
Важно ограничить доступ к конфиденциальным файлам, таким как файлы конфигурации и журналы. Вы можете сделать это, добавив следующие строки в файл конфигурации Apache, расположенный в /etc/httpd/conf/httpd.conf:
<FilesMatch "\.(log|cfg)$">
Require all denied
</FilesMatch>
Заключение
Выполнив шаги, описанные в этой статье, вы успешно установили и защитили Apache на RHEL и CentOS Stream 9. Это лишь некоторые из основных шагов для защиты вашей установки Apache, и вы всегда должны оставаться в курсе последних событий в области безопасности. практики и разработки на местах для обеспечения безопасности вашего сервера. Кроме того, важно регулярно отслеживать журналы Apache и следить за любыми признаками вредоносной активности или инцидентов безопасности. Соблюдая правильные меры предосторожности, вы можете обеспечить бесперебойную и безопасную работу вашего сервера Apache.