什么是有安全性的生产中solr的推荐设计模式

时间:2016-06-02 06:51:51

标签: php solr proxy lucene network-security

我正在使用solr 4.10.3。它处于云模式,具有一个分片和三个节点(一个领导者和两个从属节点)。我必须将它投入生产。我的网站是在ajax / php中,需要与solr通信。我担心安全问题。

  1. Solr和网络服务器应该在同一系统上吗?我应该将它们放在单独的虚拟机上吗?
  2. 让solr直接访问开放互联网是否合适?如果不是我应该使用代理吗?
  3. 如果我必须使用代理,那么创建三个虚拟机是好的吗,一个包含web服务器,第二个solr和第三个代理?

1 个答案:

答案 0 :(得分:2)

Solr不适合面向公众(although some progress has been made),因此我强烈建议将其作为一个整体用于互联网,并在您的应用程序中编写一个小型中间件来接收来自客户端应用程序(进行AJAX调用的地方),验证它并将其传递给Solr中的正确端点。

这将使您的服务器过载更加困难,因为伪造的查询使用了您没有想到的Solr的其他模块(例如文档群集,这可能是非常耗费资源的),并且会关闭对服务器的任何访问权限。更新,导入或备份端点。

中间件(我想用你的PHP编写)只会接受查询,确保看起来没问题,将其转发并将其传递给Solr,然后再将结果返回给用户。