Demande #3551
Configurer nginx@bastion pour limiter les requêtes
Début:
10/01/2019
Echéance:
% réalisé:
0%
Difficulté:
2 Facile
Description
Pour éviter que l'infra complexe ne tombe avec les crawler, il faudrait configurer nginx sur bastion pour limiter les requêtes d'une même IP a un taux de requête/sec donnée.
Historique
#1 Mis à jour par François Poulain il y a environ un mois
Exemple de inspiré de config livrée par défaut dans discourse (https://github.com/discourse/discourse_docker/blob/master/templates/web.ratelimited.template.yml) :
limit_req_zone $binary_remote_addr zone=flood:10m rate=12r/s; limit_req_zone $binary_remote_addr zone=bot:10m rate=200r/m; limit_req_status 429; limit_conn_zone $binary_remote_addr zone=connperip:10m; limit_conn_status 429; limit_conn connperip 20; limit_req zone=flood burst=12 nodelay; limit_req zone=bot burst=100 nodelay;
La doc nginx: https://www.nginx.com/blog/rate-limiting-nginx/