Nginx для блокировки IP за балансировщиком нагрузки не работает - PullRequest
0 голосов
/ 27 декабря 2018

Я использую веб-сервер Nginx 1.12.2 в Google Cloud (1.1.1.1) с балансировщиком нагрузки GCP (2.2.2.2), получающим доступ от клиента (3.3.3.3).Я пытаюсь разрешить трафик только с IP-адреса балансировщика нагрузки или с IP-адреса клиента, но при попытке заблокировать весь трафик.

Это мой nginx.conf:

В http:

include blockips.conf;

На сервере:

server {

proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header    X-Real-IP $remote_addr;
set_real_ip_from    2.2.2.2
real_ip_header      X-Forwarded-For;
real_ip_recursive   on;

В blockips.conf у меня есть:

allow 3.3.3.3
allow 2.2.2.2
deny all

Однако, когда я делаю запрос квеб-сервер, он не принимает IP-адрес балансировщика нагрузки или клиента, а другой IP-адрес.

2018/12/27 20:14:42 [error] 3121#0: *45 access forbidden by rule, client: 6.6.6.6

В X-Forwarded-For отображаются оба IP-адреса, которые мне нужны:

2018/12/27 20:14:42 [debug] 3121#0: *45 http header: "X-Forwarded-For: 3.3.3.3, 2.2.2.2"

Что я делаю не так?

Заранее спасибо.

...