Я использую веб-сервер 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"
Что я делаю не так?
Заранее спасибо.