Брандмауер веб-додатків (WAF)¶
Передумови¶
- Веб-сервер Rocky Linux, на якому працює Apache
- Вміння працювати з редактором командного рядка (у цьому прикладі ми використовуємо vi)
- Високий рівень комфорту з видачею команд із командного рядка, переглядом журналів та іншими загальними обов’язками системного адміністратора
- Розуміння того, що встановлення цього інструменту також потребує моніторингу дій і налаштування під ваше середовище
- Користувач root виконує всі команди або звичайний користувач за допомогою
sudo
Вступ¶
mod_security — це веб-брандмауер додатків (WAF) з відкритим кодом. Це лише одна з можливих частин посиленого веб-сервера Apache. Використовуйте його з іншими інструментами або без них.
Якщо ви хочете використовувати цей та інші інструменти посилення захисту, зверніться до [посібника з Apache Hardened Web Server] (index.md). У цьому документі також використовуються всі припущення та умовності, викладені в цьому оригінальному документі. Перш ніж продовжити, варто переглянути його.
Одна річ, якої бракує mod_security під час встановлення із загальних репозиторіїв Rocky Linux, це мінімальний набір встановлених правил. Щоб отримати більш розширений пакет безкоштовних правил mod_security, ця процедура використовує правила OWASP mod_security можна знайти тут. OWASP означає Open Web Application Security Project. Ви можете [дізнатися більше про OWASP тут] (https://owasp.org/).
Tip
Як зазначено, ця процедура використовує правила OWASP mod_security. Не використовується конфігурація, надана цим сайтом. Цей сайт також містить чудові посібники з використання mod_security та інших інструментів, пов’язаних із безпекою. Документ, над яким ви працюєте mow, лише допомагає встановити інструменти та правила, необхідні для захисту за допомогою mod_security на веб-сервері Rocky Linux. Netnea — це команда технічних професіоналів, яка проводить курси безпеки на своєму веб-сайті. Значна частина цього вмісту безкоштовна, але у них є варіанти внутрішнього або групового навчання.
Встановлення mod_security¶
Щоб встановити базовий пакет, використовуйте цю команду. Він встановить усі відсутні залежності. Вам також знадобиться wget, якщо він у вас не встановлений:
dnf install mod_security wget
Встановлення правил mod_security¶
Note
Важливо ретельно дотримуватися цієї процедури. Конфігурацію від Netnea було змінено відповідно до Rocky Linux.
-
Отримайте доступ до поточних правил OWASP на їхньому сайті GitHub.
-
У правій частині сторінки знайдіть випуски та натисніть тег останнього випуску.
-
У розділі «Активи» на наступній сторінці клацніть правою кнопкою миші посилання «Вихідний код (tar.gz)» і скопіюйте посилання.
-
На вашому сервері перейдіть до каталогу конфігурації Apache:
cd /etc/httpd/conf -
Введіть
wgetта вставте посилання. Приклад:wget https://github.com/coreruleset/coreruleset/archive/refs/tags/v3.3.5.tar.gz -
Розпакуйте файл:
tar xzvf v3.3.5.tar.gz
Це створює каталог із інформацією про випуск у назві. Приклад: "coreruleset-3.3.5"
-
Створіть символічне посилання «crs» на каталог випуску. Приклад:
ln -s coreruleset-3.3.5/ /etc/httpd/conf/crs -
Видаліть файл
tar.gz. Приклад:rm -f v3.3.5.tar.gz -
Скопіюйте тимчасову конфігурацію, щоб вона завантажувалася під час запуску:
cp crs/crs-setup.conf.example crs/crs-setup.conf
Цей файл можна редагувати, але вам, імовірно, не потрібно буде вносити жодних змін.
Тепер діють правила mod_security.
Конфігурація¶
Після встановлення правил наступним кроком буде налаштування цих правил для завантаження та запуску під час виконання httpd і mod_security.
mod_security вже має файл конфігурації, розташований у /etc/httpd/conf.d/mod_security.conf. Вам потрібно буде змінити цей файл, щоб включити правила OWASP. Для цього відредагуйте файл конфігурації:
vi /etc/httpd/conf.d/mod_security.conf
Додайте наступний вміст безпосередньо перед кінцевим тегом (`
Author: Steven Spencer
Contributors: Ezequiel Bruni, Ganna Zhyrnova