我构建了一个带有搜索框的简单Web界面,用户可以在其中键入quires。但是我想阻止用户直接查看或访问ES侦听的端口9200,因此没有用户可以在不通过接口的情况下从ES检索信息,也不能通过接口以任何方式修改索引。现在当我键入localhost:9200或127.0.0.1:9200时,我可以看到整个ES索引,例如http://localhost:9200/_cat/indices?v。有关如何做的任何建议吗?
答案 0 :(得分:0)
如果其他用户有权访问localhost,则唯一仍然是使用Shield操作,ES应用程序用于保护群集。
但是如果您可以限制对ES的访问不是来自localhost,则可以仅将ES绑定到localhost或使用防火墙限制对端口9200的访问:
/etc/elasticsearch/elasticsearch.yml
中的:
network.bind_host: 127.0.0.1
OR
iptables -A INPUT -s !127.0.0.1 -m tcp --dport 9200 -j DROP