我想为一个Web项目设置一个Riak群集。
但是,我想保护此群集,以便只有“我的Web服务器”才能访问Riak群集。基本上,我将有一个或多个Web服务器和4个Riak服务器(在群集中)。
我想使用Shorewall或其他防火墙应用程序来保护Web服务器和Riak群集之间的通信安全,以便其他服务器只能访问我自己的群集。由于Riak在服务器端是完全开放的,因此在将服务器投入生产之前,这是至关重要的。
我认为我将必须:
在每台Riak服务器上安装Shorewall
最初锁定所有端口
在所有Riak服务器上打开端口4369(epmd)和端口8099(切换监听器),以及在我的app.config文件中定义的端口范围
在所有Riak服务器上打开端口8098和8097(对于客户端)
分别限制一台Riak服务器对群集中另一台Riak服务器的IP地址+我的Web服务器的IP地址的访问。对集群中的其他Riak服务器重复以上操作
我可以安装Shorewall,但是我不熟悉如何配置Shorewall来完成上述操作。我将不胜感激。
提前致谢。
最佳答案
我已经涉足了Shorewall,您需要在Shorewall rules file中添加规则才能转发
防火墙后面的Riak服务器的相关端口。但是,由于它是集群,所以说起来容易做起来难。如您所知,您将需要
手动锁定群集上每台服务器上的端口,打开端口以启用Web服务器访问,并记住在服务器重新启动时再次进行此操作,或者
如果您添加Web服务器的更多实例等,则从群集中添加/删除群集。除了复杂性之外,还有很多人为错误的余地
组态。我建议调查一下Ubuntu firewall之类的内容
管理服务,可以使用中央UI自动处理所有端口的关闭/打开。这些服务通常与基本IPtables一起使用
Ubuntu随附的防火墙,因此您不需要诸如Shorewall之类的其他解决方案。
高温超导