3 votes

Limiter le nombre maximum de connexions entrantes sur un port en utilisant iptables

J'ai un serveur sur lequel apache écoute sur un certain nombre de ports. Certains ports sont utilisés pour configurer le serveur, et un autre est utilisé pour télécharger des fichiers volumineux.

Mon problème est que lorsque j'ai un grand nombre de clients qui téléchargent des fichiers, l'interface web est inaccessible. Je voudrais limiter le nombre de clients se connectant sur le port "grand fichier" afin qu'apache ait toujours des connexions disponibles pour configurer le serveur. Un REJECT ne pose pas de problème, le client qui essaie de télécharger le fichier fera marche arrière et réessaiera plus tard. Chaque client n'a qu'une seule connexion ouverte au serveur à la fois, donc la limitation par IP ne fonctionne pas.

Je sais que je pourrais mettre quelque chose devant apache pour gérer cela, mais j'aimerais vraiment le faire dans iptables, sans ajouter de logiciel supplémentaire.

5voto

Jerizo Points 21

Vous pouvez essayer --connlimit avec le --connlimit-mask pour définir un masque de 0.

iptables -A INPUT -p tcp --dport XXY -m connlimit --connlimit-above 5 --connlimit-mask 0 -j REJECT

XXY est le port sur lequel vous souhaitez limiter le débit des connexions.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X