MinIO 禁止展示桶文件列表
侧边栏壁纸
  • 累计撰写 201 篇文章
  • 累计收到 1,441 条评论

MinIO 禁止展示桶文件列表

萧瑟
2025-05-23 / 0 评论 / 9 阅读 / 正在检测是否收录...

MinIO为了放开访问权限,设置了*,但如果直接访问桶的路径时,竟然把桶里的所有文件链接都列出来了,对系统隐私效果十分不友好。

本文以新版和旧版进行总结,如何配置MinIOpolicy来禁止展示桶文件列表。

话外

自从 MinIO 开源协议从 Apache2.0 变更为 AGPLv3 ,新协议具有严重的约束,对商业不友好,按照AGPLv3规定,只要系统部署后接入MinIO服务,具有文件存储或读取行为,不论是否改造源码,不论发布在何处,都需要将整个产品源码开源。

若需要使用minio开源版则请下载部署Apache2.0的最后一个版本:minio-RELEASE.2021-04-22T15-44-28Z

本文以此版本为分界线来配置桶禁止展示文件列表;

新版MinIO配置

新版自带了功能比较全的配置页,设置禁止展示桶文件列表特别简单,直接设置桶的Access Policy为自定义就好。

新版配置1

登录控制台,点击 Buckets ,找到要设置的桶,点击进入,点击Access Policy下的选项,选择为 Custom

新版配置2

Action 下的 s3:ListBucket 删除即可。

新版配置3

旧版MinIO配置

新版配置4

旧版控制台只有基础的文件管理,设置了 public ,设置的 policy 如下图,就可以直接访问该桶下面所有的文件资源,但访问根目录则会出现所有文件列表。

新版配置5

禁止文件展示文件列表,则需要下载 MinIOmc 客户端。

wget https://dl.minio.org.cn/client/mc/release/linux-amd64/archive/mc.RELEASE.2021-04-22T17-40-00Z

mv mc.RELEASE.2021-04-22T17-40-00Z mc
chmod +x mc

赋予文件权限后,配置MinIO登录

// 登录minio
./mc config host add minio http://127.0.0.1:9000 用户名 密码 
// 检查是否连接成功
./mc config host list

查看当前桶具有什么权限,执行以下命令

./mc policy get-json minio/mpb

该命令会返回一个json内容,将该内容复制出来,新建一个 new_policy.json 文件,并将内容复制进去,然后保存文件。

修改 new_policy.json 文件,将 将 Action 下的 s3:ListBucket 删除后 保存。

执行以下命令,修改桶的 policy

./mc policy set-json new_policy.json minio/mpb

然后我们再访问桶目录,就不在展示文件列表了。

评论 (0)

取消