Slowloris je typ útoku odmítnutí služby (DoS), který se zaměřuje na zranitelnosti v webových serverech a jejich implementaci protokolu HTTP. Útočník otevře několik spojení k cílovému serveru a velmi pomalu posílá hlavičky HTTP, aby udržel spojení otevřené a zabránil serveru v obsluze legitimních požadavků. Apache Tomcat je často používaný webový kontejner, který spouští Java aplikace a může být také cílem těchto útoků. V tomto článku probereme kroky, jak zabezpečit Tomcat proti Slowloris útokům na operačním systému CentOS 7.
Předpoklady
Před začátkem se ujistěte, že máte:
- Nainstalovaný a běžící Apache Tomcat.
- Přístup k serveru s oprávněními superuživatele.
Krok 1: Aktualizace systému a Tomcat
Začněte tím, že aktualizujete váš systém a nainstalované balíčky na nejnovější verzi. To pomůže zajistit, že máte nejnovější bezpečnostní opravy.
sudo yum update -y
Krok 2: Instalace modulu mod_security a mod_evasive
mod_security
a mod_evasive
jsou moduly Apache, které mohou pomoci ochránit váš server proti různým typům útoků, včetně Slowloris. I když Tomcat sám o sobě není Apache server, můžete použít Apache jako reverzní Proxy před Tomcatem, což umožňuje využít tyto moduly pro zvýšení bezpečnosti.
Instalujte Apache:
sudo yum install httpd -y
Pak nainstalujte mod_security
a mod_evasive
:
sudo yum install mod_security mod_evasive -y
Krok 3: Konfigurace Apache jako reverzní proxy
Editujte konfigurační soubor Apache (/etc/httpd/conf/httpd.conf
), aby fungoval jako reverzní proxy pro Tomcat. Přidejte následující konfiguraci na konec souboru:
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
Nahraďte localhost:8080
adresou a portem, na kterém běží váš Tomcat server.
Krok 4: Konfigurace mod_security a mod_evasive
Konfigurace mod_security
a mod_evasive
závisí na vašich specifických potřebách a prostředí. Základní konfigurace mod_evasive
může vypadat takto:
Vytvořte konfigurační soubor mod_evasive
:
sudo vi /etc/httpd/conf.d/mod_evasive.conf
A přidejte do něj základní direktivy:
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>
Krok 5: Restart Apache a Tomcat
Po provedení všech změn restartujte Apache a Tomcat, aby se nová nastavení projevila:
sudo systemctl restart httpd
sudo systemctl restart tomcat
Tímto jste provedli základní konfiguraci ochrany proti Slowloris útokům pro Tomcat běžící na CentOS 7. Je důležité pravidelně monitorovat vaše logy a upravovat konfiguraci podle potřeb vašeho provozu, aby bylo dosaženo nejlepší možné ochrany.