【问题标题】:How to expose my Elastic Search server to the internet?如何将我的 Elastic Search 服务器公开到 Internet?
【发布时间】:2020-06-02 11:44:10
【问题描述】:

我已经在 VPS Centos 上安装了我的 ElasticSearch (ES) 服务器。我确实测试了服务器内部的 ES,它响应正确。

我的下一步是允许托管在不同网络主机上的我的网站访问其数据内容并将其索引到我的 ES 服务器中。

我的问题是,将 ES 暴露在互联网上的推荐方式是什么,以便我的网站可以访问它来执行索引和搜索?是否有我需要安装的身份验证方法?

【问题讨论】:

    标签: elasticsearch elastic-stack


    【解决方案1】:

    您需要在您的 elasticsearch.yml 文件中包含network.host:0.0.0.0,以便它侦听非环回地址,然后,如果您的应用服务器和 ES 都在同一个 VPC 中,则应用服务器将能够连接到 ES(如果您在安全组中暴露了 9200 端口(如果是 AWS),则提供。

    希望您的应用服务器端口暴露在内部连接到 ES 的互联网上,您不应该将 ES 或 Elasticsearch 的 9200 端口暴露在互联网上。

    如果您想要额外的安全层,您可以启用免费层中包含的 x-pack basic,并且可以使用 elasticsearch.config 中的xpack.security.enabled: true 启用。

    更多信息请参考x-pack features and configuration

    【讨论】:

    • 如果将您的 ES 集群暴露在公共 Internet 上,我怎么强调都不过分,关于启用 XPack 安全性的最后一点是绝对必须!这也是 XPack 安全性最初免费提供的主要原因之一。
    • @Val,同意,无论如何 ES 不应该暴露在互联网上,如果你没有任何选择,那么它应该被 x-pack 屏蔽。谢谢,瓦尔把你的重量放在这上面:)
    • 另一种方式是让应用服务器代理暴露在互联网上,它与 ES 通信(未公开)
    猜你喜欢
    • 2019-05-08
    • 1970-01-01
    • 2016-04-23
    • 2014-04-01
    • 2012-02-04
    • 1970-01-01
    • 2018-04-09
    • 1970-01-01
    • 2020-05-21
    相关资源
    最近更新 更多