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

создание профиля UNIX пользователя

СообщениеДобавлено: 19 июл 2006, 09:17
АлександрСмирнов
Решил сделать почтовое почтовый сервер на linux сервере, настроил авторизацию через LDAP в eDIR. Теперь пароли на почтовом сервере теже что и в eDIR, пока правда только для тестового пользователя.
Столкнулся с такой ситуацией, что в ConsoleOne каждому пользователю в профиль UNIX необходимо проставить ID пользователя, группу домашний каталог, shell - все это ручками причем необходимо отследить чтобы ID пользователя у всех был разный. Может кто сталкивался с подобной ситуацией, можно ли этот процесс как то автоматизировать, хотя бы при заведении уже новых пользователей в eDIR чтоб у них подставлялся уникальный ID пользователя ?!

СообщениеДобавлено: 19 июл 2006, 14:50
Музалёв Николай
У меня такая система работает.
Поскольку пользователей три сотни, то постепенно заводил всех ручками...
По поводу уникальности ИД - мы применяем табельный номер (спасибо бугалтерьершам...), а по поводу уникального имени выкрутились тем, что в поле Given Name заносим строку ИМЯ.КОНТЕКСТ и в дебрях ЛДАП-настроек провели перемапирование: cN не на CN , а cN на GivNam. Поскольку мои пользователи изначально логинятся как ИМЯ.КОНТЕКСТ, то внедрение такого именования ( по сути - это два имени, для сети и для почт) прошло очень гладко.

Другое дело , что в такой конструкции почты есть один подводный камень: если вы пользуетесь БАТом (про самые последние не знаю, а предпоследние грешат...) , то следует отработать, провести через инструкцию смены пароля на почтовом клиенте, потому что при смене пароля в сети не происходит смены пароля для клиента почты.
Несмотря на то, что БАТ вроде выдает окно для ввода правильного пароля, но на почтовый сервер продолжает посылать неправильный, прежний...

Re: создание профиля UNIX пользователя

СообщениеДобавлено: 19 июл 2006, 18:05
Андрей Тр. aka RH
АлександрСмирнов писал(а):все это ручками
Ну почему ручками - все можно импортировать по LDAP - тем же ICE, например, из каким-либо образом сгенерированных файлов ( даже простых CSV ). Можно вообще просто замапить uid на cn ( ессно, если у вас все cn по определению уникальные ), или как подсказал Николай на какой-то другой подходящий ( вот тут опять же то же предлагают ). Если все импортировать uid, то надо как-то сперва их генерировать ( чтобы гарантировать уникальность ) - остальное дело техники.

А еще может оказаться, что в вашем приложении имеется возможность указывать, какой атрибут пользователя использовать - так, что можно в его конфиге прописать, скажем, cn вместо uid.

P.S. Вот здесь про это довольно неплохо написано - Creating UIDs for Older User Objects.

СообщениеДобавлено: 22 июл 2006, 12:54
АлександрСмирнов
подскажите как правильно составить ldif файл чтобы для уже существующего пользователя
dn: cn=luser,ou=ou_asu,o=farm добавить несколько записей в LDAP

loginShell: /bin/bash
homeDirectory: /home/luser
gidNumber: 1003
uidNumber: 1005
uid: luser
objectClass: posixAccount


в данном примере добавляется поле uid
dn: cn=test1,ou=Accounting,o=acme
changeType: modify
add: uid
uid: test1

можно ли зараз добавить несколько полей в одном ldif-файле
или надо делать несколько ldif-файлов для каждого поля свой ??

СообщениеДобавлено: 22 июл 2006, 14:32
АлександрСмирнов
не получается добавить пользователю
objectClass: posixAccount

СообщениеДобавлено: 22 июл 2006, 15:25
АлександрСмирнов
существующему пользователю t1 пробую добавить objectClass: posixAccount

содержимое im1.ldif

dn: cn=t1, ou=ou_asu,o=farm
changeType: modify
add: objectClass
objectClass: posixAccount


Z:\mgmt\ConsoleOne\1.2\bin>-h 192.168.30.7 -D cn=admin,o=farm -Z -W -f im1.ldif
Enter LDAP Password:
modifying entry "cn=t1, ou=ou_asu,o=farm"
ldap_modify: Object class violation
additional info: NDS error: missing mandatory (-609)

ldif_record() = 65

что неправильно делаю ?

пробовал добавить email - без проблем

dn: cn=t1, ou=ou_asu,o=farm
changeType: modify
add: mail
mail: t1@test.ru

СообщениеДобавлено: 22 июл 2006, 16:52
АлександрСмирнов
разобрался (support.novell.com/cgi-bin/search/searchtid.cgi?10086342.htm )

Важно чтобы после
add: objectclass
objectclass: posixAccount
было
add: uid
uid: t1

пример
----------------------------------------------------
dn: cn=t1, o=firma
changetype: modify
add: objectclass
objectclass: posixAccount
-
add: uid
uid: t1
-
add: uidNumber
uidNumber: 200035
-
add: gidNumber
gidNumber: 200032
-
add: homeDirectory
homeDirectory: /home/t1

СообщениеДобавлено: 06 авг 2006, 20:52
Andrey Karyagin
Если есть желание ПОЛНОСТЬЮ автоматизировать сей процесс, то обратите внимание на open source проект: http://www.openadaptor.org Компоненты LDAPSource и LDAPSink позволят Вам достичь желаемого результата, хотя возможен и вариант с промежуточным LDIF файлом.