设置共享开发机器

我有一台包含10个用户的服务器机器。 操作系统:Ubuntu 12.04.3 LTS 64位

这些用户是开发人员(主要是Web开发人员:HTML + JS + PHP + MYSQL)

我允许他们通过XRDP和VNC进行远程登录。

现在一切正常但是/ var / www中的问题

这个目录的合适权限是什么,因为它们在它们之间共享一些代码时没有问题,尽管它们不是root用户。 他们都是简单的用户。

我需要知道是否有一种安全的方式让他们共享源代码,同时每个人都有自己的存储库。 我欢迎任何想法。

另一种方法(由于赏金:))

如果您不希望将所有用户保留在同一个webroot中,则可以通过这种方式执行此操作。 您可以将不同的目录作为/ var / www /目录的webroot别名。 假设你有两个用户u1和u2。

我猜你已经安装了apace2如果没有这样做sudo apt-get install apache2

我将目录/ home / u1 / web和/ home / u2 / web设置为用户u1和u2的webroot。

 sudo chmod 775 home/u1/web sudo chmod 775 home/u2/web sudo gedit /etc/apache2/sites-available/default 

为用户u1创建别名(将以下内容添加到文件中):

 Alias /u1 /home/u1/web  Options All AllowOverride All order allow,deny allow from all  

为用户u2创建别名(将以下内容添加到文件中):

 Alias /u2 /home/u2/web  Options All AllowOverride All order allow,deny allow from all  

现在,每个用户都可以通过将Web浏览器指向用户u1的localhost / u1和用户u2的localhost / u2来访问其Web根目录

您将所有这些用户放在同一个GROUP中

 usermod -g {group} {user} 

这样所有用户都拥有相同的权限。 我们一般使用组apache设置(www-data或apache)。

对组中文件或目录的权限的任何更改都将更改它。

通常,/ var / www /中的文件最少可以有664个。 目录775.永远不要将它们中的任何一个放在777上但你可以降低。

你可以这样做:

  1. 在每个用户的/ var / www内创建一个目录
  2. 将每个目录的所有者更改为关联用户,将组更改为www-data组

    sudo chown user1:www-data /var/www/user1

    sudo chown user2:www-data /var/www/user2

  3. 将每个目录的权限更改为750,以便没有用户可以搞砸其他用户的文件,但保留使用www-data组的权限在浏览器中打开其他人的html文件的能力。