Страница 1 из 1

named в jail'e

Добавлено: 2013-02-28 1:07:37
alc99vol
Поднял несколько клеток, в одной из них хотел запустить named. Столкнулся с тем, что из jail'a named не может примонтировать файлы устройств в chroot каталог ("devfs cannot be mounted from within a jail. Thus a chrooted named cannot be run from within a jail"). Сейчас вижу несколько путей решения:

1. Не запускать named в chroot-окружении (он вроде как и так в клетке). Мучают подозрения что это не очень безопасно и желание всё-таки запустить в chroot чисто из спортивного интереса.

2. mknod. нашел вот эту ветку: http://forum.lissyara.su/viewtopic.php?f=8&t=21012 и там проблема решилась mknod'ом. Но тут возникли сложности. Во-первых, man mknod гласит что mknod utility is deprecated, что наводит на мысль что есть какое-то другое более хорошее решение. Плюс почему-то очень мало нашлось информации о том, как mknod использовать, а точнее,лично я так и не разобрался как определить старший и младший номера устройств. Для named'a вроде как нужны null и random, по ссылке выше использовали такие команды:

Код: Выделить всё

# mknod /chroot/named/dev/null c 0 22 bind:bind
# mknod /chroot/named/dev/random c 0 28 bind:bind
у меня в каталоге /dev у null показывается 0 и 21, у random - 0 и 33. какие номера устройств использовать и как это понять? и вообще, надо ли пользовать mknod?

3. заглянул в файл /etc/rc.d/named в надежде найти там не-deprecated способ монтирования устройств, там нашел строчки:

Код: Выделить всё

	if [ `${SYSCTL_N} security.jail.jailed` -eq 0 ]; then
		umount ${named_chrootdir}/dev 2>/dev/null
		devfs_domount ${named_chrootdir}/dev devfsrules_hide_all
		devfs -m ${named_chrootdir}/dev rule apply path null unhide
		devfs -m ${named_chrootdir}/dev rule apply path random unhide
	else
                      ******
	fi
тут не понял что происходит в строчках umount ${named_chrootdir}/dev 2>/dev/null и devfs_domount ${named_chrootdir}/dev devfsrules_hide_all и, также, почитав man devfs не очень понял, куда лучше прописать этот вызов, чтобы устройства монтировались до старта клеток.

Re: named в jail'e

Добавлено: 2013-02-28 7:27:18
vadim64
покажите как вы клетки делаете?

Re: named в jail'e

Добавлено: 2013-02-28 20:12:37
alc99vol
вначале

Код: Выделить всё

# make installworld DESTDIR=/var/jail/jail_netsrv
# make distribution DESTDIR=/var/jail/jail_netsrv
...(также для 2х остальных клеток)
далее, touch /etc/fstab в кажой клетке,
затем в etc/rc.conf добавил:

Код: Выделить всё

ifconfig_vr0="192.168.1.1/24"
ifconfig_vr0_alias0="192.168.1.2/32"
ifconfig_vr0_alias1="192.168.1.3/32"
ifconfig_vr0_alias2="192.168.1.4/32"
ifconfig_vr0_alias3="192.168.1.5/32"
ifconfig_vr0_alias4="192.168.1.6/32"
ifconfig_vr0_alias5="192.168.1.7/32"
ifconfig_vr0_alias6="192.168.1.8/32"
jail_enable="YES"
jail_list="jail_netsrv jail_web1 jail_dev1"

jail_jail_netsrv_rootdir="/var/jail/jail_netsrv"
jail_jail_netsrv_hostname="netsrv.iok1"
jail_jail_netsrv_ip="192.168.1.2"
jail_jail_netsrv_devfs_enable="YES"
jail_jail_netsrv_defs_ruleset="devfsrules_jail"

jail_jail_web1_rootdir="/var/jail/jail_web1"
jail_jail_web1_hostname="web1.iok1"
jail_jail_web1_ip="192.168.1.3"
jail_jail_web1_devfs_enable="YES"
jail_jail_web1_defs_ruleset="devfsrules_jail"

jail_jail_dev1_rootdir="/var/jail/jail_dev1"
jail_jail_dev1_hostname="dev1.iok1"
jail_jail_dev1_ip="192.168.1.4"
jail_jail_web1_devfs_enable="YES"
jail_jail_web1_defs_ruleset="devfsrules_jail"
вроде всё

Re: named в jail'e

Добавлено: 2013-03-01 6:41:19
vadim64
а что говорит бинд, когда в клетке запускаете в чруте?

Re: named в jail'e

Добавлено: 2013-03-01 12:12:10
rayder

Код: Выделить всё

/etc/rc.d/named: ERROR: named chroot: devfs cannot be mounted from within a jail. Thus a chrooted named cannot be run from within a jail. To run named without chrooting it, set named_chrootdir="" in /etc/rc.conf.
Вообще-то вот полное сообщение от намеда. Соб-но там он и говорит как это лечится

Re: named в jail'e

Добавлено: 2013-03-03 12:06:37
alc99vol
ну так про то, что можно без chroot'a запустить мне сразу было понятно, только вопрос в другом - насколько это может быть плохо? chroot, насколько я понимаю, накладывает более жесткие ограничения нежели jail (без chroot'a), или я не прав? + всё-таки интересно, как и чем создать файлы устройств?

Re: named в jail'e

Добавлено: 2013-03-04 13:38:31
suspender
Подмаунтируй devfs куда надо до старта jail.

Re: named в jail'e

Добавлено: 2013-03-04 13:42:31
suspender
Ну в смысле не до старта jail а просто из хостовой системы. И попробуй стартануть named в клетке после этого.

Re: named в jail'e

Добавлено: 2013-03-04 14:11:54
vadim64
помоему уже стоит спрсоить ТС: а ваша задача оправдывает запуск бинда в клетке и в чруте? может обсудим это?

Re: named в jail'e

Добавлено: 2013-03-04 14:23:44
rayder
suspender писал(а):Ну в смысле не до старта jail а просто из хостовой системы. И попробуй стартануть named в клетке после этого.
тогда намед будет ругаться при stop-e что не может отмаунтить devfs(или что-то в этом духе).

А по сути да, jail сам по себе уже chroot, стоит ли chroot-ить named еще раз?
я не параноик, я не chroot-ю намед в джейле. :)

Re: named в jail'e

Добавлено: 2013-03-04 15:38:03
suspender
Да и хрен с ним - пускай ругается :)
Ну или rc.d скрипт подправить.

Хотя согласен с тем, что чрутить неймед в клетке это нафег не надо.

Re: named в jail'e

Добавлено: 2013-03-04 15:48:43
vadim64
я в январе одну контору после одного админа переделывал. так у него были
1. на KVM крутилась фряха, в которой была клетка, в которой работала горбылина _http://checkcfg.narod.ru/
2. в соседнем KVM госте сидел дебиан, у которого в vz сидел веб-сервер с зеркалом сайта

Re: named в jail'e

Добавлено: 2013-03-10 13:21:48
alc99vol
suspender:
про подмонтировать devfs - опишите, пожалуйста, это подробнее - как примонтировать devfs, только не целиком, а только нужные файлы? как раз про это же и спрашивал, п.3 моего первого вопроса.
vadim64 и все, кто говорят что chroot не нужен:
я как раз таки и спрашивал мнения - стоит заморачиваться с chroot'ом либо это уже слишком параноидально. только хотелось бы какие-нибудь аргументы услышать.

Re: named в jail'e

Добавлено: 2013-03-10 18:59:18
Shuba
Тюрьма в тюрьме... Лично я смысла не вижу. Если уж сильно параноик - то вынеси данный сервак в DMZ.