使用Nginx作为代理来防止通过JavaScript客户端在ElasticSearch上创建/更新/删除操作

前端之家收集整理的这篇文章主要介绍了使用Nginx作为代理来防止通过JavaScript客户端在ElasticSearch上创建/更新/删除操作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个本地ElasticSearch服务器,由Nginx公开,可以防止POST,PUT和DELETE请求.这是我的Nginx配置足以防止信息获取之外的操作?你建议改进吗?

  upstream elasticsearch {
      server localhost:9200;
  }

  server {
      listen 7777;

      location / {
        return 403;
        limit_except PUT POST DELETE {
          proxy_pass http://elasticsearch;
        }
        proxy_redirect off;
      }

  }

谢谢.

[UPDATE]

我的配置在deagh的建议之后:

  upstream elasticsearch {
      server localhost:9200;
  }

  server {
      listen 7777;

      location / {
        return 403;
        limit_except PUT POST DELETE {
          proxy_pass http://elasticsearch;
        }
        proxy_redirect off;
      }

      location ~* ^(/_cluster|/_nodes|/_shutdown) {
        return 403;
        break;
      }

  }
最佳答案
您还应该注意与不同弹性体位置的连接

> _cluster
> _nodes
> _shutdown

您可以在documentation =>中找到有关Nginx和elasticsearch的工作(和安全)设置的更多信息. http://www.elasticsearch.org/blog/playing-http-tricks-nginx/

原文链接:https://www.f2er.com/nginx/434428.html

猜你在找的Nginx相关文章