Tag: acl

在Docker覆盖networking上的ACL

我有一个相对较大的Docker群,其上运行着数十个微型Web服务。 由于这些服务中只有两个或三个需要外部访问,因此大部分的集装箱间/服务通信都是通过一个覆盖networking进行的。 为了加强平台的安全性,我想在覆盖networking上加上一些基于服务名称的访问控制,以防止容器“串扰”。 似乎没有一个明显的方式来做这件事,并为每个服务链接创build一个新的覆盖networking似乎有点难以pipe理? 我希望完成的是: $ docker network create myoverlay -d overlay $ docker service create –name web1 –net myoverlay apache $ docker service create –name web2 –net myoverlay nginx $ docker service create –name database1 –net myoverlay mysql $ docker service create –name database2 –net myoverlay cassandra web1 -> database1 //allowed web2 -> database2 […]

Docker给自己创build的挂载点赋予奇怪的权限

我正在使用ACL来确保从主机到卷的写访问权限。 我有一个docker-compose.yml ,例如MySQL和MongoDB在Docker卷中有数据目录。 这些卷的背后并不相关。 它甚至发生空的未使用的容器文件夹。 如果卷对的本地文件夹不存在,Docker会创build它并设置一些奇怪的权限。 如果该文件夹已经在那里,权限是正常的如预期。 在项目的根目录中,我设置了ACL: sudo setfacl -R -mu:mri:rwX . sudo setfacl -dR -mu:mri:rwX . 例如docker-compose.yml包含: mongo: image: mongo:3.0 volumes: – ./docker/var/mongo:/data/db 当我启动容器和Docker创buildmongo目录时,它崩溃的权限,我得到这个: $ getfacl docker/var/mongo # file: docker/var/mongo # owner: 999 # group: root user::rwx user:mri:rwx #effective:rx group::rwx #effective:rx mask::rx other::rx default:user::rwx default:user:mri:rwx default:group::rwx default:mask::rwx default:other::rx 在这一点上,我没有写访问了。 如果之前存在文件夹,则不会发生这种情况。 如果我再次运行setfacl命令,我再次访问。 但在我的自动化工作stream程中,这是不可能的,它不会是一个真正的解决scheme。 为什么会发生这种情况,以及如何让Docker在不改变权限的情况下创build这个文件夹?

为什么setfacl不能在docker容器中工作?

我在Docker容器中遇到ACL问题。 如下所示,我在“/ opt / transfer_station / webapp / logs”上为用户“ts”设置了读/写权限。 这适用于文件夹“/ opt / transfer_station / webapp / logs”,但不适用于文件/opt/transfer_station/webapp/logs/debug.log。 为什么它不起作用? [root@lx-ts logs]# setfacl -Rdm u:ts:rw,g:ts:rw /opt/transfer_station/webapp/logs [root@lx-ts logs]# echo $? 0 [root@lx-ts logs]# getfacl /opt/transfer_station/webapp/logs getfacl: Removing leading '/' from absolute path names # file: opt/transfer_station/webapp/logs # owner: apache # group: apache user::rwx group::rx other::rx default:user::rwx default:user:apache:rw- […]

如何在Centos中使用setfacl和Dockerfile创build永久性ACL

我试图设置一个组的权限来访问一个包含不断重新生成的目录和文件的目录。 目录'/ var / lib / mod_tile'由组'mappers'和用户'gis'拥有。 该文件夹的权限是755(user:rwx,group:rx,other:rx) 这个文件夹中的子目录会被频繁的删除和重新创build,我无法控制这些目录的权限,因为它们是由另一个软件生成的。 生成的子目录的权限是755(同上)。 我想创build一个ACL来允许我的组映射器对这些文件夹有写入权限。 我正在Dockerfile中运行以下命令: RUN setfacl -Rm g:mappers:rwx /var/lib/mod_tile RUN setfacl -Rdm g:mappers:rwx /var/lib/mod_tile 这给我的目录和其子目录rwx权限的组映射器。 它使所有当前和新的子目录/文件具有这些权限。 但是,我build立我的形象和运行后 docker run -it 并用检查权限 setfacl /var/lib/mod_tile 访问控制列表已经消失,我正在使用的程序无法写入这些文件夹,当其他用户在组映射器中运行时。 然后我手动运行相同的命令,当我运行 setfacl /var/lib/mod_tile 权限在那里! 这使我相信ACL的每次启动都不会持久 有没有什么办法来保持ACL的,甚至在重新启动?

IBM / secure-gateway-client docker使用–F(acl文件)选项运行

我一直在阅读文档,仍然无法解决如何让IBM / Secure-Gateway-client在docker中使用ACL文件选项运行。 我已经拉客户端docker的形象,并已使用以下语法: bash -c 'nohup docker run ibmcom/secure-gateway-client –F aclfile.txt xxx_stage_ng > tmp/run_sgc.log 2>&1 &' 我在日志中得到的是以下内容: [2015-09-30 11:30:41.764] [ERROR] An exception occurred reading or processing the ACL file, error is Error: ENOENT, no such file or directory 'aclfile.txt' [2015-09-30 11:30:41.764] [WARN] The ACL has been set to DENY ALL until this is fixed. […]