Документация по ОС FreeBSD Суббота, 04.05.2024, 03:46
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Apache [58]
DNS [25]
FTP [27]
Mail [74]
Samba [24]
Squid [46]
SSH [23]
VPN [35]
РРР [20]
Net [173]

Главная » Статьи » Сеть » SSH

OpenSSH chroot | FreeBSD 4.x - 5.x
Требования к связке: Обеспечить работу виртуальных пользователей путем отделения их от системы, в которой находится корень ОС, и тем самым обеспечить безопасность ее работы.

Требования к программам и версии:
FreeBSD 4.x 5.x - с установленными портами(Желательно обновленные)
OpenSSH 3.9.0.1 - не всегда последняя версия

Устанавливаем с помощью порта, который есть:Переходим
# /usr/ports/security/openssh-portable

Авторство: Статья написана исключительно из собственного опыта - все что здесь написано используйте на Ваш страх и риск. Никакие потери не восполняются за наш счет.

Приступаем:
Для начала нам нужны patch файлы для достижения нашей цели - забираем их тут, для Вашей версии есть разные патчи - не забываем когда скачиваем!

http://chrootssh.sourceforge.net/download/ берем отсюда файл *.diff

Теперь переходим в каталог
# cd /usr/ports/security/openssh-portable
#fetch http://chrootssh.sourceforge.net/download/osshChroot-3.9p1.diff

и далее я буду писать только комманды и короткое пояснение, дабы не отвлекаться от сути:

# make patch
# ee osshChroot-3.9p1.diff
теперь в самом файле, нужно подправить пути к каталогу.
Выглядет это примерно так -
Код
1
2
3
diff -uNr openssh-3.9p1/session.c openssh-3.9p1-chroot/session.c
--- openssh-3.9p1/session.c   Thu Aug 12 08:40:25 2004
+++ openssh-3.9p1-chroot/session.c   Tue Aug 24 15:44:55 2004

нужно поменять на

Код
1
2
3
diff -uNr work/openssh-3.9p1/session.c work/openssh-3.9p1/session.c
--- work/openssh-3.9p1/session.c   Thu Aug 12 08:40:25 2004
+++ work/openssh-3.9p1/session.c   Tue Aug 24 15:44:55 2004


Как только все пути поменяли, запускаем patch
Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# patch < osshChroot-3.9p1.diff
Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|=========================================================================
|diff -uNr work/openssh-3.9p1/session.c openssh-3.9p1-chroot/session.c
|--- work/openssh-3.9p1/session.c       Thu Aug 12 08:40:25 2004
|+++ work/openssh-3.9p1/session.c       Tue Aug 24 15:44:55 2004
--------------------------
Patching file work/openssh-3.9p1/session.c using Plan A...
Hunk #1 succeeded at 58.
Hunk #2 failed at 1236.
Hunk #3 succeeded at 1454 (offset 169 lines).
1 out of 3 hunks failed--saving rejects to work/openssh-3.9p1/session.c.rej
done

Вот что получилось у меня. Тут второй процесс был сорван - не упешен. Я тоже думал что это плохо, и пошел искать в файле session.c нужную строку. Я нашел ее, только ниже - оказывается что там уже есть такая строка, тоесть уже замененная. Значит все ОК, и работаем дальше.

Теперь:
# make
# make install clean

Все. Порт установлен. Перезодим к настройки пользователей.
Главное - все те кто будет работать в окружении chroot , должны быть "помечены" в файле /etc/master.passwd незатейливым способом.
Где у пользователя директория выглядет
Код
1
/home/user
, теперь должна выглядеть как
Код
1
/home/user/./


Иправляем , тем кому предстоит жить в совем домике.

Теперь, для того чтобы все заработало, нужно дать в /home/user папки с бинарными внутренностями.
Чтобы это дело автоматизировать, берем вот этот файл:
http://rucable.net/doc/chroot_macher.sh

Запускаем его как
Код
1
# ./chroot_macher.sh user /usr/home/user


все. Пытаемся теперь зайти в окружение, используя пока тестовый аккаунт.

Если что то пошло не так, еще раз проверьте, правильно ли у Вас соответствуют каталоги, те что указаны в файле chroot_macher.sh . На версии 5.х замечаются некоторые баги, когда пользователи пытаются редактировать файлы в MC , почему то мы так и не нашли выход.

Спасибо:
1. всем тем то создал ПО, и распространяет его.
2. crash-у и Alan-у за тестирование и доработки.

Дополнения и доработки приветствуются!


Источник: http://www.yakimchuk.ru/index.php?name=Pages&op=page&pid=6
Категория: SSH | Добавил: oleg (18.12.2007)
Просмотров: 1728 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links

Copyright MyCorp © 2024