使用CentOS / WHM设置帮助SVN + SSH权限

时间:2010-03-15 23:57:33

标签: linux svn ssh whm

我会尽力解释我是如何设置这个系统的。

想象一下,生产服务器运行WHM与各种站点。我们将这些网站称为... site1,site2,site2

现在,通过WHM设置,每个站点都有为其定义的用户/组,我们将这些用户/组称为site1,site2,原因很简单。

现在,使用SVN更新这些站点,并通过使用post commit脚本自动更新这些站点(通过apache配置阻止.svn)。

这些网站有两个常规维护者,我们称之为Joe和Bob。 Joe和Bob都通过相应的有限帐户对服务器进行命令行访问。

所以我已经完成了这个简单的操作,设法让SVN与这些“维护者”一起工作,这样当SVN提交发生时,更改会被检出并完美地运行。

这是一个问题,最终是我的问题。用户权限。

通过我对此设置的测试,我只是通过提供777的更新权限来设法使其工作,以便Joe和Bob可以读取和写入每个站点的Webfront目录的访问权限。 / p>

所以,现在如何设置它的一个例子:

Joe和Bob都属于一个名为“Dev”的组。我有master / svn文件夹设置为对该组的读写访问,并且它工作得很好。发布提交触发器,更新站点,然后在Webfront中的每个文件上设置777。

然后我改变了这一点,尝试考虑组权限更新,而不是直接777。

/ home / site1 / public_html中的每个文件夹最初获得一个664的chmod,每个文件夹775

看起来有点像这样

drwxrwxr-x .
drwxrwxr-x ..
drwxrwxr-x site1 site1 my_test_folder
-rw-rw-r-- site1 site1 my_test_file

因此site1是这些文件和文件夹的所有者和组所有者。所以我然后将site1添加到Joe和Bobs辅助组,以便SVN更新将正确地允许访问这些文件。

现在问题在于此。

当我想将文件或文件夹添加到/ home / site1时,比如Bobs_file,它看起来像这样

drwxrwxr-x .
drwxrwxr-x ..
drwxr-xr-x Bob   dev   bobs_folder
drwxrwxr-x site1 site1 my_test_folder
-rw-rw-r-- Bob   dev   bobs_file
-rw-rw-r-- site1 site1 my_test_file

如何使用Bob提供的用户权限集来更改该文件的所有者和组所有者以反映“site1”“site1”。由于Bob属于Dev,我可以使用CHMOd正确设置权限,但看起来CHGRP会抛出操作错误。

现在这已经足够长,以便对我正在努力实现的目标进行概述,只是因为我正在考虑这个屁股,并且有一个更容易解决的问题。这是我的目标

  • 2人更新
  • 根据WHM结构指定的多个用户帐户
  • 尝试将文件和文件夹的主用户/组权限维护到原始用户帐户,而不是更新帐户。
  • 我喜欢SVN + SSH的安全性而不仅仅是SVN。
  • 不想在root上运行所有这些。

我希望这是有道理的,并提前感谢:)

1 个答案:

答案 0 :(得分:0)

尝试:

$ chown -R site1:site1 /home/site1

这将以递归方式更改该目录中的所有文件,使其成为“site1”组中“site1”用户所拥有。