named + ldap

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-02 11:00:58

а прямую ты как создал?
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-02 17:06:31

теперь настраиваю DDNS

в чем косяк?

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

[f0s@mail] /home/f0s/> /usr/local/etc/rc.d/isc-dhcpd start
Starting dhcpd.
Internet Systems Consortium DHCP Server V3.0.5
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Error: Cannot find LDAP entry matching (&(objectClass=dhcpServer)(|(cn=mail.artpaint)(cn=mail.artpaint)))
Configuration file errors encountered -- exiting

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

[f0s@mail] /home/f0s/> cat /usr/local/etc/dhcpd.conf
ldap-server "127.0.0.1";
ldap-port 389;
ldap-username "cn=root,dc=artpaint,dc=spb,dc=ru";
ldap-password "pass";
ldap-base-dn "cn=dhcp,dc=artpaint,dc=spb,dc=ru";
ldap-method dynamic;

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

[f0s@mail] /usr/local/etc/> ll
total 96
-rw-r-----  1 dhcpd  dhcpd    187  2 июл 15:26 dhcpd.conf

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

[f0s@mail] /usr/local/etc/openldap/> cat dhcp.ldif
dn: cn=mail.artpaint, dc=artpaint,dc=spb,dc=ru
cn: mail.artpaint
objectClass: top
objectClass: dhcpServer
dhcpServiceDN: cn=dhcp, dc=artpaint,dc=spb,dc=ru

dn: cn=dhcp, dc=artpaint,dc=spb,dc=ru
cn: dhcp
objectClass: top
objectClass: dhcpService
dhcpPrimaryDN: cn=mail.artpaint, dc=artpaint,dc=spb,dc=ru
dhcpStatements: ddns-update-style none
dhcpStatements: default-lease-time 14400
dhcpStatements: max-lease-time 28800
dhcpStatements: log-facility local7

dn: cn=192.168.10.0, cn=dhcp, dc=artpaint,dc=spb,dc=ru
cn: 192.168.10.0
objectClass: top
objectClass: dhcpSubnet
objectClass: dhcpOptions
dhcpNetMask: 24
dhcpRange: 192.168.10.50 192.168.10.150
dhcpStatements: ignore client-updates
dhcpOption: domain-name "artpaint"
dhcpOption: domain-name-servers 192.168.10.8
dhcpOption: routers 192.168.10.7
dhcpOption: default-ip-ttl 64
dhcpOption: default-tcp-ttl 64
[f0s@mail] /usr/local/etc/openldap/>
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Непрочитанное сообщение Za... » 2007-07-02 19:16:59

Первое
Дело в том что, сдесь DDNS работает только тогда, когда у тебя работает все в текстовых файлах, а у нас лдап, поэтому сдесь этот метод не преминим. Но тут утебя другая ситуация, то что не много не правильно настроин сам dhcp

dhcp conf оставляем в парядке

А правим сам ldif

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

# Описание объекта где DHCP будет искать свои опции, настройки и области выдаваемых адресов
dn: ou=Dhcp, dc=artpaint,dc=spb,dc=ru 
ou: Dhcp
description: configuration information for dhcp
objectClass: top
objectClass: organizationalUnit

#Так называемый конфиг, только хранящейся в лдап
dn: cn=conf, ou=Dhcp, dc=artpaint,dc=spb,dc=ru
dhcpSecondaryDN: cn=mail.artpaint,ou=Dhcp, dc=artpaint,dc=spb,dc=ru
#Отключаем DDNS
dhcpStatements: ddns-update-style none
dhcpStatements: ddns-updates off
dhcpStatements: client-updates off
dhcpStatements: default-lease-time 86400
dhcpStatements: max-lease-time 129600
dhcpStatements: authoritative
dhcpStatements: use-host-decl-names on
dhcpStatements: always-reply-rfc1048 on
objectClass: top
objectClass: dhcpService
objectClass: dhcpOptions
dhcpPrimaryDN: ou=Dhcp, dc=artpaint,dc=spb,dc=ru
# Опции на уровне всего DHCP сервера
dhcpOption: domain-name "artpaint"
dhcpOption: netbios-scope ""
dhcpOption: netbios-node-type 8
dhcpOption: time-offset 10800
dhcpOption: ip-forwarding off
dhcpOption: option-150 code 150 = ip-address
dhcpOption: netbios-name-servers 192.168.10.8
cn: conf

dn: cn=mail.artpaint, ou=Dhcp, dc=artpaint,dc=spb,dc=ru
dhcpServiceDN: cn=conf,ou=Dhcp, dc=artpaint,dc=spb,dc=ru
objectClass: top
objectClass: dhcpServer
cn: mail.artpaint

dn: cn=192.168.10.0, cn=conf, ou=Dhcp, dc=artpaint,dc=spb,dc=ru
objectClass: top
objectClass: dhcpSubnet
objectClass: dhcpOptions
dhcpNetMask: 24
dhcpRange: 192.168.10.50 192.168.10.150
# Опции на уровне области DHCP сервера
dhcpOption: domain-name-servers 192.168.10.8
dhcpOption: routers 192.168.10.7
dhcpOption: broadcast-address 192.168.10.255
dhcpOption: default-ip-ttl 64
dhcpOption: default-tcp-ttl 64
cn: 192.168.10.0
Для автоматического обновления зон DNS-сервера DHCP-сервером, скачаем по ссылке http://www.venaas.no/ldap/bind-sdb/dhcp2ldapd-1.1.gz. Расположим файл в /usr/local/sbin, создадим символическую ссылку dhcp2ldap на файл dhcp2ldap-1.1.pl , перед этим его распаковав:

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

[root@gaster /usr/local/src]# gunzip dhcp2ldap-1.1.gz
Отредактируем скрипт dhcp2ldap.pl:

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

# Файл, где хранится информация о выданных адресах DHCP-сервером
$LEASES = "/var/db/dhcpd/dhcpd.leases";

# Домен
$DOMAIN = "artpaint";
# Обратная зона
$REVERSE = "10.168.192.in-addr.arpa";

# Где в LDAP хранятся зоны прямого и обратного преобразования
$FORWARD_BASE = "zoneName=artpaint,ou=dns,dc=artpaint,dc=spb,dc=ru ";
$REVERSE_BASE = "zoneName=10.168.192.in-addr.arpa,ou=dns,dc=artpaint,dc=spb,dc=ru";

# Пользователь для подключения к LDAP-серверу
$USER = 'cn=ldapmanager,dc=ganzalis,dc=ru';
# Пароль пользователя
$PASSWORD = "pass";
# Хост, на котором работает LDAP-сервер
$LDAP_HOST = 'localhost'

# Время проверки файла в секундах
$UPDATE_TIME = 30;

# Автопроверка
$AUTO_VERIFY = 0;
Далее подправим код, т.к. скрипт писался для обслуживания адресов по маске 16

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

                       $result = $ldap->delete("relativeDomainName=$fourth.$third," . $REVERSE_BASE);
                        $result->code && warn "failed to remove entry: ", $result->error ;

                        $result = $ldap->add( "relativeDomainName=$fourth.$third," . $REVERSE_BASE,
                                attr => [
                                        'relativeDomainName'=> "$fourth.$third",
на

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

                        $result = $ldap->delete("relativeDomainName=$fourth," . $REVERSE_BASE);
                        $result->code && warn "failed to remove entry: ", $result->error ;

                        $result = $ldap->add( "relativeDomainName=$fourth," . $REVERSE_BASE,
                                attr => [
                                        'relativeDomainName'=> "$fourth",




Создадим скрипт /usr/local/etc/rc.d/ dhcp2ldap.sh запуска dhcp2ldap.pl: 
#!/bin/sh

case "$1" in
start)
    if [ -f /var/run/dhcpd2ldap.pid ]
    then
        echo "DNCPD2LDAP Already launched! His pid:"`cat /var/run/dhcpd2ldap.pid`
    else
        echo "Starting DHCPD2LDAP"
        daemon -f -p /var/run/dhcpd2ldap.pid /usr/local/sbin/dhcpd2ldap
    fi
    ;;
stop)
    if [ -f /var/run/dhcpd2ldap.pid ]
    then
        echo "Stoping DHCPD2LDAP"
        kill -TERM `cat /var/run/dhcpd2ldap.pid`
        rm -f /var/run/dhcpd2ldap.pid
    else
        echo "DHCPD2LDAP Not launched!"
    fi
    ;;
*)
    echo "Use start script for: {start | stop}" >&2
    exit 64
    ;;
Esac
Запустим скрипт:
[root@gaster /usr/local/etc/rc.d]# dhcp2ldap.sh start
Проверим работу DHCP-сервера, запустим компьютер клиента настроенный на по-лучение автоматически сетевого адреса а также проверке DNS
Стою в очереди За... булкой и кефиром

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-04 12:24:28

блин, абсолютно тоже самое :( добавил инфу из файлы dhcp.ldif, и все равно не стартует dchpd.. =(

ps. что это за параметры:

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

dhcpOption: ip-forwarding off
dhcpOption: option-150 code 150 = ip-address 
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-04 12:35:49

попрравил dhcpd.conf до такого вида:

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

ldap-server "127.0.0.1";
ldap-port 389;
ldap-username "cn=root,dc=artpaint,dc=spb,dc=ru";
ldap-password "pass";
ldap-base-dn "ou=dhcp,dc=artpaint,dc=spb,dc=ru";
ldap-method dynamic;

вроде стартануло.

вроде окейно, тока не понял что значит строчка при запуске:

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

Wrote 0 leases to leases file
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-04 14:02:57

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

[f0s@mail] /root/dhcp/> ./dhcpd2ldap.pl
Can't locate Net/LDAP.pm in @INC (@INC contains: /usr/local/lib/perl5/5.8.8/BSDPAN /usr/local/lib/perl5/site_perl/5.8.8/mach /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.8/mach /usr/local/lib/perl5/5.8.8 .) at ./dhcpd2ldap.pl line 39.
BEGIN failed--compilation aborted at ./dhcpd2ldap.pl line 39.

на 39-ой строке в этом фале написано:


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

use Net::LDAP;
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Непрочитанное сообщение Za... » 2007-07-04 15:20:36

Я конечно все понимаю, но когда так ругается перл, значит он говорит об отсутствие каково то модуля, а конкретно Net::LDAP, есть два пути это

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

cpan install Net::LDAP
или порты

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

/usr/ports/net/p5-perl-ldap

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

Wrote 0 leases to leases file
Пока все пусто
Стою в очереди За... булкой и кефиром

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-09 16:21:51

а как правильно перенсти опции, которые быил в виндовом dhcp? я так понмиаю нуджно создать парметры dhcpOрtion через ldapadmin.. а вот какие именно?

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

003 Router 192.168.10.100
004 Time Server 192.168.10.252
005 Name Servers 192.168.10.252
006 DNS Servers 192.168.10.252
066 Boot Server Host Name 192.168.10.8
067 Bootfile Name pxelinux.0
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35071
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2007-07-09 18:30:56

люди, а вы можете потом всё это совместно задокументировать и выложить?
========
такого изврата как вы тут замутили - я ещё не видел... :)
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Непрочитанное сообщение Za... » 2007-07-10 10:04:30

f0s писал(а):а как правильно перенсти опции, которые быил в виндовом dhcp? я так понмиаю нуджно создать парметры dhcpOрtion через ldapadmin.. а вот какие именно?

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

003 Router 192.168.10.100
004 Time Server 192.168.10.252
005 Name Servers 192.168.10.252
006 DNS Servers 192.168.10.252
066 Boot Server Host Name 192.168.10.8
067 Bootfile Name pxelinux.0
Гугл как говорится рулит
http://ru.opensuse.org/SuSE_install_with_PXE_boot
А так там опции такиеже как и в текстовом варианте конфига DHCP
Я уже поднимал вопрос о том как перенести виндовый dhcp на фрю, но фашисты M$ прочно все запрятали.

dhcpOption: domain-name "artpaint"
dhcpOption: routers 192.168.10.100
dhcpOption: ntp-servers 192.168.10.252
dhcpOption: netbios-name-servers 192.168.10.252
dhcpOption: domain-name-servers 192.168.10.252
dhcpOption: server-name "192.168.10.8";
dhcpOption: next-server 192.168.10.8;
dhcpOption: filename "pxelinux.0";
Стою в очереди За... булкой и кефиром

Аватара пользователя
f0s
ст. лейтенант
Сообщения: 1082
Зарегистрирован: 2007-03-13 18:43:31
Откуда: Санкт-Петербург
Контактная информация:

Непрочитанное сообщение f0s » 2007-07-13 9:18:08

что-то у меня с этими параметрами копризничает. а у тебя стоит tftpd, кстати?

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

Starting dhcpd.
Internet Systems Consortium DHCP Server V3.0.5
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
LDAP line 21: unknown option dhcp.next-server
option next-server 192.
       ^
LDAP line 22: unknown option dhcp.filename
option filename "pxelinux.0"
       ^
LDAP line 23: unknown option dhcp.server-name
option server-name "192.168.10.8"
       ^
LDAP: cannot parse dhcpService entry 'cn=conf,ou=dhcp,dc=artpaint,dc=spb,dc=ru'
Configuration file errors encountered -- exiting
named, named, what is my TTL value?..

[FidoNet 2:550/2 && 2:5030/4441]

Аватара пользователя
Za...
мл. сержант
Сообщения: 105
Зарегистрирован: 2006-08-18 14:18:15
Откуда: Север России
Контактная информация:

Непрочитанное сообщение Za... » 2007-07-13 10:59:43

Да косяк, попробуй так

Это уберем

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

dhcpOption: server-name "192.168.10.8";
dhcpOption: next-server 192.168.10.8;
dhcpOption: filename "pxelinux.0";
А сделаем так

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

dhcpOption: tftp-server-name "192.168.10.8";
dhcpOption: bootfile-name "pxelinux.0";
Да и еще можно поставить вот это, это если у тебя используется WINS

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

dhcpOption: netbios-node-type "8"
Стою в очереди За... булкой и кефиром

Stofel
проходил мимо

Re: named + ldap

Непрочитанное сообщение Stofel » 2007-09-13 9:48:54

пошел немного дальше и объеденил прямую, обратную зоны dns и dhcp,
получилось следующее

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

dn: computerUin=ustu.ido.bart,ou=computers,dc=ido,dc=ustu
objectClass: top
objectClass: dhcpHost
objectClass: dhcpOptions
objectClass: dNSZone
computerUin: ustu.ido.bart
zoneName: ido.ustu
relativeDomainName: bart
zoneName: 203.168.192.in-addr.arpa
relativeDomainName: 205
dNSTTL: 3600
dNSClass: IN
ARecord: 192.168.203.205
PTRRecord: bart.ido.ustu.
dhcpHWAddress: ethernet 00:19:d1:78:40:12
dhcpStatements: fixed-address 192.168.203.205
dhcpOption: bootfile-name pxeboot
dhcpOption: tftp-server-name 192.168.203.15
dhcpOption: root-path 192.168.203.15:/export/diskless
cn: bart

За основную взята схема dnszone.schema, остальные подправил чтобы objectClass не конфликтовали.
В общем получилось здорово, просто плоский список компов вида my-domain.comp-name со всеми настройками.

Далее хотел самбу сюда крутить, но споткнулся.
При бездисковой загрузке почемуто не считываются
bootfile-name pxeboot и root-path 192.168.203.15:/export/diskless
Загрузка тормозится на экран выдает:

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

pxe_open: server addr: 0.0.0.0
pxe_open: server path: /pxeroot
pxe_open: gateway ip: 192.168.203.2
Однако через некоторое время может всетаки загрузится.
bootfile-name и root-path пробовал прописывать в описании dhcp subnet но не помогает

У кого какие идеи?

ps freebsd6.2, без хранения dhcp в ldap все грузится нормально

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35071
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: named + ldap

Непрочитанное сообщение Alex Keda » 2007-09-13 12:21:46

странно...
а загрузчик какой?
Убей их всех! Бог потом рассортирует...

Stofel
проходил мимо
Сообщения: 4
Зарегистрирован: 2007-09-13 10:20:04

Re: named + ldap

Непрочитанное сообщение Stofel » 2007-09-13 13:34:18

PXE loader 1.00
Мать новая с dual core чипсет вроде 965, сейчас попробую со стандартным rtl8139

что если в slapd вставить индекс
index dhcpHWAddress eq
То перестает выдаваться адрес по MAC адресу, а выдется из динамического диапазона.

Stofel
проходил мимо
Сообщения: 4
Зарегистрирован: 2007-09-13 10:20:04

Re: named + ldap

Непрочитанное сообщение Stofel » 2007-09-13 13:44:15

Мой косяк.
В сети 2 dhcp сервера, выключил один запахало.

Видимо когда делаешь настройки dhcp файле сервере быстродействие выше и все запросы отрабатываются одним сервером, а в случае с ldap, создается впечатление что на часть запросов отвечает другой сервер.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35071
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: named + ldap

Непрочитанное сообщение Alex Keda » 2007-09-13 15:03:52

лдап вообще тугодум...
Убей их всех! Бог потом рассортирует...

Stofel
проходил мимо
Сообщения: 4
Зарегистрирован: 2007-09-13 10:20:04

Re: named + ldap

Непрочитанное сообщение Stofel » 2007-09-25 11:35:36

продолжу эту ветку хотя может и не в тему.

Нужно перегнать все записи из MS DNS в ldap
Записей около 1000 поэтому в ручную не получается.

Итак:
Зоны в АД лежат здесь
CN=MicrosoftDNS,CN=System,DC=mydomain,DC=local
В зонах лежат компьютеры.
Обнаружилось что компьютеры в прямой зене и в обратной зоне на прямую не связаны,
а связаны каким то непонятным способом через атрибуты objectGUID и dnsRecord

Пример атрибута dnsRecord для записи типа A record
04 00 01 00 05 F0 00 00 42 96 00 00 00 00 04 B0 00 00 00 00 CB 5A 36 00 C0 A8 CB 0F
В принципе ясно что последние 4 байта обозначают ip адрес,
а как расшифровать остальное?
например тип записи А или CNAME?

Потому что в случае CNAME последние 4 байта вовсе не ip адрес.

Moжет у кого дока есть по атрибутам MS DNS?