如何在共享主机环境中保护面向Internet的弹性search实现?

(最初问StackOverflow ,并build议我在这里移动它)

我一直在浏览Elastic Search的文档,我是一个粉丝,我想用它来处理我的ASP.NET MVC应用程序的search

然而,这引入了一些有趣的曲折。 如果ASP.NET MVC应用程序位于专用计算机上,那么将Elastic Search实例后台打包并使用TCP传输进行本地连接将非常简单。

但是,我并不是在ASP.NET MVC应用程序的专用机器上,也不是很快就会移动到一台机器上。

这留下了另一台机器上的弹性search(在* NIX世界),我可能会去共享主机那里。

然而,Elastic Search所缺乏的一个最大的缺陷就是它不支持HTTPS和开箱即用的基本身份validation。 如果是这样,那么这个问题就不存在了。 我只是将它托pipe在某个地方,并确保有一个令人难以置信的安全密码和HTTPS启用(可能与自签名证书)。

但事实并非如此。

给出的是,以安全的方式通过Internet公开弹性search的好方法是什么?

请注意,我正在寻找一些希望不需要编写代码来提供我想要的方法(换言之,编写代码)的方法。

您可以在两台机器之间build立SSH隧道 ,并通过它传输数据。 或者你可以使用stunnelbuild立一个SSl隧道。 在这两种情况下,encryption对于两台机器都是透明的,两个应用程序都不会意识到,所以不需要更改代码。

我知道这是一个非常古老的问题,但防火墙规则似乎是要走的路。 我甚至认为,即使在共享的环境中,你应该可以访问防火墙规则。 这是我们走的路。 locking只能从其他受信任的机器访问。