NGINX - root-доступ proxy_pass разрешает доступ только для определенного IP - PullRequest
0 голосов
/ 15 апреля 2019

я хочу разрешить трафик только с 10.10.10.94

если я просматриваю

http://IP/api:5006 (с любой машины, кроме разрешения) я получаю отказ в доступе, и он работает как следует

http://IP:5007 я получаю веб-страницу (хотя данные на веб-странице не отображаются, если некоторые графики представлены только с разрешенного хоста)

ПРОБЛЕМА:

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

server {
    listen 80;
    listen [::]:80;
    server_name site.com;
    client_max_body_size 16M;
    return 301 https://$host$request_uri;
}

server {
  listen 443 http2 ssl;
  listen [::]:443 http2 ssl;

  server_name site.com;
  client_max_body_size 16M;
  ssl_certificate /etc/ssl/certs/star.pem;
  ssl_certificate_key /etc/ssl/private/star.key;

  location / {

      allow 10.10.10.94;
      deny 10.10.0.0/16;
      proxy_pass http://127.0.0.1:5007/;
  }
  location /api/ {

       allow 10.10.10.94;
      deny 10.10.0.0/16;
      proxy_pass http://127.0.0.1:5006/;
  }
}

1 Ответ

0 голосов
/ 15 апреля 2019

Попробуйте это место:

  location / {
      allow 10.10.10.94/32;
      deny all;
      proxy_pass http://127.0.0.1:5007/;
  }
  location /api/ {
      allow 10.10.10.94/32;
      deny all;
      proxy_pass http://127.0.0.1:5006/;
  }
...