adduser с возможностью чтения / записи только в один каталог

У меня есть CentOS с одним пользователем SSH, который является root.

Как сделать еще одного пользователя для моего веб-разработчика, чтобы он мог просматривать файлы в / var / www / html? Это будет статическая страница, так что и о mysql, и о другом не может быть и речи. Все, что мне нужно, это чтобы пользователь мог просматривать и выводить файлы из / var / www / html

Я попытался добавить пользователя с домашним каталогом как / var / www / html, набрав

# adduser -d /var/www/html webdev

но
1. этот пользователь не смог записать файлы в этот каталог
2. он может просматривать другие каталоги на сервере

2 ответа

Почему бы не настроить джейл? Это ограничит пользователя определенным каталогом при входе в систему. Существует множество руководств о том, как это сделать, поэтому выбирайте сами.

Кроме того, вы можете добавить пользователя в группу, которой принадлежат файлы, или вы можете упаковать файлы, чтобы каждый мог написать им.

Ваша проблема заключается в разрешениях. Есть много способов решить проблему. Однако, поскольку это для целей разработки, проще всего было бы:

  1. Разрешить пользователю загружать файлы в свой домашний каталог (обычно ~/public_html).
  2. Разрешить веб-серверу доступ к этим файлам через доступ к каталогу пользователя.

Если вы хотите что-то с большей изоляцией, я мог бы даже порекомендовать что-то вроде OpenVZ (чрезмерно прославленный chroot), чтобы вместо этого предоставить разработчику свои индивидуальные среды разработки.

PS: Не забудьте ограничить доступ пользователей, используя rssh в качестве пользовательской оболочки. Это ограничивает доступ только к scp/sftp.

Другие вопросы по тегам