/var/run/docker.sock的Docker安全风险是什么?

前端之家收集整理的这篇文章主要介绍了/var/run/docker.sock的Docker安全风险是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

this blog article,我在评论中找到了以下引用:

Ben Firshman

Yes – you’re right I should have pointed out the security issue with the Docker socket. That’s currently the main blocker to this being practical in production and we’re definitely looking for help to make it work better,as you noticed from the to-do list.

虽然我确信这对许多人来说是有道理的,对于我们其他人来说,有人可以用明确的术语来解释这个“安全问题”究竟是什么吗?我认为它指的是:

    volumes:
  - "/var/run/docker.sock:/var/run/docker.sock"

在docker-compose文件中.那是对的吗?如何被利用?这是否有效地禁止了生产使用的这种方法?如果是这样,有解决方法吗?

最佳答案

for the rest of us,could someone explain in clear terminology exactly what this “security issue” is?

docker /var/run/docker.sock的所有者是运行容器的主机的root,其默认组成员身份为docker group.这就是为什么在另一个容器中安装var / run / docker.sock会为您提供root权限,因为现在您可以执行具有docker组成员身份的root用户可以执行的任何操作.

Does this effectively prohibit this approach from Production usage? If so,is there a workaround?

对于解决方法,这些帖子可能会有所帮助:https://integratedcode.us/2016/04/08/user-namespaces-sharing-the-docker-unix-socket/https://integratedcode.us/2016/04/20/sharing-the-docker-unix-socket-with-unprivileged-containers-redux/

退一步,理解你需要挂载var / run / docker.sock的用例并查看是否有其他方法来满足usecase是很有用的.遗憾的是,如果没有问题中的用例描述,很难提供避免安装unix插槽的替代方案.

祝你做正确的事情,祝你好运并感到荣幸!

猜你在找的Docker相关文章