如何为Ubuntu 9.10上/ var / www中的多个站点的多个用户设置权限结构?

前端之家收集整理的这篇文章主要介绍了如何为Ubuntu 9.10上/ var / www中的多个站点的多个用户设置权限结构?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在设置一个ubuntu服务器,它有3个或4个VirtualHosts,我希望用户可以使用它们(添加文件,编辑旧文件等).我目前计划将站点存储在/ var / www中,但不会反对移动它.

我知道如何添加新用户,我知道如何添加新组.我不确定处理用户只能编辑某些网站的最佳方法.我在这里阅读了in this question的答案,所以我想我可以设置一个组并将用户添加到该组,但是他们都拥有基本相同的权限.我是否只需要为每个用户分配特定权限?或者有更好的方法来处理这个问题吗?

补充:我还应该注意,我将让每个用户通过SSH / sFTP登录.用户永远不需要在服务器上执行任何其他操作.

您应该为每个网站使用一个组.并使所有需要写访问权限的用户成为相应组的成员.
groupadd site1_com
mkdir /var/www/www.site1.com
chgrp site1_com /var/www/www.site1.com
find /var/www/www.site1.com -type d -print0|xargs -0 chmod g=rwxs
chmod -R g+rw /var/www/www.site1.com
usermod -aG site1_com user1

现在,每次用户在/var/www/www.site1.com文件夹下创建文件时,他们都应该使用umask 0002(在〜/ .bashrc中或在部署脚本中),或者他们应该设置读取组的权限写访问chmod -R g rw /var/www/www.site1.com 2> / dev / null.

设置权限的另一个解决方案是使用dnotify.使用以下内容创建/usr/local/sbin/dnotify_handler-reset_perms.sh脚本:

#! /bin/sh
CHANGED_FOLDER=$1
find $CHANGED_FOLDER -maxdepth 1 -mmin 0 -not -perm -g+w -exec chmod g+w {} \;

添加到/etc/rc.local:

dnotify --recursive /var/www/www.site1.com --create --execute --background /usr/local/sbin/dnotify_handler-reset_perms.sh

猜你在找的Ubuntu相关文章