Документация по ОС FreeBSD
Четверг, 06.11.2025, 21:26
Главная
Регистрация
Вход
Приветствую Вас
Гость
|
RSS
Меню сайта
Главная страница
Новости в мире Unix
NEW
Каталог файлов
NEW
Установка и настройка
Ports & Packages
cvs
Безопасность
Работа с железом
X Window
Multimedia
Man pages
Net
Apache
DNS
FTP
Mail
Samba
Squid
SSH
VPN
РРР
Shell
IPFW
Tips'n'tricks
RFC
Книги по FreeBSD
Темы экзамена BSDA
Гостевая книга
Форум на bsdportal.ru
Каталог сайтов
Самый свежий софт
Каталог ссылок
Категории каталога
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)
Просмотров:
1797
| Рейтинг:
0.0
/
0
|
- Оценить -
Отлично
Хорошо
Неплохо
Плохо
Ужасно
Всего комментариев:
0
Добавлять комментарии могут только зарегистрированные пользователи.
[
Регистрация
|
Вход
]
Форма входа
Друзья сайта
Google+
Copyright MyCorp © 2025