The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"openssh + chroot дубль 2"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"openssh + chroot дубль 2"  
Сообщение от pegas (??) on 17-Фев-09, 12:30 
Установил openssh 5.1p1. Но настроить не получилось чтобы пускала определенного пользователя и выполнялся chroot в определенную директорию.
В конфиг добавил следующие строки:

Subsystem sftp internal-sftp
Match User username
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
ChrootDirectory /home/userhome

При попытке зайти пишет:
"Connection to 1.2.3.4 closed by remote host.
Connection to 1.2.3.4 closed."

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

Может кто с талкивался с настройкой подобных вещей? Буду очень благодарен за любые подсказки.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "openssh + chroot дубль 2"  
Сообщение от angra (??) on 17-Фев-09, 12:51 
     ChrootDirectory
             Specifies a path to chroot(2) to after authentication.  This path, and all its components, must be root-owned directories that are not
             writable by any other user or group.
Могу предположить, что вы не прочитали man дальше первого предложения и не сделали корректный chown/chmod на /home/userhome

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "openssh + chroot дубль 2"  
Сообщение от pegas (??) on 17-Фев-09, 13:27 
>     ChrootDirectory
>            
> Specifies a path to chroot(2) to after authentication.  This
>path, and all its components, must be root-owned directories that are
>not
>            
> writable by any other user or group.
>Могу предположить, что вы не прочитали man дальше первого предложения и не
>сделали корректный chown/chmod на /home/userhome

Да, Вы правы. Слона то я и не заметил. Теперь сделал... коннектится по sftp, а вот по ssh нехочет по прежнему. Как я понимаю это поведение управляется с помощью ForceCommand и Subsystem? Но вот что нужно туда написать?

PS: я сделал
#chmod 755 /home/userhome
#chown -R root:root /home/userhome
#chown -R username:usergroup /home/userhome/*
Это правильно, или же нет?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "openssh + chroot дубль 2"  
Сообщение от angra (??) on 17-Фев-09, 13:59 
Ну прочитайте таки третье и последующие предложения :)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "openssh + chroot дубль 2"  
Сообщение от pegas (??) on 17-Фев-09, 14:26 
>Ну прочитайте таки третье и последующие предложения :)

Чесное слово, нефига не понимаю чего там написано. Я то с этим что Вы мне показали еле разобрался что там написано.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "openssh + chroot дубль 2"  
Сообщение от AlekseyC (ok) on 17-Фев-09, 16:03 
Из мана:
The ChrootDirectory must contain the necessary files and directories to support the users’ session.  For an interactive session this requires at least a shell, typically sh(1), and basic /dev nodes such as null(4), zero(4), stdin(4), stdout(4), stderr(4), arandom(4) and tty(4) devices. For file transfer sessions using “sftp”, no additional configuration of the environment is necessary if the in-process sftp server is used (see Subsystem for details).


SFTP отлично работает в chroot без дополнтельной конфигурации, а вот с SSH прийдется повозиться. Копирование всех необходимых файлов - дело неблагодарное. Если нравится минимализм, то ldd вам в руки и вперед копировать необходимые файлы и библиотеки...

Судя по прошлой теме у Вас Debian. Для создания сhroot дирректории вам поможет пакет cdebootstrap-static. Прочитайте man - там все просто.
Несомненных минусом данного метода является то, что в вашем chroot, будет много лишних файлов, без которых и так бы все работало.
В замен вы получите удобство использования и возможность устанавливать нужные пакеты внутри chroot. Для этого достаточно заchrootится в полученную директорию и установить пакеты, как обычно. Например, вы можете дать своим коиентам доступ по SSH и установить в их chroot пакет mysql-client, mc и все, что пожелаете.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру