The OpenNET Project / Index page

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

Быстрое создание jail-машины во FreeBSD
Нам понадобится первый установочный диск FreeBSD 6.2 и немного свободного времени. 
Предполагается что наша jail-машина будет размещена в директории /var/jail.

Список действий:

1. Создать директорию /var/jail/machine для jail-машины;

2. Смонтировать установочный диск и распаковать базовые файлы в директорию jail-машины:

   # mount /cdrom

для bash:

   # DESTDIR=/var/jail/machine /cdrom/6.2-RELEASE/base/install.sh

для csh:

   # env DESTDIR=/var/jail/machine /cdrom/6.2-RELEASE/base/install.sh

3. Создать пустой файл /var/jail/machine/etc/fstab:

   # touch /var/jail/machine/etc/fstab

4. Создать файл /var/jail/machine/etc/rc.conf со следующим содержанием:

   # Запускаем sshd
   sshd_enable="YES"
   sendmail_enable="NONE"
   syslogd_flags="-ss"
   rpcbind_enable="NO"
   network_interfaces=""

5. Теперь требуется создать непривилегированного пользователя и    изменить
пароль пользователя root.
Входим в каталог jail-машины

   # chroot /var/jail/machine /bin/csh

Создаем пользователя

   # adduser

Меняем пароль пользователя root

   # passwd
   # exit

6. В файл /etc/rc.conf основной системы добавить:

   # Разрешаем запуск jail-машин
   jail_enable="YES"
   # Запрещаем им менять свое имя jail_set_hostname_allow="NO"
   # Перечисляем jail-машины в системе.
   jail_list="machine"

   # Jail-машина "machine"
   # Корневая директория jail_machine_rootdir="/var/jail/machine"
   # Имя jail_machine_hostname="machine.local"
   # IP-адрес jail_machine_ip="192.168.0.10"
   # На какой сетевой интерфейс будет цепляться jail-машина  
   jail_machine_interface="ed0"
   # монтируем файловую систему devfs внутри jail-машины. 
   jail_machine_devfs_enable="YES"
   # Скрипты запуска и останова 
   jail_machine_exec_start="/bin/sh /etc/rc"
   jail_machine_exec_stop="/bin/sh /etc/rc.shutdown"

7. Кроме того требуется все запускаемые сервисы основной системы привязать к его ip-адресам 
(не должны слушаться порты на ip-адресах jail-машин).
Например, в rc.conf:

   # Супер-сервер inetd
   inetd_enable="YES"
   # Слушает порт только на 192.168.0.1
   inetd_flags="-wW -a 192.168.0.1"
   # Syslogd
   syslogd_enable="YES"
   # Не слушать порты
   syslogd_flags="-ss"

8. Запускаем созданную jail-машину:

   # /etc/rc.d/jail start
 
26.12.2007 , Автор: mr-tacitus , Источник: http://mr-tacitus.blogspot.com/2007...
Ключи: freebsd, chroot, jail / Лицензия: CC-BY
Раздел:    Корень / Безопасность / Помещение программ в chroot

Обсуждение [ RSS ]
 
  • 1.1, RPetrov, 15:50, 27/12/2007 [ответить] [смотреть все]
  • +/
    Я бы посоветовал просто make world -DNO_CLEAN DESTDIR=.... Это быстро, при условии, что вы сами собрали свой текущий world, а кроме того и система будет свежая. Таким образом можно быстро наделать нужное кол-во jail'ов.
     
  • 1.2, Аноним, 12:52, 28/12/2007 [ответить] [смотреть все]
  • +/
    Бред какой то.
    man mount_nullfs
     
     
  • 2.4, Князь, 16:26, 28/12/2007 [^] [ответить] [смотреть все]
  • +/
    >Бред какой то.
    >man mount_nullfs

    В таком случае http://mr-tacitus.blogspot.com/2007/12/jail.html :)

     
  • 1.3, reaper, 14:00, 28/12/2007 [ответить] [смотреть все]
  • +/
    это называется быстро? :)

    make -C /usr/ports/sysutils/ezjail
    ezjail-admin install
    ezjail-admin create ...

     
  • 1.5, Николай, 13:34, 04/01/2008 [ответить] [смотреть все]
  • +/
    можно рута на такой джейл ?
    скопирую весь диск себе, мож найду чего интересного, конфиденциального...
     
     
  • 2.7, Князь, 06:20, 11/01/2008 [^] [ответить] [смотреть все]  
  • +/
    >можно рута на такой джейл ?
    >скопирую весь диск себе, мож найду чего интересного, конфиденциального...

    можно, только дальше jail не уползешь

     
  • 1.6, sekrett, 02:45, 11/01/2008 [ответить] [смотреть все]  
  • +/
    Николай, на дырявость какого компонента вы намекаете? nullfs или ezjail?
     
     
  • 2.8, Николай, 10:48, 11/01/2008 [^] [ответить] [смотреть все]  
  • +/
    devfs

      # монтируем файловую систему devfs внутри jail-машины.
      jail_machine_devfs_enable="YES"
    +  jail_machine_devfsruleset='devfsrules_jail'

     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor