Автор Тема: Ldap user password  (Прочетена 3962 пъти)

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Ldap user password
« -: Apr 04, 2008, 16:58 »
Здравейте,

от известно време тръгнах да изучавам ldap командите и то предимно към AD с Windows 2003 (само за тест). Опитвам се да създам потребителски акаунт (успешно), но единственият проблем, на който не мога да намеря решение е паролата. Четох за сертификатите, за ldaps, криптиране на стойността на параметъра userPassword (използвам следният ред на пърл: perl -e 'print("userPassword: {CRYPT}".crypt("pass","passw")."\n");', unicodePwd и още хиляди неща, но потребителя не може да ползва зададената парола '<img'>. Ако я задам от AD-то, всичко е ОК, но ми се иска да има и друг начин, който да не ползва ldapssl. В най-общи линии, нещата, които права, са:

- създавам файл user.ldif със следното съдържание:
Примерен код

[root@c46 ~]# cat /mnt/test.ldif
dn: ou=deby,dc=ws2003,dc=gaara,dc=com
objectClass: organizationalUnit
ou: deby

dn: cn=john,ou=deby,dc=ws2003,dc=gaara,dc=com
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: user
cn: john
givenName: john
distinguishedName: CN=john,OU=deby,DC=ws2003,DC=gaara,DC=com
instanceType: 4
displayName: john
name: john
userAccountControl: 512
sAMAccountName: john
legacyExchangeDN: /o=First Organization/ou=First Administrative Group/cn=Recipients/cn=john
userPrincipalName: [EMAIL=john@ws2003.gaara.com]john@ws2003.gaara.com[/EMAIL]
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=ws2003,DC=gaara,DC=com
textEncodedORAddress: c=US;a=;p=First Organizat;o=Exchange;s=john
mail: [EMAIL=john@ws2003.gaara.com]john@ws2003.gaara.com[/EMAIL]
msExchHomeServerName: /o=First Organization/ou=First Administrative Group/cn=Configuration/cn=Servers/cn=EXCH
homeMDB: CN=Mailbox Store (EXCH),CN=First Storage Group,CN=InformationStore,CN=c46,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=First Organization,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=ws2003,DC=gaara,DC=com
mailNickname: john



За да ми е още по-лесно имам и инсталиран exchange (EXCH) '<img'>
Има още атрибути, които трябва да се добавят, но и това ще стане '<img'>. Смятам, когато го разбера и да си напиша пърл скрипт, но има още много докато се стигне дотам '<img'>

- Прибаваям потребителя по следният начин:
Примерен код

ldapadd -xcvh 10.191.12.170 -D "ws2003\administrator" -w "password"  -f user.ldif


Всякакви идеи са добре дошли '<img'>

Всичко най-свежо от мен



Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

Ali Nebi

  • Напреднали
  • *****
  • Публикации: 394
  • Distribution: Centos, Debian, Fedora, Ubuntu
  • Window Manager: Gnome
    • Профил
Ldap user password
« Отговор #1 -: Apr 05, 2008, 00:53 »
Здравей,

ами по принцип стандартно паротлата се задава по следния начин:

userPassword: {CRYPT}HASHSTOINOST

вместо крипт, ако искаш може да ползваш и SHA, както решиш ти. имаше една команда за генериране на пароли за ldap

man slappasswd

може да видиш как работи.

Надявам се да съм ти разбрал проблема правилно и успял да ти помогна.
Активен

Не се задоволявай да бъдеш дим, когато можеш да бъдеш огън!

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Ldap user password
« Отговор #2 -: Apr 05, 2008, 21:01 »
Здравей,
благодаря за инфото, но и то не помага'<img'>
Целият проблем е, че ако "Minimum password length", на "Password policy"е !0, то параметъра useraccountcontrol не може да се зададе да е 512, т.е. акаунта да е активен. Както и да генерирам тази парола, Windows-a има собствено мнение и все едно този атрибут не се слага. Ако задам минималната дължина да е 0 символа, то спокойно мога да задам userAccountControl=512, а по подразбиране е 543, т.е. не е активиран '<img'>.
Цялата борба се свежда до задаване на парола, която отговаря на политиката на Windows за дължина и най-вече да я приеме. Сега не връща грешка, но все едно този параметър отива в /dev/null '<img'>

Edit: Използвам следният пърл скрипт, ако някой го интересува:
Примерен код

debian:~/ldap# cat ldap.pl
#!/usr/bin/perl
use Net::LDAP;
use strict;

my $server='ws2003.gaara.com';
my $user='administrator@ws2003.gaara.com';
my $password='password';

my $ldap=Net::LDAP->new($server) or die "Could not connect to server: $@\n";
my $bind = $ldap->bind($user, password => $password);
die "Could not bind to server: ", $bind->error if $bind->code;

#Add user
my $ou='Test';
my $u1='Kulu';

my $result=$ldap->add("cn=$u1,ou=$ou,dc=ws2003,dc=gaara,dc=com",
                  attr=>[ cn                => $u1,
                          sn                => $u1,
                          uid               => $u1,
                          objectclass       =>['top','person','organizationalPerson','user'],
                          givenName         => $u1,
                          distinguishedName => "uid=$u1,OU=$ou,DC=ws2003,DC=gaara,DC=com",
                          displayName       => $u1,
                          name              => $u1,
                          samaccountname    => $u1,
                          userprincipalname => $u1.'@ws2003.gaara.com',
                          telephoneNumber   => '359 888 888 888',
                          userpassword      => '{SSHA}mu8+jz70sPPBTJQiwXgtaWaCR9/T5klw',
                          useraccountcontrol=> '512',
                          ]);
$result->code && warn "failed to add entry: ", $result->error;
$ldap->unbind;
debian:~/ldap#

Като предварително съм създал OU=Test '<img'>



Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Ldap user password
« Отговор #3 -: Apr 07, 2008, 00:24 »
Интересно е, че ако създадем потребител през AD-то и му видим обектите, през ADSI Edit, то се вижда, че:
- useraccountcontrol е 512
- userpassword не е зададено, т.е. показва not set
- unicodePwd не е зададено

А юзера има парола и може да се логва..... направо ужас '<img'>
Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Single user mode - password rq
Настройка на програми
Apache 4 3861 Последна публикация May 27, 2006, 19:36
от astronom
Samba+ldap
Настройки на софтуер
meneldor 1 3711 Последна публикация Jul 02, 2007, 14:28
от Stratovarius
Check password for specific user
Настройка на програми
toncho11 2 3698 Последна публикация Jul 11, 2007, 17:07
от zeridon
Инсталация на ldap във samba
Настройка на програми
svemat 5 4630 Последна публикация Oct 22, 2007, 17:06
от svemat
Работеща конфигурация на pdc+ldap
Настройка на програми
svemat 1 3746 Последна публикация Nov 29, 2007, 10:07
от svemat