LINUX.ORG.RU
решено ФорумAdmin

Ограничить пользователя в своей директории SSH

 , rbash,


0

3

Задача - для мини веб-хостинга - необходимо запретить пользователю видеть файлы (чтение) находящиеся вне его директории /home/user когда он заходит на сервер по SSH, при этом у него должна оставаться возможность использовать всякие программы типа wget и пр.

Знаю про chroot и rbash.

Собственно вопросы которые напрягают:

1. При использовании chroot, все время при добавлении пользователя необходимо менять настройки ssh - не очень удобно.

2. Указал пользователю оболочку rbash - перестал вообще по ssh пускать. Не пойму в чем проблема.

Сервер Ubuntu 12.10.

P.S. До этого юзал Debian, не помню как настроил его, но ничего особенного не надо было делать - пользователь автоматически был заперт в своей директории. А вот было это или я каким-то образом настроил - не помню.

Буду рад помощи.

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

Создаешь группу group-to-chroot, пускаешь туда нужных тебе пользователей, в sshd_config один раз прописываешь:

Subsystem sftp internal-sftp
Match group group-to-chroot
    ChrootDirectory %h
    AllowTCPForwarding no
    X11Forwarding no
    ForceCommand internal-sftp

Важное замечание: владельцем домашней папки chroot-пользователей должен быть рут, иначе не секурно, да и пользователей таких пускать не будет. Внутри их директорий создаешь папки, а там уже можешь делать их владельцами этих субдиректорий.
И ещё, размещай директиву match в конце конфига
Тут только один минус - залогиненные пользователи, насколько помню, не получают шелл, что было указано в вопросе. Попробуй убрать последнюю строку, что выдаст?

leader32
()

Про chroot: придётся внутрь чрута ставить весь софт, который ты хочешь что-бы твои пользователи запускали.

Nao ★★★★★
()

Посмотри rssh.

dada ★★★★★
()

Решил поставить vsftpd. Но пока есть проблемы с его настройкой

Neokortex
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.