Я использую Debian на моем домашнем сервере. Моя цель - создать пользователя с правами на загрузку файлов только в его каталоге (/var/www/user) . Пользователь должен иметь возможность доступа к своему каталогу с помощью SSH, но он не должен видеть родительские каталоги. /var /www /user должен быть его корневым каталогом, и он не должен видеть /var /www. Как я могу ограничить права пользователей, как это?

2 ответа2

2

Вы можете поместить следующую директиву в /etc /ssh /sshd_config:

ChrootDirectory /var/www/%u

Смотрите man sshd_config .

Обратите внимание, что с этим параметром пользователь не сможет войти в интерактивный сеанс, если /var /www /user не содержит полную оболочку (/bin /sh и т.д.). Но они смогут использовать ssh /scp /sftp для передачи файлов в и из этого каталога.

Вышеуказанное будет применяться ко всем пользователям. Чтобы ограничить его только одним пользователем, добавьте Match User user в sshd_config перед ChrootDirectory .

0

Возможно, джейлкит может пригодиться. Это инструмент для настройки среды chroot для пользователя, предоставляющий только очень специфичные исполняемые файлы при ограничении доступа к определенному каталогу и его подкаталогам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .