У меня есть игровой сервер, и у меня есть несколько человек, которым я хочу предоставить доступ к серверу, чтобы они помогли развиваться. Я пытаюсь предоставить им доступ только к этим каталогам
/var/www/Update
/root/gamed/config
Каждый пользователь будет помещен в группу под названием devs
с домашним каталогом в /home/username
и в sshd_config
Для этой группы у меня есть следующее
Match group devs
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
Я пытался создать символическую ссылку на /var/www/Update
, но когда я вошел в систему как пользователь под devs
группе это не сработало.
Вы можете попробовать смонтировать папку как BIND в домашних каталогах пользователей.
Для пользователя foo:
# mkdir -p /home/foo/Update /home/foo/GameConfig
# mount --bind /var/www/Update/ /home/foo/Update
# mount --bind /root/gamed/config /home/foo/GameConfig
И в вашем / etc / fstab вы можете добавить
/var/www/Update /home/foo/Update bind defaults,bind 0 0
/root/gamed/config /home/foo/GameConfig bind defaults,bind 0 0
монтировать при загрузке.
Они должны быть более гибкими, чем символические ссылки, особенно при использовании chroot. Просто убедитесь, что у вас есть права доступа. Конечно, вам нужно будет сделать это один раз для каждого пользователя.
Ссылки:
http://docs.1h.com/Bind_mounts
https://fermilinux.fnal.gov/documentation/tips/mount-bind-chroot