Sam & Max » connexion http://sametmax.com Du code, du cul Sat, 07 Nov 2015 10:56:13 +0000 en-US hourly 1 http://wordpress.org/?v=4.1 nginx et limitation de connexion par IP avec limit_conn_zone 2 http://sametmax.com/nginx-et-limitation-de-connexion-par-ip-avec-limit_conn_zone/ http://sametmax.com/nginx-et-limitation-de-connexion-par-ip-avec-limit_conn_zone/#comments Fri, 06 Jul 2012 13:54:20 +0000 http://sametmax.com/?p=921 Limiter une IP à une ou plusieurs connexion avec nginx peut s’averer utile si vous voulez proposer par exemple un seul téléchargement de fichier à la fois par IP sur votre serveur (économie de bande passante, éviter de se faire aspirer tout le site d’un coup, etc.)

Nginx rappelons le est actuellement l’un des serveurs web les plus performant, gratuit qui plus est.

L’exemple ci-dessous va limiter une IP à 5 connexions sur l’ensemble des images servies par votre serveur. On peut bien sur modifier la regex Location pour limiter aux videos, pdf, etc…


dans le fichier de config de nginx:


Dans http:

http {
limit_conn_zone $binary_remote_addr zone=limit:10m; 
}

10m veut dire qu’il va logguer les IPs connectées dans 10 MB de mémoire après il efface et recommence, ça permet de stocker les IPs connectées récement.


Dans server:

server {
    location ~ \.(jpg|jpeg|gif|png)$ {
      limit_conn limit 5; # limit to 5 cnx by IP
    } 
}

PS: limit est le nom de zone que vous donnez à votre règle, ça peut prendre la forme que ça veut comme dirait Egon dans Ghostbusters…

Pour en savoir plus : Doc nginx HttpLimitZoneModule

]]>
http://sametmax.com/nginx-et-limitation-de-connexion-par-ip-avec-limit_conn_zone/feed/ 2