URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 38948
[ Назад ]

Исходное сообщение
"DNS работает но ругается. Что с этим делать?"

Отправлено snirr , 29-Дек-03 21:11 
Уважаемые коллеги в который раз обращаюсь к вам за помощью.

Поставил я на FreeBSD 4.7 Bind версии 8.3.7 в Chroot окружении, все как написано в http://www.freebsd.org.ru/how-to/dns/securing-bind.html все по статье. Создал файлы зон…. Запустил. Вроде работает (то есть указав его в качестве default в сетевых настройках я хожу в инет)
Задача стоит такая:
1 Сделать конторский DNS (slave), обслуживающий всю мою сетку
2. Прописать 3 домена
3. поднять «дома» почтовый сервант на 3 домена.

Теперь возникло несколько проблем:
1. постоянно в логе вываливается такое сообщение

28-Dec-2003 21:15:58.057 default: can't exec /libexec/named-xfer: No such file or directory

понятно, что на самом деле исполняемый файл есть, и лежит от там где ему и положено.
То есть в /sanbox/named/usr/libexec

2. Еще в логах вылезает такой сообщение cannot redefine zone
ниже сам лог:

29-Dec-2003 20:02:26.133 load: hint zone "" (IN) loaded (serial 0)
29-Dec-2003 20:02:26.134 load: master zone "0.0.127.IN-ADDR.ARPA" (IN) loaded (serial 2003211201)
29-Dec-2003 20:02:26.135 load: slave zone "ДОМЕН1.ru" (IN) loaded (serial 2003241202)
29-Dec-2003 20:02:26.135 load: slave zone "16.16.217.in-addr.arpa" (IN) loaded (serial 2003221202)
29-Dec-2003 20:02:26.136 load: slave zone " ДОМЕН2" (IN) loaded (serial 2003221202)
29-Dec-2003 20:02:26.136 parser: /etc/named.conf:86: cannot redefine zone '16.16.217.in-addr.arpa' class IN
29-Dec-2003 20:02:26.137 load: slave zone " ДОМЕН3" (IN) loaded (serial 2003221201)
29-Dec-2003 20:02:26.138 parser: /etc/named.conf:100: cannot redefine zone '16.16.217.in-addr.arpa' class IN
29-Dec-2003 20:02:26.140 default: listening on [212.57.120.166].53 (rl0)
29-Dec-2003 20:02:26.140 default: listening on [10.0.0.1].53 (rl1)
29-Dec-2003 20:02:26.140 default: listening on [127.0.0.1].53 (lo0)
29-Dec-2003 20:02:26.140 default: Forwarding source address is [0.0.0.0].53
29-Dec-2003 20:02:26.145 default: Ready to answer queries.

Просветите меня что сие все значит и как с этим бороться

named.conf и файлы зон выложу по первому же требованию :-))


Содержание

Сообщения в этом обсуждении
"DNS работает но ругается. Что с этим делать?"
Отправлено ipmanyak , 30-Дек-03 07:19 
>Уважаемые коллеги в который раз обращаюсь к вам за помощью.
>
>Поставил я на FreeBSD 4.7 Bind версии 8.3.7 в Chroot окружении, все
>как написано в http://www.freebsd.org.ru/how-to/dns/securing-bind.html все по статье. Создал файлы зон┘. Запустил.
>Вроде работает (то есть указав его в качестве default в сетевых
>настройках я хожу в инет)
>Задача стоит такая:
>1 Сделать конторский DNS (slave), обслуживающий всю мою сетку
>2. Прописать 3 домена
>3. поднять ╚дома╩ почтовый сервант на 3 домена.
>
>Теперь возникло несколько проблем:
>1. постоянно в логе вываливается такое сообщение
>
>28-Dec-2003 21:15:58.057 default: can't exec /libexec/named-xfer: No such file or directory
>
>понятно, что на самом деле исполняемый файл есть, и лежит от там
>где ему и положено.
>То есть в /sanbox/named/usr/libexec
>
>2. Еще в логах вылезает такой сообщение cannot redefine zone
>ниже сам лог:
>
>29-Dec-2003 20:02:26.133 load: hint zone "" (IN) loaded (serial 0)
>29-Dec-2003 20:02:26.134 load: master zone "0.0.127.IN-ADDR.ARPA" (IN) loaded (serial 2003211201)
>29-Dec-2003 20:02:26.135 load: slave zone "ДОМЕН1.ru" (IN) loaded (serial 2003241202)
>29-Dec-2003 20:02:26.135 load: slave zone "16.16.217.in-addr.arpa" (IN) loaded (serial 2003221202)
>29-Dec-2003 20:02:26.136 load: slave zone " ДОМЕН2" (IN) loaded (serial 2003221202)
>29-Dec-2003 20:02:26.136 parser: /etc/named.conf:86: cannot redefine zone '16.16.217.in-addr.arpa' class IN
>29-Dec-2003 20:02:26.137 load: slave zone " ДОМЕН3" (IN) loaded (serial 2003221201)
>29-Dec-2003 20:02:26.138 parser: /etc/named.conf:100: cannot redefine zone '16.16.217.in-addr.arpa' class IN
>29-Dec-2003 20:02:26.140 default: listening on [212.57.120.166].53 (rl0)
>29-Dec-2003 20:02:26.140 default: listening on [10.0.0.1].53 (rl1)
>29-Dec-2003 20:02:26.140 default: listening on [127.0.0.1].53 (lo0)
>29-Dec-2003 20:02:26.140 default: Forwarding source address is [0.0.0.0].53
>29-Dec-2003 20:02:26.145 default: Ready to answer queries.
>
>Просветите меня что сие все значит и как с этим бороться
>
>named.conf и файлы зон выложу по первому же требованию :-))

а зачем с этим бороться, это тебе bind сообщает какие зоны загрузил и на каких интерфейсах слушает ! единственно плохое сообщение насчет:
cannot redefine zone '16.16.217.in-addr.arpa' class IN  
с этим разберись. погляли named.conf 86 строку, возможно что-то дублируется
can't exec /libexec/named-xfer: <-- ну раз хочет здесь модуль вот и положи его сюда или смотри параметры установки насчет путей .


"DNS работает но ругается. Что с этим делать?"
Отправлено snirr , 30-Дек-03 12:24 

>а зачем с этим бороться, это тебе bind сообщает какие зоны загрузил
>и на каких интерфейсах слушает ! единственно плохое сообщение насчет:
>cannot redefine zone '16.16.217.in-addr.arpa' class IN
>с этим разберись. погляли named.conf 86 строку, возможно что-то дублируется
>can't exec /libexec/named-xfer: <-- ну раз хочет здесь модуль вот и положи
>его сюда или смотри параметры установки насчет путей .
статически слинкованый named-xfer лежит в /sandbox/named/usr/libexec/
собственно, как я и говорил, там где положено

а где и как посмотреть установки насчет путей?


"DNS работает но ругается. Что с этим делать?"
Отправлено globus , 30-Дек-03 12:29 
какие еще линки в chroot ???


"DNS работает но ругается. Что с этим делать?"
Отправлено Vlady , 30-Дек-03 13:23 
(serial 2003211201)

Кстати, и сериалы у тебя неправильные.
Если уж выбрал формат даты, то единственно правильным будет
год-МЕСЯЦ-число-номер - ТОЛЬКО тогда нумерация будет плавно нарастать.
Смени немедленно на 2004010100, иначе потом придется нудно мучиться, переводя нумерацию в "последовательную".
Смени сейчас!
Если до НовГода придется менять зоны, то меняй только последние 2 цифры, а в новом году уже и даты меняй.

С остальным - тебе уже подсказывают...


"DNS работает но ругается. Что с этим делать?"
Отправлено globus , 30-Дек-03 13:29 
помоему нумировать зону можно в любом формате ...
главное изменить номер зоны после ее изменения... (чтоб файл перечитался named- ом) и не важно меняется (в сторону увеличения) первые цифры или цифры в середине значения...

"DNS работает но ругается. Что с этим делать?"
Отправлено snirr , 30-Дек-03 14:50 
>помоему нумировать зону можно в любом формате ...
>главное изменить номер зоны после ее изменения... (чтоб файл перечитался named- ом)
>и не важно меняется (в сторону увеличения) первые цифры или цифры
>в середине значения...
да насчет сЕриала я облажался конечно
цитата из Handbook: "the serial number of the file. this must be incremented each time the zone file is modified. Nowadays, many admins prefer a yyyymmddrr format for the serial number. 2001041002 would mean last modified 04/10/2001, the latter 02 being the second time the zone file has been modified this day"

2 globus
я имел ввиде статическую линковку
см. http://www.freebsd.org.ru/how-to/dns/securing-bind.html
а так же http://pilorama.com.ru/library/icme.html (раздел статическая линковка)

меня больше инетесует ПОЧЕМУ ТАКИ NAMED НЕ НАХОДИТ NAMED-XFER????
с конфигами я разберусь, сериал поменял, но вот этот named-xfer.... :-))  


"DNS работает но ругается. Что с этим делать?"
Отправлено boykov , 30-Дек-03 16:27 
>
>меня больше инетесует ПОЧЕМУ ТАКИ NAMED НЕ НАХОДИТ NAMED-XFER????
>с конфигами я разберусь, сериал поменял, но вот этот named-xfer.... :-))
скорее всего, потому что он chroot. imho в chroot окружении путя считаются не от основоного корневого каталога. загони sh в ту же песочницу, что и named и попытайся выполнить named-xfer.


"DNS работает но ругается. Что с этим делать?"
Отправлено snirr , 30-Дек-03 17:13 
>>
>>меня больше инетесует ПОЧЕМУ ТАКИ NAMED НЕ НАХОДИТ NAMED-XFER????
>>с конфигами я разберусь, сериал поменял, но вот этот named-xfer.... :-))
>скорее всего, потому что он chroot. imho в chroot окружении путя считаются
>не от основоного корневого каталога. загони sh в ту же песочницу,
>что и named и попытайся выполнить named-xfer.

Может подскажете как? в качестве новогоднего подарка? :-))))


"DNS работает но ругается. Что с этим делать?"
Отправлено boykov , 30-Дек-03 19:09 
>Может подскажете как? в качестве новогоднего подарка? :-))))

собственно
chroot /chroot/named
в терминах руководства, которым вы пользовались.

и оттедова
/libexec/named-xfer
если не запускается, то таки положить его туда.

Да, странно... по этому доку он должен требовать /usr/libexec/named-xfer

А статическая линковка -- это чтобы он библиотеки не просил (в смысле с ln не связано).


"DNS работает но ругается. Что с этим делать?"
Отправлено snirr , 30-Дек-03 19:24 
>>Может подскажете как? в качестве новогоднего подарка? :-))))
>
>собственно
>chroot /chroot/named
>в терминах руководства, которым вы пользовались.
>
>и оттедова
>/libexec/named-xfer
>если не запускается, то таки положить его туда.
>
>Да, странно... по этому доку он должен требовать /usr/libexec/named-xfer
>
>А статическая линковка -- это чтобы он библиотеки не просил (в смысле
>с ln не связано).

Эх, хвост-чешуя....:-)))
про линковку то я в курсе:-))
Хм .... в руководстве пишуть /usr/libexec/named-xfer

ЦИТИРУЮ:
Допустим, каталог /chroot/named будет корневым каталогом нашего bind sandbox. В этом каталоге необходимо создать следующую структуру директорий:
/dev
/etc
     /namedb
/usr
     /libexec
/var
     /run
     /stat
     /log
.............

/usr/libexec
     скопируем из дерева исходных текстов bind src/bin/named-xfer статически слинкованный исполняемый файл named-xfer
КОНЕЦ ЦИТАТЫ.

может быть надо не в /sandbox/named/usr/libexec
a в /sandbox/named/libexec ????????

попробую....

я еще думал может вот о чем:
в файлике work/src/bin/named/pathtemplate.h есть такая строчка

#define _PATH_XFER "DESTEXEC%/named-xfer"

это о чем говорит? где named будет искать named-xfer???????


"DNS работает но ругается. Что с этим делать?"
Отправлено globus , 31-Дек-03 06:02 
так, я чего то не понял (а могет не увидел :) )
давай по порядку (может еще раз)
1. как запускаешь ты намед ?
2. где всетакт лежит named-xfer ?

ЗЫ почему бы не поставить намед по новее ???


"DNS работает но ругается. Что с этим делать?"
Отправлено LS , 02-Янв-04 03:26 

>Хм .... в руководстве пишуть /usr/libexec/named-xfer
>
>ЦИТИРУЮ:
>Допустим, каталог /chroot/named будет корневым каталогом нашего bind sandbox. В этом каталоге
>необходимо создать следующую структуру директорий:
>/dev
>/etc
>     /namedb
>/usr
>     /libexec
>/var
>     /run
>     /stat
>     /log
>.............
>
>/usr/libexec
>     скопируем из дерева исходных текстов bind src/bin/named-xfer
>статически слинкованный исполняемый файл named-xfer

все люди - все ошибаются

>КОНЕЦ ЦИТАТЫ.
>
>может быть надо не в /sandbox/named/usr/libexec
>a в /sandbox/named/libexec ????????
>
>попробую....
>
>я еще думал может вот о чем:
>в файлике work/src/bin/named/pathtemplate.h есть такая строчка
>
>#define _PATH_XFER "DESTEXEC%/named-xfer"
>
>это о чем говорит? где named будет искать named-xfer???????
>

смотри как определяется переменная DESTEXEC во время компиляции

boykov все правильно сказал


"DNS работает но ругается. Что с этим делать?"
Отправлено snirr , 05-Янв-04 12:03 
В общем проблема решилась. Я связался с автором статьи, описал ситуацию, и получил следующий ответ:

Здравствуйте,

On Mon, 5 Jan 2004, 10:53+0300, snirr wrote:

>
> Уважаемый Максим,
>
> В процессе установки Bind 8.3.7 в Chroot окружении(система FreeBSD 4.7), как написано у Вас
> в статье на freebsd.org.ru? я столкнулся с некоторыми трудностями.
> Сразу оговорюсь, что named работает (то есть прописав адрес DNS сервра
> в сетевых настрояках Windows, я спокойно хожу в интернет), но
> периодически в логах вылезает следующее сообщение:
>
> 28-Dec-2003 21:15:58.057 default: can't exec /libexec/named-xfer: No such file or directory

-----------------------------------------------^^^^^^^^^^^^^^^^^^^

> Я все делал точно по Вашей статье и
> структура директорий chroot такая же как и у Вас :
>
> ------------[ЦИТИРУЮ]------------
>
> Допустим, каталог /chroot/named будет корневым каталогом нашего bind
> sandbox. В этом каталоге необходимо создать следующую структуру
> директорий: /dev /etc
>      /namedb
> /usr
>      /libexec
> /var
>      /run
>      /stat
>      /log
> .............
>
> /usr/libexec
>      скопируем из дерева исходных текстов bind src/bin/named-xfer
>      статически слинкованный исполняемый файл named-xfer
>
> ------------[КОНЕЦ ЦИТАТЫ]------------
>
> все это означает, что named, не находит named-xfer в папке
> /usr/libexec.

Судя по сообщению в Ваших логах, которое я подчеркнул выше, named
пытается сделать exec /libexec/named-xfer, а не
/usr/libexec/named-xfer.

> Я не очень опытный в данном вопросе администратор, и мне хотелось бы
> разобраться в чем здесь дело, тем более, что положив named-xfer
> в /chroot/named/libexec, вро де бы избавился от отих сообщений.
>
> НО! в файле work/src/bin/named/pathtemplate.h есть такая строчка:
>
> #define _PATH_XFER "DESTEXEC%/named-xfer" - эта строчка, как я
> понимаю, указывает на то, что при компиляции вместо DESTEXEC% будет
> подставлен путь по которому named будет искать named-xfer. я
> посмотрел в файле Makefile, который находится в
> work/src/bin/named-xfer, и обнаружил, что переменная DESTEXEC имеет
> следующий вид: DESTEXEC = /usr/local/libexec то есть видимо надо
> класть named-xfer в /chroot/named/usr/local/libexec.

Да, это так.

Но, если Вы будете устанавливать порт так, как указано в статье, т.е.

cd /usr/ports/net/bind8/ [*]
make PORT_REPLACES_BASE_BIND8=yes clean patch
[ модификация путей и флажков компиляции ]
make PORT_REPLACES_BASE_BIND8=yes install clean

то флажок PORT_REPLACES_BASE_BIND8 переопределит PREFIX с /usr/local
на /usr и таким образом, DESTEXEC будет /usr/libexec.  У Вас же
префикс поломался совсем и bind ищет named-xfer в /libexec/.

[*] На самом деле, конечно, /usr/ports/dns/bind8, так как DNS-related
порты не так давно перенесены в отдельный каталог.  Это будет
поправлено при очередном апдейте рассматриваемого текста.

> так я и сделал и тоже больше не получал вышеописаной ошибки.
> Что бы это все значило???
>
> Буду Вам очень признателен, если вы найдете время, что бы ответить и
> прокомментировать мои соображения.
>
> PS: Дискуссию по этому вопросу можно посмотреть тут:
> http://www.opennet.me/openforum/vsluhforumID1/38948.html

В кач-ве workaround можно прописать в named.conf такое:

options {
        ...
        named-xfer "/usr/libexec/named-xfer";
        ...
};

--
Maxim Konovalov

boykov точно был прав. Спасибо всем за помощь
и.... С наступившим!!!!!!!!! :-)))))


"DNS работает но ругается. Что с этим делать?"
Отправлено lavr , 05-Янв-04 12:41 
>В общем проблема решилась. Я связался с автором статьи, описал ситуацию, и
>получил следующий ответ:
>
>Здравствуйте,
>
>On Mon, 5 Jan 2004, 10:53+0300, snirr wrote:
>
>>
>> Уважаемый Максим,
>>
>> В процессе установки Bind 8.3.7 в Chroot окружении(система FreeBSD 4.7), как написано у Вас
>> в статье на freebsd.org.ru? я столкнулся с некоторыми трудностями.
>> Сразу оговорюсь, что named работает (то есть прописав адрес DNS сервра
>> в сетевых настрояках Windows, я спокойно хожу в интернет), но
>> периодически в логах вылезает следующее сообщение:
>>
>> 28-Dec-2003 21:15:58.057 default: can't exec /libexec/named-xfer: No such file or directory
>
>-----------------------------------------------^^^^^^^^^^^^^^^^^^^
>
>> Я все делал точно по Вашей статье и
>> структура директорий chroot такая же как и у Вас :
>>
>> ------------[ЦИТИРУЮ]------------
>>
>> Допустим, каталог /chroot/named будет корневым каталогом нашего bind
>> sandbox. В этом каталоге необходимо создать следующую структуру
>> директорий: /dev /etc
>>      /namedb
>> /usr
>>      /libexec
>> /var
>>      /run
>>      /stat
>>      /log
>> .............
>>
>> /usr/libexec
>>      скопируем из дерева исходных текстов bind src/bin/named-xfer
>>      статически слинкованный исполняемый файл named-xfer
>>
>> ------------[КОНЕЦ ЦИТАТЫ]------------
>>
>> все это означает, что named, не находит named-xfer в папке
>> /usr/libexec.
>
>Судя по сообщению в Ваших логах, которое я подчеркнул выше, named
>пытается сделать exec /libexec/named-xfer, а не
>/usr/libexec/named-xfer.
>
>> Я не очень опытный в данном вопросе администратор, и мне хотелось бы
>> разобраться в чем здесь дело, тем более, что положив named-xfer
>> в /chroot/named/libexec, вро де бы избавился от отих сообщений.
>>
>> НО! в файле work/src/bin/named/pathtemplate.h есть такая строчка:
>>
>> #define _PATH_XFER "DESTEXEC%/named-xfer" - эта строчка, как я
>> понимаю, указывает на то, что при компиляции вместо DESTEXEC% будет
>> подставлен путь по которому named будет искать named-xfer. я
>> посмотрел в файле Makefile, который находится в
>> work/src/bin/named-xfer, и обнаружил, что переменная DESTEXEC имеет
>> следующий вид: DESTEXEC = /usr/local/libexec то есть видимо надо
>> класть named-xfer в /chroot/named/usr/local/libexec.
>
>Да, это так.
>
>Но, если Вы будете устанавливать порт так, как указано в статье, т.е.
>
>
>cd /usr/ports/net/bind8/ [*]
>make PORT_REPLACES_BASE_BIND8=yes clean patch
>[ модификация путей и флажков компиляции ]
>make PORT_REPLACES_BASE_BIND8=yes install clean
>
>то флажок PORT_REPLACES_BASE_BIND8 переопределит PREFIX с /usr/local
>на /usr и таким образом, DESTEXEC будет /usr/libexec.  У Вас же
>
>префикс поломался совсем и bind ищет named-xfer в /libexec/.
>
>[*] На самом деле, конечно, /usr/ports/dns/bind8, так как DNS-related
>порты не так давно перенесены в отдельный каталог.  Это будет
>поправлено при очередном апдейте рассматриваемого текста.
>
>> так я и сделал и тоже больше не получал вышеописаной ошибки.
>> Что бы это все значило???
>>
>> Буду Вам очень признателен, если вы найдете время, что бы ответить и
>> прокомментировать мои соображения.
>>
>> PS: Дискуссию по этому вопросу можно посмотреть тут:
>> http://www.opennet.me/openforum/vsluhforumID1/38948.html
>
>В кач-ве workaround можно прописать в named.conf такое:
>
>options {
>        ...
>        named-xfer "/usr/libexec/named-xfer";
>        ...
>};
>
>--
>Maxim Konovalov
>
>boykov точно был прав. Спасибо всем за помощь
>и.... С наступившим!!!!!!!!! :-)))))

эти проблемы уже сто раз здесь расписывались, sorry, и в дополнение было
четко расписано что ЗАМЕНИТЕ bind8 на bind9 и соберите статически для chroot, если не устраивают встроенные возможности bind9!

ну и ссылка на прекрасные описания:

http://www.cymru.com/Documents/secure-bind-template.html