![使用 sudoers,我如何允许用户更改其主目录中的文件/文件夹组?](https://linux22.com/image/804118/%E4%BD%BF%E7%94%A8%20sudoers%EF%BC%8C%E6%88%91%E5%A6%82%E4%BD%95%E5%85%81%E8%AE%B8%E7%94%A8%E6%88%B7%E6%9B%B4%E6%94%B9%E5%85%B6%E4%B8%BB%E7%9B%AE%E5%BD%95%E4%B8%AD%E7%9A%84%E6%96%87%E4%BB%B6%2F%E6%96%87%E4%BB%B6%E5%A4%B9%E7%BB%84%EF%BC%9F.png)
我有一个 Web 服务器,Apache 以 www-data 的形式运行。使用 chef 设置用户,并将他们的一些文件/文件夹权限设置为组:www-data,例如上传文件夹。
部署通过 Capistrano 使用用户帐户完成。如果在部署期间,Capistrano 还可以将文件/文件夹组更改为 www-data,那将很有用。
我该如何配置它,同时保持安全性?我正在考虑在 sudoers 文件中添加一个条目,允许<user>
执行chgrp www-data /home/<user>/*
,同时确保命令不包含..
。
答案1
最好编写一个脚本并在 sudoers 中启用它。如果您的用户只需要在他们的主目录中对 * 运行它,那么可以像下面这样简单。它利用了 SUDO_USER 环境变量,您可以在此处找到更多信息:http://www.sudo.ws/sudo/sudo.man.html#environment
chgrp www-data /home/`echo $SUDO_USER`/*
我还没有测试过这个但它原则上应该可行。