Включить обратный прокси и заблокировать доступ к исходному порту - PullRequest
0 голосов
/ 02 мая 2019

Я размещаю приложение (Kibana) на порту 5601. Я хочу ограничить доступ к нему с помощью белого списка IP-адресов, поэтому я пытаюсь разместить его за Nginx.Ниже моя конф. Nginx.

server {
  listen *:5700;
  server_name _;
  allow 10.20.30.40; # My IP
  deny all;
  location / {
    proxy_pass http://localhost:5601;
  }
}

Это работает, поскольку только я могу получить доступ к приложению через порт 5700, а все остальные получают 403.Однако другие могут напрямую перейти к localhost:5601 и обойти всю безопасность.Как мне остановить прямой доступ к порту 5601?

1 Ответ

1 голос
/ 02 мая 2019

localhost:5601 - это соединение, доступное только пользователям / процессам, работающим на том же хосте, на котором запущены Nginx и Kibana.Он должен быть там, чтобы Nginx мог proxy_pass передавать трафик на Kibana.

Однако я думаю, что вы говорите о внешних пользователях, также подключающихся к порту 5601 из удаленных систем.

Kibana ненеобходимо прослушивать трафик от внешних систем через порт 5601. Обратите внимание, что по умолчанию по крайней мере некоторые установки Kibana не прослушивают внешние системы, и вам может не потребоваться вносить какие-либо изменения.

Однако, чтобы быть уверенным:

  1. Отредактируйте файл kibana.yml (возможно, /etc/kibana/kibana.yml)
  2. Убедитесь, что server.host: "localhost" является единственной строкой server.host и не закомментирована
  3. Перезапустите Kibana

Для дальнейшего управления вашей системой, используя лучшие практики.Я настоятельно рекомендую использовать брандмауэр той или иной формы и открывать доступ только к портам и протоколам, которые, как вы ожидаете, нужны внешним пользователям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...