2010-11-13 28 views
2

J'ai une configuration d'application web apache + mod_jk + tomcat (connecteur pour mod_jk sur le port 8009). Récemment, mon application a commencé à se bloquer quelques fois par jour et dans/var/logs/messages il y a des entrées comme "possible inondation SYN sur le port 8009. Envoi de cookies" avec 30-60 secondes. Je dois redémarrer chaque fois que l'application se bloque.Qu'est-ce que "SYN flooding possible sur le port 8009. Envoi de cookies" signifie dans/var/log/messages?

Est-ce une attaque DDOS? ou des erreurs système/application peuvent provoquer ce problème?

Toute aide serait grandement appréciée.

Merci.

Répondre

1

Cet article sur tcp_syncookies pourrait aider à expliquer le problème. Quelqu'un ou quelque chose envoie des paquets SYN à votre application. Il peut s'agir d'un client légitime qui ne reçoit pas le cookie ACK (votre application fonctionne-t-elle?), Ou il peut s'agir d'une personne malveillante (distribuée ou non).

+0

Merci pour la réponse, oui mon application fonctionne, je l'obtiens accrocher quelques fois par jour, après je redémarre Tomcat, il revient à la normale. mais dans le journal, j'ai eu cette erreur toute la journée. J'ai ce problème depuis le 29 octobre. Avant cela n'a jamais été confronté à un tel problème.Serait-il si mon serveur ne peut pas gérer beaucoup de visiteurs? comme serveur surchargé? ou si c'est un malveillant comment puis-je suivre son adresse IP? est-il possible de déterminer la racine de ce problème? – taras

1

Tout d'abord, j'ai eu un regard sur les règles existantes

iptables -L -v

Cela vous montre les règles et la politique par défaut qui sont dans les chaînes existantes - INPUT, FORWARD et SORTIE .

Puis j'ai suivi ces étapes rapides -

  1. Créer une nouvelle chaîne et nommez-le, disons, DDOS_SYNFLOOD,

iptables -N DDOS_SYNFLOOD

  1. Ajouter une limite à pas .of paquets 15 par seconde avec une rafale maximale d'environ 20, en utilisant le module de limite -

iptables -A DDOS_SYNFLOOD -m limite --limit 15/seconde --limit rafale 20 -j ACCEPT

Note: D'autres unités -/minute,/heure, et/jour

  1. Et Bien sûr, nous devrons abandonner des paquets qui dépassent la limite ci-dessus

iptables -A DDOS_SYNFLOOD -j dROP

  1. maintenant, tout ce qui restait était de « sauter » à cette nouvelle chaîne pour les paquets entrants tcp syn sur le port 80.

iptables -A ENTRÉE -p tcp --syn --dport http -j DDOS_SYNFLOOD

Et regarder ce qui a été mis en place -

iptables -L -v