Назад | Перейти на главную страницу

Настройка прав доступа для нового пользователя

Я хочу добавить нового пользователя на свой сервер CentOS 6 (назовем его Барри). Я создал учетную запись пользователя Barry и добавил его в созданную мной группу под названием webusers, например:

groupadd webusers
useradd -G webusers Barry
passwd Barry

Теперь, когда у меня есть учетная запись пользователя, настроенная с паролем и добавленная в группу, я хочу дать группе разрешение на запись в файл конфигурации nginx, перезапустить nginx и делать все, что им нужно, в / var / www / например, создавать файлы / каталоги и т. д.

Конфигурационный файл nginx находится здесь:

/webservers/nginx/conf/nginx.conf

Чтобы перезапустить nginx, я хочу, чтобы группа веб-пользователей могла выполнить следующую команду:

/etc/init.d/nginx restart

И я хочу дать им разрешение на чтение и запись в этот каталог:

/var/www/

chmod выглядит для меня ужасно запутанным, мне никогда раньше не приходилось его использовать, и я новичок в системном администрировании.

Для файла конфигурации nginx просто сделайте его доступным для записи в группе:

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

Чтобы разрешить группе веб-пользователей перезапустить службу, проще всего сделать это с помощью sudo. Если он не установлен, установите его (от имени пользователя root):

yum install sudo

Затем отредактируйте / etc / sudoers с помощью:

visudo

Добавьте несколько записей, например:

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

Это позволит членам группы веб-пользователей запускать команду sudo service nginx restart.

Для / var / www вам нужно добавить запись группы и добавьте бит setgid в каталог, чтобы новые файлы имели группу веб-пользователей:

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

Вот отличный букварь на разрешениях unix (и используя chmod / chown / etc). Похоже, ты захочешь /var/www должны принадлежать группе веб-пользователей и иметь разрешение g + s. Вы, вероятно, захотите прочитать umask и подумать о том, чтобы эти пользователи использовали umask 002 для этого общего каталога.

/etc/init.d/nginx потребуются права root, так как он захочет привязаться к порту 80, для этого вы должны использовать sudo. Для настройки sudo должно быть множество ресурсов, в том числе справочная страница sudoers.