我有一个运行在我的服务器上的Elasticsearch,它默认运行在端口9200上,链接是公共的,意味着任何人都可以在任何地方插入,更新或删除任何东西。我如何使它像phpMyadmin一样安全,只能在我的代码的帮助下访问,而不是直接从浏览器或邮递员访问。如何保护Elasticsearch
2
A
回答
4
Elasticsearch不执行身份验证或授权,将其作为开发人员的练习。我见过的两种流行方式是:
- 设置您自己的代理(Nginx/HAProxy)弹性搜索 - 这种方式您可以完全控制。您也可以使用Elasticsearch-码头插件有码头层级验证
- 盾 - 如果预算允许使用盾是从Elasticsearch付费产品 - https://www.elastic.co/products/shield
,这取决于你是谁揭露这 - 你可能要取消这些动态脚本某些事情,节流对于DoS攻击等
1
可以使用Elasticsearch基本身份验证插件 - https://github.com/Asquera/elasticsearch-http-basic
自述有对如何设置它是一个好主意。
如果您正在使用Kibana3作为一个前端到elasticsearch,您可以使用https://github.com/fangli/kibana-authentication-proxy
0
我已经启用,我的Elasticsearch和Kibana之间坐镇配置到我的仪表板和图表授权访问一个相对简单的Nginx代理将其固定。
在这里看看我的帖子:https://udaysagars.wordpress.com/2016/04/04/how-i-configured-authorized-access-to-kibana-dashboards/
此外,您还可以查看我的应用程序,使用这种方法在这里:http://udaysagar2177.github.io/ec2/twitter-analytics.html
相关问题
- 1. 保护AWS Elasticsearch最佳实践
- 2. 如何保护API
- 3. 如何保护JsonResult?
- 4. 如何保护熵?
- 5. 如何保护connectionString
- 6. 如何保护Membase?
- 7. 如何保护Cookie?
- 8. 如何保护json
- 9. 如何保护localStorage?
- 10. 如何保护WebFonts
- 11. 如何保护database.yml?
- 12. 如何保护文件
- 13. 如何保护SonarQube 5.2?
- 14. CSRF保护如何工作?
- 15. 如何保护上的Symfony2
- 16. PDF保护如何工作?
- 17. 如何保护Kryonet(SSLSocketChannel)
- 18. 如何保护webhook身份
- 19. 如何保护wcf服务
- 20. keytool如何保护密钥?
- 21. 我该如何保护hbase?
- 22. 如何保护代码?
- 23. 如何保护OData服务?
- 24. swift3 - 如何保护密钥
- 25. Angular2如何保护内容
- 26. 如何保护writeprocessmemory进程?
- 27. 如何保护inputfield用PHP
- 28. 如何保护htdocs文件
- 29. 如何保护phpMyAdmin的
- 30. node.js如何保护文件?
是否有任何教程或脚本中使用,我可以参考? – Ironman
考虑 - 你有*理由*直接暴露Elasticsearch集群吗?你需要揭露Elasticsearch的哪些功能,并向谁提供?在最终用户和Elasticsearch之间放置自己的构建服务是一种常见方法。限制对Elasticsearch(防火墙,仅限本地主机等)的访问,以便只有您的服务可以与其进行交互,然后让您的服务控制安全。 – Snixtor