3

我想为一个 Web 项目设置一个 Riak 集群。

但是,我想保护这个集群,以便只有我的 Web 服务器可以访问 Riak 集群。基本上,我将拥有一个或多个 Web 服务器和 4 个 Riak 服务器(在一个集群中)。

我想使用 Shorewall 或其他防火墙应用程序来保护 Web 服务器和 Riak 集群之间的通信,这样除了我自己的服务器之外,没有其他服务器可以访问集群。由于 Riak 在服务器端是完全开放的,因此在我将服务器投入生产之前这是必不可少的。

我想我将不得不:

  1. 在每个 Riak 服务器上安装 Shorewall
  2. 最初锁定所有端口
  3. 在所有 Riak 服务器上打开端口 4369 (epmd) 和端口 8099 (handoff listener) + 我的 app.config 文件中定义的端口范围
  4. 在所有 Riak 服务器上打开端口 8098 和 8097(用于客户端)
  5. 单独限制一台 Riak 服务器对集群中其他 Riak 服务器的 IP 地址 + 我的 Web 服务器的 IP 地址的访问。对集群中的其他 Riak 服务器重复此操作

我可以安装 Shorewall,但我不熟悉如何配置 Shorewall 来执行上述操作。我将不胜感激。

提前致谢。

4

1 回答 1

0

我已经涉足过 Shorewall,您需要在Shorewall 规则文件中添加规则,以将相关端口转发到防火墙后面的 Riak 服务器。然而,因为它是一个集群,所以说起来容易做起来难。如您所知,您将需要手动锁定集群上每台服务器上的端口,打开端口以启用 Web 服务器访问,并记住在服务器重新启动或从集群中添加/删除时再次执行此操作(如果添加) Web 服务器的更多实例等。除了配置的复杂性之外,还有很多人为错误的空间。我建议研究一下Ubuntu 防火墙之类的东西 管理服务,它可以使用中央 UI 自动处理所有端口的关闭/打开。这些服务通常与 Ubuntu 附带的基本 IPtables 防火墙一起使用,因此您不需要像 Shorewall 这样的额外解决方案。高温高压

于 2012-08-31T15:22:20.173 回答