glusterfs 的安全问题?

Ran*_*dra 10 glusterfs

我不太擅长 gluster,因为我昨天才开始使用它。

我有2台服务器。两者都在运行 glusterfs-servers。

从服务器 1:我运行sudo glusterfs peer probe server2并将它添加到集群中。没有人问任何问题。我没有告诉 server2 允许 server1 将它添加到集群中。对我来说没有意义。

这让我很困惑。我的意思是,如果有人将我的 glusterfs 服务器添加到他们的集群中会怎样。好像完全没有安全感。这太疯狂了,我不明白。

Mat*_*oha 8

TL,DR:将服务器添加到集群(称为池)是安全的,因为第 3 方无法自行加入现有集群,需要从内部邀请。但请确保限制哪些客户端可以安装卷并加密连接。


没有人问任何问题。我没有告诉 server2 允许 server1 将它添加到集群中。

我自己也有这个问题,所以我去看了看文档。

创建新集群时,您在一台服务器上启动并使用gluster peer probe OTHER_SERVER. 额外的安全性不是严格要求的,因为您正在添加新的、未初始化的 glusterfs 服务器。(除非你让一个新安装的、未初始化的 gluster 以公共访问权限运行 - 那么你就有麻烦了)。

那么是什么阻止了攻击者加入您现有的集群呢?关键是下面这一段:

建立此池后,只有受信任的成员才能将新服务器探测到池中。新服务器无法探测池,必须从池中探测。(来源

正如文档所说,第 3 方/对手无法加入您的集群,需要从内部邀请它。

请注意,客户端无需在池中即可安装卷。

Gluster 还提供其他安全机制来限制对数据的访问并减轻相关攻击:

  • IP 允许/拒绝音量级别, gluster volume set VOL_NAME auth.allow IP1,IP2
  • TLS - 传输加密以及使用来自证书的身份而不是 IP 地址进行授权(默认情况下未启用且超出此答案的范围,请参阅链接

因此,如果这些卷不打算公开:

  • 在服务器和服务器客户端之间使用加密和经过身份验证的链接(Gluster TLS/IPSec/VPN)
  • 防火墙设置不允许来自外部的任何连接
  • 并使用auth.allowauth.ssl-allow用于 TLS)对音量级别进行更精细的控制。