Netscape LDAP -> OpenLDAP migration (реплика, или подсунуть dump)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модератор: SLEDopit

Ответить
masloff
Сообщения: 156
ОС: opensolaris 2008.11

Netscape LDAP -> OpenLDAP migration

Сообщение masloff »

Всем привет.

Есть следующее ТЗ - с Нетшкафового ЛДАП сервера перенести часть дерева на ОпенЛДАП сервер.

Была мысль сделать это с помощью реплики - но не вышло.

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

[root@odin opt]# /usr/sbin/slapd -d 256 -d 128
@(#) $OpenLDAP: slapd 2.3.27 (Jul  2 2008 04:29:48) $
        brewbuilder@ls20-bc1-14.build.redhat.com:/builddir/build/BUILD/openldap-2.3.27/openldap-2.3.27/build-servers/servers/slapd
bdb_db_open: Warning - No DB_CONFIG file found in directory /opt/ldap_db: (2)
Expect poor performance for suffix ou=Employee,ou=People,o=enterprise.com.
slapd starting
request done: ld 0x2b87d6a1da10 msgid 1
=> bdb_entry_get: cannot find entry: "ou=employee,ou=people,o=enterprise.com"
do_syncrep2: got search entry without control


Обычный ldapsearch (анонимный) проходит и возвращает записи.

Намучавшись с репликой, я просто решил подсовывать дамп базы данных, которую вернул ldapsearch.

Дамп живет в файле base.ldif, в таком формате

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

# Chuvak1, Employee, kv, People, enterprise.com
dn: uid=Chuvak1,ou=Employee,ou=kv,ou=People, o=enterprise.com
mail: chuvak1@enterprise.com
uid: Chuvak1

# Chuvak2, Employee, kv, People, enterprise.com
dn: uid=Chuvak2,ou=Employee,ou=kv,ou=People, o=enterprise.com
mail: chuvak2@enterprisel.com
uid: Chuvak2


При попытке добавить этот файл в свеженасетапанную базу ОпенЛДАП`а, мне возвращает следующее:

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

[root@odin ~]# /usr/sbin/slapadd -v -l base.ldif
bdb_db_open: Warning - No DB_CONFIG file found in directory /opt/ldap_db: (2)
Expect poor performance for suffix ou=Employee,ou=People,o=enterprise.com.
is_entry_objectclass("uid=Chuvak1,ou=people,o=enterprise.com", "2.16.840.1.113730.3.2.6") no objectClass attribute
slapadd: line 5: database (ou=Employee,ou=People,o=enterprise.com) not configured to hold "uid=chuvak1,ou=people,o=enterprise.com"
slapadd: line 5: database (ou=employee,ou=people,o=enterprise.com) not configured to hold "uid=chuvak1,ou=people,o=enterprise.com"


Конфиг slapd.conf

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

include         /etc/openldap/schema/core.schema
include         /etc/openldap/schema/cosine.schema
include         /etc/openldap/schema/inetorgperson.schema
include         /etc/openldap/schema/nis.schema
allow bind_v2
pidfile         /var/run/openldap/slapd.pid
argsfile        /var/run/openldap/slapd.args
 modulepath     /usr/lib64/openldap/
 moduleload     back_sql.la
 moduleload     back_ldap.la
 moduleload     back_sql-2.3.so.0.2.15
database        bdb
suffix          "ou=Employee,ou=People, o=enterprise.com"
rootdn          "uid=root_user,ou=Employee,ou=People, o=enterprise.com"
rootpw          secret
rootpw          {MD5}3SX9ncRGyYcxq+6XN51ooA==
directory       /opt/ldap_db
loglevel        -1
index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub
syncrepl        rid=0
        provider=ldap://ldap.enterprise.com:389
        type=refreshAndPersist
        retry="60 +"
        searchbase="o=enterprise.com"
        filter="(objectClass=*)"
        scope=sub
        attrs="mail,uid"
        schemachecking=off
        bindmethod=simple
        binddn="uid=tbl,ou=Groups, ou=kv, ou=People, o=enterprise.com"
        credentials=12345678



Как мне заставить работать реплику? Или как импортировать дамп БД в базу ОпенЛДАП? И возможен ли инкрементальный синк (bash или php скрипт) в файл, и последующий импорт его в БД на ОпенЛдапе?

Ну очень надо :)

Спасибо :drinks:
Registered Linux user number 447778
Спасибо сказали:
skor
Сообщения: 419
ОС: RTFM-OS v127.0.0.1

Re: Netscape LDAP -> OpenLDAP migration

Сообщение skor »

1. Англицким по белому написано
"no objectClass attribute"
Вы не говорите какой тип объекта хотите создать.

ldapsearch запускать с ключем -L тогда должно быть все что надо

2.
"slapadd: line 5: database (ou=Employee,ou=People,o=enterprise.com) not configured to hold "uid=chuvak1,ou=people,o=enterprise.com""
У тебя корень дерева:
suffix "ou=Employee,ou=People, o=enterprise.com"

А ты пытаешься прыгнуть выше корня и создаешь
uid=Chuvak1,ou=people,o=enterprise.com
Спасибо сказали:
masloff
Сообщения: 156
ОС: opensolaris 2008.11

Re: Netscape LDAP -> OpenLDAP migration

Сообщение masloff »

skor писал(а):
26.11.2008 18:48
1. Англицким по белому написано
"no objectClass attribute"
Вы не говорите какой тип объекта хотите создать.

ldapsearch запускать с ключем -L тогда должно быть все что надо

2.
"slapadd: line 5: database (ou=Employee,ou=People,o=enterprise.com) not configured to hold "uid=chuvak1,ou=people,o=enterprise.com""
У тебя корень дерева:
suffix "ou=Employee,ou=People, o=enterprise.com"

А ты пытаешься прыгнуть выше корня и создаешь
uid=Chuvak1,ou=people,o=enterprise.com


Спасибо, разобрался!

Можно закрыть тему
Registered Linux user number 447778
Спасибо сказали:
Ответить