mais aussi,la,jai trouver une librairie nommé libipq,elle sert a manipuler une file ou vont rentrer les paquets.
Ce que jai pas compris,cest que lorsque lon redirige un paquet,vers la file a l'aide de :
iptables -A INPUT -p tcp -j QUEUE est quil va y avoir copie du paquet ou bien le paquet est reelement rediriger vers l'espace utilisateur dun programme,
aveant detre renvoyer vers le noyau.
Voila,si vous pouviez m'éclairer
c'est ce que j'ai compris de cette partie en anglais:
IP packets may be selected with iptables and queued for userspace processing via the QUEUE target. For example, running the following commands:
# modprobe iptable_filter
# modprobe ip_queue
# iptables -A OUTPUT -p icmp -j QUEUE
will cause any locally generated ICMP packets (e.g. ping output) to be sent to the ip_queue module, which will then attempt to deliver the packets to a userspace application. If no userspace application is waiting, the packets will be dropped
An application may receive and process these packets via libipq.
Merci
nohack
voila merci,je viens de trouver,cest la variable
tcp_max_syn_backlog quil faut modifier
après avec iptables tu peux gérer ça, faut regarder du côté du module ipt_state
tu peux utiliser les flags ensuite pour appliquer tes règles : --tcp-flags SYN ... avec des -m limit --limit X/Y et --limit-burst Z
ça te fera déjà une base pour faire tes recherches
deather2
Ben quand tu reçois un paquet avec le flag SYN dans le but d'initier une connexion, si y'a quelque chose qui écoute sur le port (listen()), alors on attend une primitive accept() qui renverra un SYN-ACK, puis attendra le retour d'un ACK.
Concernant le SYN-Flood, ben ça n'a rien à voir avec le nombre de connexion déjà, car tu peux recevoir une infinité de paquets SYN, sans pour autant que le serveur qui écuote sur le port puisse les gérer, n'empeche que ça sature complètement l'OS.
Il faut mettre en place un dispositif particuler contre les SYN-Flood, mais je m'y connais pas trop là dedans
nohack
salut,
je vois pas trop comment fonctionne ,au niveau du noyau,l'acceptation d'une connexion http par ex,
Si on admet que jai un serveur,et quon me synflood,je sais pas ou et combien de packet SYN seront stockés et utiliseront de la memoire?
Est qu'il y a un moyen de le modifier(nbre de connexion ouvertes?),
si cest un petit serveur par exemple,genre au max 30 connexion au max?
Et aussi,ets quil existe un programme pour compter le nbre de packet que lon envoie?