Diritto di licenziamento basato su località di IP su server web nginx dietro Elastic Load Balancer

Ho eseguito i server web nginx dietro un bilanciatore di carico elastico in AWS. Il vero IP è ottenuto tramite X-Forwarded-For. Il problema affrontato è come utilizzare questo per negare tutto e consentire solo fonti specifiche per località particolari.

Qualcosa di simile: location / test / {include /etc/nginx/allowed-XForwardedFor.conf; negare tutto; }

Posso prendere la X-Forwarded-For IP con una variabile e poi utilizzarla nel file conf oppure in qualche modo utilizzarla con l'opzione allow nelle posizioni o farlo con l'aiuto di un se condizionale?

  • Amazon ELB non passare "X-Forwarded-For" a IIS
  • Aggiungi l'intestazione di risposta haproxy basata sull'intestazione di richiesta
  • c'è un standard per incatenare x-forwarded-for headers?
  • One Solution collect form web for “Diritto di licenziamento basato su località di IP su server web nginx dietro Elastic Load Balancer”

    Utilizza il module nginx realip e non dovrai preoccuparti dell'intestazione X-Forwarded-For; è ansible agire solo sugli indirizzi IP come se il bilanciatore di carico non fosse stato presente.

    Una configuration di esempio:

    http { real_ip_header X-Forwarded-For; set_real_ip_from 172.19.0.0/16; # Netblock for my ELB's 
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.