当 root 用户可以访问时,我可以模拟 S3 存储桶关闭吗?

jaj*_*oli 5 root fuse amazon-s3 chattr

我正在尝试为在 Debian 设备上运行的应用程序测试新的网络监控代码。我目前的任务是确保在使用 FUSE 安装外部网络共享(例如 S3 存储桶)并且连接中断时抛出 SNMP 陷阱。

问题是,要使共享无法访问,我显然必须使文件不可写(或使用 iptables 阻止每个可能的 S3 相关 IP),并且如果存储桶旨在由root 用户,并由 root 用户监控。

有没有办法让这个程序以 root 身份运行,认为存储桶坏了?

PS 我不能使用 chattr 制作这些存储桶,因为,afaik,S3 不支持不变性等属性的概念。

hoo*_*enz 3

有很多方法可以模拟发生故障的情况。您已经说过,其中之一是使用 iptables 块规则。

另一种非常简单的方法 - 拔掉网络路由器的插头,以便您的监控软件仍然可以看到主机,但主机无法与 S3(或与此相关的其他任何东西)通信。对我来说,这是最简单的,但在某些情况下可能不合适。

另一种选择是编辑服务器上的主机文件,并为 S3 主机名添加一些虚拟 IP,以便它们解析到错误的位置。即使用未分配给任何东西的IP。因此,来自主机的所有 S3 请求都会尝试到达那里,但无法到达。完成后,只需从主机文件中删除 IP,一切都会恢复正常,无需重新启动。