ModSecurity w Nginx - jak wdrożyć WAF na serwerze

07 wrz 2025 • 10 min czytania
WAF (Web Application Firewall) to dodatkowa warstwa ochrony aplikacji webowych. Filtruje i monitoruje ruch HTTP w celu blokowania ataków takich jak SQL Injection, XSS czy brute force. Jednym z najpopularniejszych WAF jest ModSecurity, który można zintegrować z Nginx. W tym artykule pokazujemy, jak go wdrożyć krok po kroku.

Czym jest ModSecurity


open source Web Application Firewall
chroni aplikacje przed znanymi atakami OWASP Top 10
pozwala tworzyć własne reguły filtrujące
działa jako moduł dla Apache, Nginx i IIS

Instalacja ModSecurity dla Nginx


Na Debian/Ubuntu:

sudo apt update
sudo apt install libnginx-mod-security2 -y

Sprawdzenie, czy moduł jest dostępny:

nginx -V 2>&1 | grep --color -o security

Włączenie ModSecurity w konfiguracji Nginx


Edytujemy plik /etc/nginx/nginx.conf i dodajemy:

load_module modules/ngx_http_modsecurity_module.so;

Przykładowa konfiguracja Nginx z SSL i ModSecurity


Plik: /etc/nginx/sites-enabled/example.conf

server {
listen 443 ssl;
server_name example.com www.example.com;

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;

modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/main.conf;

location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

Konfiguracja ModSecurity


Plik: /etc/nginx/modsec/main.conf

SecRuleEngine On
SecAuditEngine RelevantOnly
SecAuditLog /var/log/nginx/modsec_audit.log

Dodanie reguł OWASP CRS



cd /etc/nginx/modsec
git clone https://github.com/coreruleset/coreruleset.git
mv coreruleset owasp-crs
cp owasp-crs/crs-setup.conf.example owasp-crs/crs-setup.conf

echo "Include /etc/nginx/modsec/owasp-crs/crs-setup.conf" >> main.conf
echo "Include /etc/nginx/modsec/owasp-crs/rules/*.conf" >> main.conf

Testowanie działania


Restartujemy Nginx i sprawdzamy logi:

sudo systemctl restart nginx
tail -f /var/log/nginx/modsec_audit.log

Przykładowe testy:
wpisanie w URL fragmentu SQL np. ?id=1' OR '1'='1
wywołanie pliku xmlrpc.php w WordPress

Tworzenie własnych reguł


Blokada dostępu do pliku xmlrpc.php:

SecRule REQUEST_URI "@streq /xmlrpc.php" "id:1001,deny,status:403,msg:'Blocked XMLRPC access'"

Najlepsze praktyki


zacznij od trybu detekcji (SecRuleEngine DetectionOnly), aby sprawdzić reguły
regularnie aktualizuj OWASP CRS
dostosuj reguły do swojej aplikacji, aby uniknąć false positive
integruj logi ModSecurity z ELK Stack lub SIEM

Podsumowanie


ModSecurity zintegrowane z Nginx na porcie 443 pozwala na bezpieczne szyfrowanie ruchu i aktywną ochronę aplikacji webowych. Wdrożenie OWASP CRS i własnych reguł daje pełną kontrolę nad ruchem i skutecznie zabezpiecza przed popularnymi atakami.

Chcesz wdrożyć ModSecurity z OWASP CRS na swoim serwerze Nginx i wzmocnić ochronę aplikacji webowych? Skontaktuj się z nami. Przygotujemy pełną konfigurację z SSL i regułami bezpieczeństwa.
07 wrz 2025 • 9 min czytania

Automatyzacja zadań z crontab - najlepsze praktyki

Automatyzacja zadań w Linux to jeden z kluczowych elementów administracji serwerami. Dzięki crontab można planować uruchamianie skryptów...

Zobacz więcej

03 wrz 2025 • 7 min czytania

Jak działa CDN i dlaczego przyspiesza Twoją stronę?

Szybkość ładowania strony to jeden z kluczowych czynników, które wpływają na doświadczenie użytkowników oraz pozycję w wyszukiwarkach....

Zobacz więcej

07 wrz 2025 • 8 min czytania

Jak działa swap w Linux i kiedy warto go wyłączyć

Swap w systemie Linux to przestrzeń na dysku używana jako rozszerzenie pamięci RAM. Dzięki niemu system może działać nawet wtedy, gdy...

Zobacz więcej

Wczoraj, 00:31 • 12 min czytania

Jak analizować logi Nginx i Apache - narzędzia i przykłady

Logi serwera WWW to jedno z najważniejszych źródeł informacji o działaniu aplikacji i ruchu użytkowników. Nginx i Apache generują...

Zobacz więcej

04 wrz 2025 • 6 min czytania

Jak skonfigurować PHP 8.x FPM pod duży ruch?

PHP to jeden z najpopularniejszych języków skryptowych używanych do tworzenia stron internetowych i aplikacji webowych. Wiele dużych...

Zobacz więcej

Tutaj znajdziesz odpowiedzi na najważniejsze pytania dotyczące naszych usług i wsparcia.

FAQ

Jakie usługi administracji serwerami oferujecie?

Świadczymy kompleksową obsługę - od konfiguracji i monitoringu, przez optymalizację wydajności, aż po pełne wsparcie techniczne 24/7.

Czy zajmujecie się migracją danych i systemów?

Tak, wykonujemy bezpieczne migracje plików, baz danych i aplikacji - bez przestojów i bez dodatkowych kosztów.

Czym różni się serwer dedykowany od VPS?

Serwer dedykowany to pełna maszyna tylko dla Ciebie, a VPS to jej podział na wirtualne środowiska - tańsze, ale współdzielone.

Czy mogę liczyć na pomoc przy awarii?

Tak, monitorujemy serwery całodobowo i natychmiast reagujemy w przypadku awarii, minimalizując ryzyko przestoju.

Czy Wasze rozwiązania są skalowalne?

Oferujemy infrastrukturę, która rośnie razem z Twoim biznesem - łatwo zwiększysz zasoby wtedy, gdy tego potrzebujesz.

Czy oferujecie wsparcie przy budowie infrastruktury?

Tak, projektujemy i wdrażamy środowiska IT dopasowane do potrzeb – od małych firm po duże, złożone systemy.

Jak zabezpieczacie serwery przed atakami i utratą danych?

Stosujemy firewalle, systemy anty-DDoS, regularne backupy i aktualizacje, aby zapewnić maksymalne bezpieczeństwo.

Jakie gwarancje SLA zapewniacie?

Oferujemy SLA na poziomie 99.99% dostępności, co oznacza niezawodne działanie infrastruktury i szybki czas reakcji przy ewentualnych problemach.

Chcesz dowiedzieć się więcej o naszej ofercie?

Wyślij  zapytanie