【问题标题】:What are recommended design pattern for solr in production with security什么是 solr 在安全生产中的推荐设计模式
【发布时间】:2016-06-02 06:51:50
【问题描述】:
我正在使用 solr 4.10.3。它处于云模式,具有一个分片和三个节点(一个领导者和两个从属)。我必须把它投入生产。我的网站在需要与 solr 通信的 ajax/php 中。我担心安全问题。
- Solr 和 webserver 是否应该在同一个系统上?我应该将它们放在单独的虚拟机上吗?
- 让 solr 直接访问开放的互联网是否很好?如果不是,我应该使用代理吗?
- 如果我必须使用代理,那么创建三个虚拟机好不好,一个包含 web-server,第二个 solr 和第三个代理?
【问题讨论】:
标签:
php
solr
proxy
lucene
network-security
【解决方案1】:
Solr 不适合面向公众 (although some progress has been made),因此我强烈建议将其作为一个整体在 Internet 上不可用,并在您的应用程序中编写一个小型中间件来接收来自客户端应用程序的请求(您在其中进行 AJAX 调用),对其进行验证并将其传递到 Solr 中的正确端点。
这将使您的服务器更难使用您没有想到的其他 Solr 模块(例如文档集群,这可能是资源密集型)的虚假查询使您的服务器过载,并且将关闭对更新、导入或备份端点。
中间件(我猜它会为你用 PHP 编写)只会接受查询,确保它看起来没问题,将其转义并将其传递给 Solr,然后再将结果返回给用户。