为新用户设置用户权限

我想添加一个新用户到我的CentOS 6服务器(让我们称他为Barry)。 我已经创build了用户帐户Barry,并将他添加到我创build的名为webusers的中,如下所示:

groupadd webusers useradd -G webusers Barry passwd Barry 

现在我有一个用密码设置的用户帐户,并添加到一个组中,我想给组写权限到nginxconfiguration文件,重新启动nginx,并做任何他们需要在/ var / www /像创build文件/目录等

nginxconfiguration文件位于这里:

 /webservers/nginx/conf/nginx.conf 

要重新启动nginx,我希望webusers组能够运行以下命令:

 /etc/init.d/nginx restart 

我想给他们读写这个目录的权限:

 /var/www/ 

chmod看起来非常令人困惑,我从来没有使用它,我有点新的系统pipe理。

对于nginx conf文件,只需将其设为可写:

 chgrp webusers /webservers/nginx/conf/nginx.conf chmod 664 /webservers/nginx/conf/nginx.conf 

要允许web用户组重新启动服务,使用sudo执行此操作将是最简单的。 如果未安装,请以root身份安装:

 yum install sudo 

然后编辑/ etc / sudoers:

 visudo 

添加一些条目,如:

 Cmnd_Alias NGINX=/sbin/service nginx restart %webusers ALL = NGINX 

这将允许webusers组的成员运行命令sudo service nginx restart

对于/ var / www,您需要添加组写入并将setgid位添加到目录以确保新文件具有组webusers:

 chgrp -R webusers /var/www chmod 2775 /var/www 

这是 unix权限的一个很好的入门 (和使用chmod / chown / etc)。 这听起来像你想要/var/www被webusers组和拥有g + s权限。 你可能会想读取umask,并考虑让这些用户使用umask 002作为这个共享目录。

/etc/init.d/nginx将要求root权限,因为它将要绑定到端口80,因为你会使用sudo。 应该有大量的资源用于设置sudo,包括sudoers manpage。