Ограничить доступ к статическому ресурсу на nginx за alteon - PullRequest
0 голосов
/ 14 октября 2019

У меня nginx с двумя ресурсами /public_url и /private_url за балансировщиком нагрузки Alteon. Я могу ограничить доступ к private_url, используя nginx.conf:

location /private_url {
  include whitelist.conf; 
  deny all;
}

Обратите внимание, что public_url остается доступным с любого IP-адреса.

Это работает, когда я получаю прямой доступ к nginx. Однако, когда я получаю доступ к nginx через Alteon, я вижу только IP-адрес Alteon. В результате я не могу различить IP-адреса из белого и черного списков.

Как правильно организовать IP-фильтрацию на private_url, но обслуживать public_url всем, когда nginx отстает от alteon?

1 Ответ

1 голос
/ 14 октября 2019

Балансировщик нагрузки по умолчанию удаляет все заголовки клиента при передаче запроса в восходящий поток. Включая IP-адрес и заменяя его на IP-адрес сервера.
В nginx в качестве балансировщика нагрузки вы добавите proxy_set_header X-Real-IP $remote_addr;. Я не уверен насчет Альтеона, но нашел ссылку, объясняющую, как этого добиться: https://support.radware.com/app/answers/answer_view/a_id/15085/~/how-to-insert-x-forwarded-header-for-piped-server-load-balanced-traffic-to-real

...