gpt4 book ai didi

apache - 以没有root权限的用户(可能是Apache的www-data用户)运行docker命令

转载 作者:行者123 更新时间:2023-12-02 20:01:30 28 4
gpt4 key购买 nike

我正在开发一个简单的Flask应用程序(配置有Apache网络服务器),该应用程序提供了用于docker管理的网络界面。我的apache服务器以“www-data”用户身份运行,并且所有API操作都使用相同的服务器。

但是我收到以下“权限被拒绝”错误,
docker 图像
docker run等
因为它不允许“www-data”用户运行上述命令。

您能否为我提供有关使用“www-data”用户进行docker操作的建议。

我不想将“www-data”用户添加到sudoers列表中。

仅将用户添加到docker组中将是一个适当的解决方案?

或者,请为此建议我一个最佳实践解决方案。

谢谢
古鲁·普拉萨德

最佳答案

将Apache告知run your process as root会更容易,更清晰且同样危险。

请记住,如果您完全可以运行任何Docker命令,则可以轻松获得对系统上任何内容的不受限制的根级别访问。例如,如果您的工具确定确实希望www-data出现在主机的sudoers列表中,则它可以

docker run --rm -v /:/host busybox \
sh -c 'echo www-data ALL = (ALL) NOPASSWD: ALL >> /host/etc/sudoers'

根据您的管理工具的用途,它可能为可以访问网页的任何人提供对主机的相等的不 protected 根级访问。即使不是,您也需要非常谨慎地调用Docker(如果用户可以使用任意名称创建目录并从此处运行脚本,则我正在查看的另一个SO答案可能会导致系统root用户, 例如)。

关于apache - 以没有root权限的用户(可能是Apache的www-data用户)运行docker命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53221156/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com