Задать вопрос
@Cobe2

Как заставить nginx server отвечать только с localhost?

Не могу понять как можно в конфиге nginx разрешить подключение только с адреса 127.0.0.1

Вот мой конфиг:
server {
        listen 127.0.0.1:8080;
        listen 127.0.0.1;
        allow 127.0.0.1;
        deny all;

        server_name _;

        location /status {
                stub_status;
        }
}


После применения конфига ss -tlnp показывает следующее:

LISTEN               0                    511                                        0.0.0.0:8080                                    0.0.0.0:*                   users:(("nginx",pid=56986,fd=11),("nginx",pid=56985,fd=11),("nginx",pid=55920,fd=11))


То есть сокет открыт для всех ip по порту 8080.
Хотелось бы чтобы сокет был вида 127.0.0.1:8080.

Соответственно, с других серверов в сети страничка доступна по адресу ip хоста:8080.
Можно ли это исправить конфигами nginx?
  • Вопрос задан
  • 559 просмотров
Подписаться 2 Простой 7 комментариев
Решения вопроса 1
Lynn
@Lynn
nginx, js, css
Не помню где именно я это прочитал, но некоторые изменения в конфиге, в частности изменения директивы listen, не применяются при «мягком рестарте» (systemctl reload nginx, nginx -s reload и т.п.).

Поэтому при внесении изменений в listen nginx нужно полностью перезапускать nginx (systemctl restart nginx и т.п.).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
При корректно настроенном listen 127.0.0.1:8080 nginx будет слушать порт только на внутреннем интерфейсе loopback и к нему физически не сможет прийти никто кроме 127.0.0.1.
Никакие allow здесь не нужны по факту.
Ответ написан
Комментировать
@pfg21
ex-турист
allow отрабатывается алгоритмами nginx. Ибо этих параметров может быть много и они могут сформировать сложную систему фильтрации.
А порт - да, открывается для всех.
Ответ написан
Комментировать
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
Вам надо, чтобы запросы не доходили до nginx или чего? Прикройте фаерволлом.
Ответ написан
Комментировать
sotvm
@sotvm
Умный поймёт, а дураку и так всё равно.
с других 127.0.0.1:8080 и не может быть доступен))
возможно я что то попутал????
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы