Apache Security — 10 советов по безопасной установке

Опубликовано: 2022-01-05

Apache является одним из самых популярных приложений веб-сервера, используемых сегодня и уже давно. Он с открытым исходным кодом и доступен бесплатно, что делает его очень привлекательным вариантом для тех, кто хочет разместить свои веб-сайты с ограниченным бюджетом.

Но Apache также подпадает под категорию программного обеспечения «общего назначения», что означает, что его может использовать любой, у кого есть доступ к его коду или сценариям установки. Это оставляет вас открытыми для потенциальных угроз безопасности, если ваш сайт не настроен надежно с самого начала.

В этой статье мы рассмотрим 10 советов по обеспечению безопасности установки Apache, чтобы у вас не возникло проблем в будущем — читайте дальше!


Apache Security — 10 советов по безопасной установке

1) Отключить директиву server-info

Если вы включите директиву в httpd.conf и посетите страницу конфигурации Apache, она сообщит вам информацию о том, что происходит на этом конце!

Это может включать конфиденциальную информацию о настройках вашего сервера, например, какую версию программного обеспечения вы используете и где на компьютере хранятся эти файлы.

Используя эту информацию, злоумышленник может выяснить, работает ли на вашем сервере уязвимая версия OpenSSL.

Исправьте эту проблему, удалив модуль mod_info в файле конфигурации httpd.conf Apache: #LoadModule info_module modules/mod_info.so


2) Отключить директиву состояния сервера

Директива содержит информацию о производительности серверов вашего приложения, такую ​​как время их безотказной работы и загрузка. Эта информация может быть использована злоумышленниками для определения того, какие из ваших серверов наиболее загружены и уязвимы. Вы можете исправить это, закомментировав это в файле конфигурации httpd.conf Apache:

 #<Расположение/статус-сервера>
# SetHandler сервер-статус
# Отказать в заказе, разрешить
# Запретить от всех
# Разрешить с .your_domain.com
#</Расположение>

3) Отключить директиву ServerSignature

Директива ServerSignature — отличный способ добавить дополнительную информацию о вашем веб-сервере, в том числе о том, какую версию Apache вы используете и в какой операционной системе.

Apache нужно, чтобы эта директива была отключена, чтобы вы не видели никакой конфиденциальной информации на своем компьютере. Используйте ServerSignature Off в файле конфигурации httpd.conf Apache.


4) Установите для директивы ServerTokens значение Prod

Директива ServerTokens используется для отправки ряда информации в поле заголовка ответа. Директива Apache ServerTokens может иметь множество различных синтаксисов, в том числе перечисленные в документации.

Когда для директивы ServerTokens установлено значение Prod, в заголовках ответов сервера будет отображаться только Apache. Для этого добавьте ServerTokens Prod в файл конфигурации httpd.conf Apache.


5) Отключить список каталогов

Список каталогов показывает вам каждый файл в системе, что позволяет злоумышленнику легко просматривать любую конфиденциальную информацию, которая ему может понадобиться. Включение этой опции не стоит риска!

Вы всегда должны быть осторожны, когда дело доходит до исходного кода вашего приложения. Злоумышленник, получивший доступ, потенциально может использовать эту информацию в злонамеренных целях, таких как анализ недостатков безопасности или получение более подробной информации о том, что вы делаете внутри самой программы.

Установите директиву Options в файле Apache httpd.conf:

 <Каталог /ваш/сайт/каталог>
Параметры - Индексы
</Каталог>

6) Включите только необходимые модули

HTTP-сервер Apache — это мощный инструмент, но он также может быть перегружен, если его неправильно настроить. Существует множество предустановленных и включенных по умолчанию модулей, которые вы можете использовать или не использовать, поэтому перед установкой убедитесь, что эти параметры работают так, как им нужно в вашей среде!

Но что произойдет, если вы включите все эти модули, не задумываясь об их влиянии на httpd? Ну, могут быть серьезные последствия. Включение этих модулей равносильно открытию сервера для любых проблем с безопасностью, которые могут существовать или могут быть обнаружены в будущем.

Один из лучших способов убедиться, что вы установили все необходимые модули для своего веб-сайта, — просмотреть документацию Apache. Обязательно используйте только те модули, которые вам нужны, и отключите те, которые не используются.


7) Используйте подходящего пользователя и группу

Apache — мощный и универсальный веб-сервер, но лучше всего использовать его с непривилегированной учетной записью, а не под демоном (по умолчанию). Это помогает обеспечить безопасность вашей системы, ограничивая доступ к Apache только при необходимости!

Кроме того, два разных процесса, запущенных с одним и тем же пользователем и группой, могут привести к эксплойту в одном из них. Для изменения пользователя и группы Apache необходимо отредактировать файл конфигурации httpd.conf, чтобы изменить директивы пользователя или группы.


8) Ограничьте нежелательные услуги

Если вы хотите обеспечить безопасность своего Apache, лучше не запускать какие-либо службы или создавать символические ссылки, если они не нужны. Отключить службы легко с помощью директивы Options в httpd.conf, и вы можете сделать это для определенного каталога только в случае необходимости!

Вот пример того, что нужно сделать:

 <Каталог /ваш/сайт/каталог>
Параметры -ExecCGI -FollowSymLinks -Включает
</Каталог>

9) Используйте ModSecurity WAF

ModSecurity — это программное обеспечение с открытым исходным кодом, которое можно использовать в качестве брандмауэра веб-приложений. Он имеет различные функции, включая фильтрацию, маскировку идентификатора сервера и функции предотвращения атак с нулевым байтом, чтобы защитить ваш сайт от хакеров!

Отличный способ повысить безопасность вашего веб-сервера и защититься от множества атак — установить mod_security. Это также даст вам возможность защититься от распределенного отказа в обслуживании (DDOS).


10) Включить ведение журнала

Чтобы исследовать причину конкретных проблем, вам нужно включить ведение журнала Apache. Это предоставляет подробную информацию о клиентских запросах, сделанных на вашем веб-сервере, и нет лучшего способа, чем использовать это при поиске проблем!

Модуль mod_log_config позволяет вам регистрировать действия Apache. Для этого убедитесь, что он включен в ваш файл httpd conf.


Почему важна безопасность Apache?

Важно иметь систему безопасности Apache, потому что она помогает защитить ваш веб-сервер от несанкционированного доступа, а также защищает ваш веб-сайт от возможных атак.

Пренебрежение безопасностью Apache может привести к взлому вашего веб-сайта, что может привести к потере или краже данных. Следуя советам, изложенным в этом сообщении блога, вы можете обеспечить максимальную безопасность установки Apache!


Вывод

В заключение, следуя этим простым советам, вы можете сделать свою установку Apache более безопасной. Эти рекомендации являются лишь отправной точкой, поэтому обязательно изучите безопасность конкретных потребностей вашего веб-приложения!

Самое важное, что нужно помнить, это то, что безопасность — это не разовое событие, это непрерывный процесс. Будьте бдительны и берегите свой сайт!