共计 1996 个字符,预计需要花费 5 分钟才能阅读完成。
本文翻译自 Daniel J Walsh 的一篇开源文章:http://opensource.com/business/14/10/docker-user-rights-fedora
在 Docker-dev 邮件列表,有人问有关描述了如何将用户添加到 Docker 组的 Fedora 文档。用户希望让他的用户做一个 Docker 搜索,试图找到他们可以使用的镜像。
从有关 Fedora 的 docker 安装文档:
授予用户权限的使用 Docker
Fedora 的 19 和 20 随 Docker0.11。如果你还在使用 0.11 版本的包已经更新到 1.0 的 Fedora20,您将需要授予权 Docker 的用户。
docker 命令行工具,通过接触被一群 Docker 拥有的套接字文件 /var/run/docker.sockdocker 守护进程。其中一个必须是该组的成员,以便联系 docker- d 进程。
幸运的是,这个文件是有点错了,你还需要将用户添加到 Docker 组,以便他们使用 Docker 从非 root 帐户。我希望所有的发行有这样的政策。
在 Fedora 和 RHEL 我们对 docker.sock 以下权限:
# ls -l /run/docker.sock
srw-rw—-. 1 root docker 0 Sep 19 12:54
/run/docker.sock
这意味着,只有 Docker 组中的 root 用户或用户可以向此套接字。此外,由于 Docker 运行 asdocker_t,SELinux 的防止全密闭域连接到此 docker.sock。
从 Docker 无授权控制
Docker 目前没有任何授权控制。如果你可以跟 docker 插座或 Docker 监听网络端口上,你可以谈论它,你可以执行所有 Docker 命令。
例如,如果我添加“dwalsh”的 Docker 组我的机器上,我可以执行。
> docker run -ti –rm –privileged –net=host -v /:/host fedora /bin/sh
# chroot /host
在这一点上你,或具有这些权限的任何用户,都有你的系统上完全控制。
将用户添加到该 Docker 组应被视为一样加入:
USERNAME= ALL(ALL)NOPASSWD:ALL
到 / etc/ sudoers 文件。用户运行任何应用程序在他的机器上能够成为 root,即使没有他知道。我相信,一个更好更安全的解决方案是编写脚本,允许用户要允许访问。
cat /usr/bin/dockersearch
#!/bin/sh
docker search $@
然后设置 sudo:
USERNAME ALL=(ALL) NOPASSWD: /usr/bin/dockersearch
我希望最终加入某种授权数据库来 Docker,让管理员可以配置哪些命令,你会允许用户执行,以及容器中,你可能会允许他们开始 / 停止。
首先消除执行 Docker 运行 –privileged 或 Docker 运行 –cap,删除是在正确的方向迈出了一步的能力。但是,如果你看过我的其他职位,你知道,需要更多的工作要做,以使容器中包含。
作者最初发布的 www.projectatomic.io 为“授予用户权限在 Fedora 中使用 Docker。”。
本文翻译自 Daniel J Walsh 的一篇开源文章:http://opensource.com/business/14/10/docker-user-rights-fedora
CentOS 6/ 7 系列安装 Docker http://www.linuxidc.com/Linux/2014-07/104768.htm
Docker 的搭建 Gitlab CI 全过程详解 http://www.linuxidc.com/Linux/2013-12/93537.htm
Docker 安装应用 (CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm
在 Docker 中使用 MySQL http://www.linuxidc.com/Linux/2014-01/95354.htm
在 Ubuntu Trusty 14.04 (LTS) (64-bit) 安装 Docker http://www.linuxidc.com/Linux/2014-10/108184.htm
Docker 安装应用 (CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm
Ubuntu 14.04 安装 Docker http://www.linuxidc.com/linux/2014-08/105656.htm
阿里云 CentOS 6.5 模板上安装 Docker http://www.linuxidc.com/Linux/2014-11/109107.htm
Docker 的详细介绍 :请点这里
Docker 的下载地址 :请点这里