Para proteger el servidor y los servicios contra inundaciones a nivel del sistema operativo, debe configurar un firewall, establecer límites en la cantidad de conexiones simultáneas y consideraremos las restricciones en algunos servicios. Por analogía, puede agregar reglas para sus servicios sustituyendo los puertos necesarios.
ICMP
Para protegerse de la inundación de icmp, debe agregar un límite en la cantidad de pings por segundo:
-A INPUT -p icmp -m hashlimit --hashlimit-upto 6/sec --hashlimit-burst 4 --hashlimit-name icmp -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j DROP
En este ejemplo, permitimos un máximo de 4 pings, con un máximo de 6 por segundo.
HTTP y HTTPS
Las reglas limitan el número de conexiones simultáneas, este número se puede ajustar para adaptarse a su tráfico, y cabe señalar que el valor debe ser mayor que en las reglas del servicio ddos deflate.
-A INPUT -p tcp -m tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 500 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
-A INPUT -p tcp -m tcp --dport 443 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 500 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
SSH
Recomendamos cambiar el puerto predeterminado del 22 a otro, por ejemplo 3022, etc. Dado que hay tantos intentos de adivinar contraseñas, la mayoría de las conexiones se realizan al servicio ssh.
-A INPUT -p tcp -m tcp --dport 3022 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 5 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
Si tiene otros servicios, como correo, cree reglas de manera similar.