В Debian 8 я запускаю apache2 в тюремной среде, используя jailkit и мод userdir. В текущей настройке тюрьмы пользователи могут переходить в другой каталог пользователей, т.е.
/home/jail/home/anotheruser
и просматривать файлы в нем, но можно перемещаться по папкам
Я пробовал помещать пользователей в их домашнюю папку, используя
chmod 0700 /home/jail/home/*
теперь, когда я пытаюсь перейти в другой каталог пользователей, я получаю
Permission denied
Но теперь, когда я перехожу на сайт пользователей, я получаю
You don't have permission to access / on this server.
Он работал до того, как я сделал chmod. Итак, как мне посадить пользователя в тюрьму, но при этом разрешить просмотр его веб-сайтов?
Я пробовал добавить www-данные в группу пользователей
groups test
test : test
usermod -a -G www-data test
groups test
test : test www-data
Но все равно в получении разрешения отказано.
Я не очень понимаю, как настроена ваша текущая среда, но вы, кажется, путаете chroot ("jailkit") и разрешения.
Вы не сказали нам ничего об ОС, на которой это работает, хотя ваши пути и ссылка на jailkit предполагают систему Unix или Linux.
Люди часто воспринимают разрешения как способ предотвращения доступа, но их следует рассматривать как средство для совместного использования доступа определенным образом. Следовательно ...
Многие такие системы создают новую группу для каждого пользователя (и устанавливают ее по умолчанию). Если это не так, то добавить эти группы должно быть просто. Когда у вас есть эти группы и они используются по умолчанию для каждого пользователя, вам просто нужно добавить uid веб-сервера в каждую из групп, затем обновить права доступа к каталогу до drwxr-x --- и доступ к файлам до -rw? r -? --- чтобы разрешить веб-серверу читать файлы, но не другим пользователям. Вы должны соответствующим образом установить umask пользователей. Тем не мение: