Pentru a proteja un server web împotriva atacurilor DDoS folosind fișierul .htaccess, puteți utiliza următoarele reguli:
Limitați dimensiunea cererilor și răspunsurilor HTTP prin intermediul directivelor "LimitRequestBody" și "LimitRequestFields":
Aceste directive limitează dimensiunea fișierelor încărcate prin intermediul formularelor și a dimensiunii cererilor HTTP. Valorile pot fi ajustate în funcție de necesitățile aplicației.
Blocați accesul la anumite tipuri de cereri prin intermediul directivelor "SetEnvIfNoCase" și "Deny from env=":
Această secțiune blochează accesul la orice cerere care conține un "User-Agent" specificat în setarea "SetEnvIfNoCase". În exemplul de mai sus, orice cerere care conține "libwww-perl" în "User-Agent" va fi blocată.
Limitați numărul de cereri acceptate de la fiecare IP prin intermediul directivelor "SetEnvIf" și "MaxConnPerIP":
Limitați dimensiunea cererilor și răspunsurilor HTTP prin intermediul directivelor "LimitRequestBody" și "LimitRequestFields":
Cod:
LimitRequestBody 102400
LimitRequestFields 100
Aceste directive limitează dimensiunea fișierelor încărcate prin intermediul formularelor și a dimensiunii cererilor HTTP. Valorile pot fi ajustate în funcție de necesitățile aplicației.
Blocați accesul la anumite tipuri de cereri prin intermediul directivelor "SetEnvIfNoCase" și "Deny from env=":
Cod:
SetEnvIfNoCase User-Agent "libwww-perl" block_perl
Deny from env=block_perl
Această secțiune blochează accesul la orice cerere care conține un "User-Agent" specificat în setarea "SetEnvIfNoCase". În exemplul de mai sus, orice cerere care conține "libwww-perl" în "User-Agent" va fi blocată.
Limitați numărul de cereri acceptate de la fiecare IP prin intermediul directivelor "SetEnvIf" și "MaxConnPerIP":
Cod:
SetEnvIf X-Forwarded-For "^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$" limit_conn
MaxConnPerIP 8