如何只允许本地请求进行Elasticsearch?所以命令像:
curl -XGET 'http://localhost:9200/twitter/_settings'
只能在localhost上运行,并要求类似:
curl -XGET 'http://mydomain.com:9200/twitter/_settings'
会被拒绝?
因为从我看来,elasticsearch默认情况下允许它。
编辑:
根据http://www.elasticsearch.org/guide/reference/modules/network.html, 您可以管理bind_host参数以允许主机。默认情况下,它设置为anyLocalAddress
bind_host
anyLocalAddress
对于v2.0.0之前的elasticsearch,如果要让http传输和内部elasticsearch传输都只在本地主机上侦听,只需在elasticsearch.yml文件中添加以下行即可。
elasticsearch.yml
network.host: "127.0.0.1"
如果只希望http传输在localhost上侦听,请添加以下行。
http.host: "127.0.0.1"
从v2.0开始,elasticsearch默认只监听localhost。因此,不需要其他配置。