Portál AbcLinuxu, 25. dubna 2024 06:37


Dotaz: samba - smbldap-tools - join to domain trouble

4.6.2007 02:30 timeos | skóre: 32
samba - smbldap-tools - join to domain trouble
Přečteno: 1450×
Odpovědět | Admin
Zdravim vospolok

neviem si rady s pridanim jedneho samba servera (srv1) do domeny (obyc. domena - security = user), ktoru spravuje dalsi samba server (srv2) s ldap backendom. V podstate potrebujem mat na srv1 k dispozicii ntlm autentifikaciu cez winbind kvoli squidu.

A o co vlastne ide?

pri pokuse pridat srv1 do domeny prikazom net rpc join -U admin a zadani hesla sa dostavi klasicka hlaska "Unable join to domain ...".

Na srv2 je v logu clienta tento zapis:
Error: modifications require authentication at /usr/lib/perl5/vendor_perl/5.8.8/smbldap_tools.pm line 1059.
[2007/05/31 02:26:48, 0] passdb/pdb_interface.c:pdb_default_create_user(368)
  _samr_create_user: Running the command `/usr/sbin/smbldap-useradd -w "srv1$"' gave 3

Ano, je mi jasne, ze sa samba na srv2 snazi pre noveho clienta vytvorit account v ldape natipovanymi smbldap-tools utilitami, teda konkretne tym prikazom nizsie. Ked som vsak pozeral logy ldap servera (klasicky openldap 2.3.x), tak pri pokuse o modifikaciu uidNumber atributu sambaUnixIdPool zaznamu nastane error:

Jun  3 11:55:18 pdc-srv slapd[4499]: conn=39 op=3 MOD attr=uidNumber
Jun  3 11:55:18 pdc-srv slapd[4499]: conn=39 op=3 RESULT tag=103 err=8 text=modifications require authentication

Problem je totiz v tom, ze z mne nejakeho neznameho dovodu sa ten smbldap-useradd skript po connectnuti na ldap server nebindne (!!!) ale normalne pokracuje operaciami hladania/modifikacie. No a na tej prvej modifikacii zhasne. (gave 3).

V smbldap_bind.conf je dobra identita a tiez ma spravne prava (teda na citanie pre roota a nic viac).

Este som si vsimol ze na ostatne parametre spojenia ako je nazov hostu alebo cielovy ldap(s) port, pripadne na STARTTLS nastavenie skripty smbldap-tools reaguju... problemom je fakt len to, ze nieje pouzity BIND pri spojeni.

Tiez som rozmyslal ze by som na tu chvilu pridavania zaznamu srv1 do LDAPu dal ldap na full write mode... problem je vsak v tom, ze pri aktualizacnych operaciach MUSI byt client voci ldapu autentifikovany cez BIND (lebo aj anonymne spojenie je vlastne BIND s prazdnymi poliami binddn a passwd)

Ked ten skript /usr/sbin/smbldap-useradd -w "srv1$" spustim rucne, tak sa vykona bez problemov a bindne sa na identitu definovanu v smbldap_bind.conf.

problem je vsak v tom, ze takto vytvoreny zaznam servera srv1 je v podstate nepouzitelny. Ak by som aj podoplnal samba atributy, ktore normalne do takychto PCckovskych posix uctov popridava samba (asi) rucne tak sa aj tak pokus o join do domeny skonci chybou:

[2007/06/04 01:55:21, 0] utils/net_rpc_join.c:net_rpc_join_newstyle(304)
  error setting trust account password: NT_STATUS_NO_USER_SESSION_KEY
Unable to join domain .....

Z toho mi vypliva, ze je medzi PDC a clientmi domeny asi nejake trust spojenie na urovni klucov alebo coho a je drzane v internych suboroch samby a nie v LDAPe.


Tiez som skusal niekde pred ten riadok v smbldap-tools.pm vlozit natvrdo bind ($ldap->bind(...)) ale nic nepomaha a ta operacia je proste ignorovana. Taktiez pri preruseni spojenia s LDAPom sa ziadny unbind nekona (asi celkom pochopitelne :) ), ale rovno closed (connection lost).

No a teraz k otazkam :-)
- stretli ste sa uz niekto s podobnym chovanim smbldap-tools skriptov, ktore inak slapu bez problemov (su v poslednej verzii z webu - 0.9.2)?
- ako inym sposobom uspesne pridat samba server ako client do samba PDC domeny s LDAP backendom s tym, aby bol client plnopravnym clenom a nie len zaznamom v LDAPe?
- ak mate nejake externe zdroje kde by som nasiel ako to s tym trust spojenim medzi PDC a clientmi vyzera a funguje
- No a samozrejme nejake rady ako by ste to riesili vy :)

este nejake fakty: samba na srv1 aj na srv2 je samba-3.0.24 na srv2 v smb.conf:

add machine script = /usr/sbin/smbldap-useradd -w "%u"


Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

4.6.2007 08:01 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: samba - smbldap-tools - join to domain trouble
Odpovědět | | Sbalit | Link | Blokovat | Admin
neviem si rady s pridanim jedneho samba servera (srv1) do domeny (obyc. domena - security = user)
Není to protimluv? Doména je security=domain, ne?

A k vlastí otázce: pokud jste zkoušel spustit skript ručně, bylo to pravděpodobně s právy roota. S net rpc join -U admin se hlásíte jako uživatel Admin. Má ten uživatel právo se k LDAP serveru připojit a práva vytvořit tam nového uživatele? Zkuste si u LDAP serveru zvýšit logování, uvidíte, co se tam děje – který uživatel se pokouší připojit, jak to dopadne atd.
4.6.2007 12:19 timeos | skóre: 32
Rozbalit Rozbalit vše Re: samba - smbldap-tools - join to domain trouble
neviem si rady s pridanim jedneho samba servera (srv1) do domeny (obyc. domena - security = user)
Není to protimluv? Doména je security=domain, ne?

Ten domenovy server srv2 som svojho casu robil podla navodu smbldap-howto. V nom bola ako security uvedena security=user a ja som nemal dovod nemit to. Server fici ako PDC, a je na nom pripojenych cca 40 windows clientov.

Ked som sa ale chcel pripojit tento dalsi linuxovy server srv2 do tej istej domeny, tak som si uz nasiel v official samba3 howto, ze sa ma takemuto serveru prihodit security=domain a tym sa stava domain memeber server a bude moct sprostredkovavat autentifikaciu na server uvedeny v direktive password server co vlastne od neho potrebujem.

No a ratal som s tym, ze je to takto spravne :)

S net rpc join -U admin se hlásíte jako uživatel Admin. Má ten uživatel právo se k LDAP serveru připojit a práva vytvořit tam nového uživatele? Zkuste si u LDAP serveru zvýšit logování, uvidíte, co se tam děje – který uživatel se pokouší připojit, jak to dopadne atd.
No toto som neupresnil... Ucet admin je alias pre ucet root, ktory je uvedeny ako administrator direktivou admin users=root v smb.conf a teda figuruje ako uzivatel s plnymi pravami. Skusal som to aj pod mojim uctom, ktory je tiez uvedeny v direktive admin users a je mu pridany grant SeMachineAccountPrivilege na pravo pridavania PC uctov do domeny (a teda aj do ldapu, o co by sa mala uz podla mna postarat prave samba resp. smbldap-tools, ktore maju prava pre svoje identity na zapis v ldape v prislusnych podstromoch). Ste si isty tym, ze ked zvysim logovanie na ldap serveri dokazem rozpoznat KTO sa pripaja k LDAPu? Ja som ratal s tym, ze jedine preukazovanie identity clienta voci serveru je prave prikazom bind. Moja idea spocivala v tom, ze ked samba overi, ze sa snazi pridat PC do domeny clen skupiny s najvyssimi pravami, tak pod svojim uctom (definovanym v smb.conf direktivou ldap admin dn) resp. pod uctom uvedenym v smbldap_bind.conf postara o pridanie uctu pre uvedenu stanicu. Tiez som ratal s tym, ze tie smbldap skripty su pisane "staticky" a teda vzdy, ked ich spusti uzivatel s pravami roota sa budu spravat rovnako - teda ze si identitu zistia zo suboru smbldap_bind.conf a vykonaju pozadovanu operaciu. A kedze samba ako taka bez pod pravami roota a ona vola smbldap skripty tiez pod pravami roota, tak som cakal ze vykonanie bude presne rovnake ako keby som ten skript spustal sam pod rootom.
4.6.2007 12:35 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: samba - smbldap-tools - join to domain trouble
Máte pravdu, security=domain znamená, že Samba je sama členem domény. Pokud je Samba PDC, je to security=user.

S těmi účty asi máte pravdu – každopádně bych zvýšil logování na LDAP serveru a uvidíte, zda se vůbec Samba pokouší o bind a LDAP jí odmítne, nebo zda to Samba ani nezkusí.
4.6.2007 15:46 timeos | skóre: 32
Rozbalit Rozbalit vše Re: samba - smbldap-tools - join to domain trouble
Vyriesene!

Tak nakoniec bol problem predsa len s uzivatelom. Ani nie tak s menom a heslom a pravomocami ale skuor v tom, ze uzivatel nebol dobre rozpoznany a nebol autentifikovany. Ked som dal v prikaze net rpc join -U admin pred meno nazov domeny\ z ktorej admin je, tak ma KONECNE potesila hlaska "Joined domain ....". :)

Ale aj tak presne nechapem ako je to s tym vytvaranim computer accountu a pravami pri jeho vytvarani. Zazalohoval som si log z LDAPu tak to idem luskat.

Vdaka za pomoc

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.