SFTP — создайте иерархию пользователей для управления доступом

SFTP — создайте иерархию пользователей для управления доступом

Я хотел бы создать два уровня пользователей для ограничения доступа к SFTP: «родительские» пользователи и «дочерние» пользователи.

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

Как это сделать на CentOS 6?

решение1

Поскольку SFTP — это просто FTP через SSH, вы должны иметь возможность сделать это, используя домашние каталоги и группы пользователей. Если вы создали 3 пользователей:

parent
childone
childtwo

Вы можете задать для их домашних каталогов следующую структуру:

/home/parent
/home/parent/childone
/home/parent/childtwo

С разрешениями:

#> chmod -R 771 /home/parent
#> chown parent:testftp /home/parent
#> chown childone:testftp /home/parent/childone
#> chown childtwo:testftp /home/parent/childtwo

Теперь, если parentпользователь состоит в testftpгруппе, а дети — нет, то он parentдолжен иметь возможность читать и записывать файлы в своих домашних каталогах, но дети могут изменять только свои собственные.

Я только что провел небольшое тестирование на своем компьютере, и, похоже, все работает отлично. Дайте мне минуту, и я выложу полные команды для настройки.

Полный вывод команды:

$> sudo -i
#> mkdir -p /home/parent/{childone,childtwo}
#> groupadd testftp
#> useradd -d /home/parent -M -G testftp parent
#> useradd -d /home/parent/childone -M childone
#> useradd -d /home/parent/childtwo -M childtwo
#> chmod -R 771 /home/parent/
#> chown parent:testftp /home/parent
#> chown childone:testftp /home/parent/childone
#> chown childtwo:testftp /home/parent/childtwo

Кажется, мне это подходит!

Связанный контент