Hello, Still hitting the same wall, (Oh yeah, uhh... Debian linux samba packages from SID)
# net rpc join -S TESTING -U root%password Creation of workstation account failed Unable to join domain TESTING dn: uid=testing$,ou=Computers,dc=iwu,dc=edu objectClass: top objectClass: account objectClass: posixAccount cn: testing$ uid: testing$ uidNumber: 1001 gidNumber: 515 homeDirectory: /dev/null loginShell: /bin/false description: Computer gecos: Computer my /etc/ldap/ldap.conf reads (it has been hard linked to /etc/ldap.conf) # cat ldap.conf URI ldap://127.0.0.1 BASE dc=iwu,dc=edu pam_filter objectclass=posixAccount pam_login_attribute uid pam_crypt local nss_base_passwd dc=iwu,dc=edu?sub Here are the ldap lines from my smb.conf passdb backend = ldapsam:ldap://localhost ldap group suffix = ou=Group ldap idmap suffix = ou=Idmap ldap machine suffix = ou=Computers ldap passwd sync = Yes ldap suffix = dc=iwu,dc=edu ldap ssl = no ldap user suffix = ou=People Seems like I have missed something.... Just not sure what Pat On Tue, 2008-02-26 at 13:30 -0800, Dirk Kleinhesselink wrote: > On Tue, 26 Feb 2008, Pat Riehecky wrote: > > Assuming you're running linux or a similar sytem (nsswitch) - I think > you need to set the search scope for your LDAP lookups. In my > /etc/ldap.conf (the nsswitch ldap search configuration) I have: > > nss_base_passwd set to my base DN with scope sub: > > nss_base_passwd dc={},dc={}?sub > > The default is to do something like: > > nss_base_passwd ou=People,dc={}.dc={}?one > > In my case People and Computers are underneath the base and so the passwd > search starts at the base and seeks down. > > Then in my smb.conf I have the ldap suffix set to my LDAP base > and the ldap user suffix is set to: ou=People and > ldap machine suffix to: ou=Computers > > Dirk > > > I very much appreciate the help thus far, but I think it has strayed a > > bit from the actual problem. > > > > The problem is that when I join a system to the samba domain it > > creates /some/ but not all of the required attributes for the computer > > account. The process then fails as samba looks in the wrong part of my > > directory server. I would strongly prefer to put the workstation > > accounts in their own tree (ou=Computers). I added the relevant bits to > > the smb.conf for this to happen (ldap machine suffix = ou=Computers) and > > restarted samba. Yet the debug logs show me that, while it executes the > > machine add script just fine, it is still looking in ou=People. As a > > leap into absurdity I even rebooted the whole box (in case a shared > > memory segment was somehow hanging about), still the samba binary is > > convinced my computer accounts live in ou=People. The process becomes > > more odd when I can see in the debug log that the samba binary has > > successfully read in my machine suffix. > > > > I find this a bit unusual. > > Pat > > > > On Tue, 2008-02-26 at 09:03 -0800, Chuck Kollars wrote: > >>> ...Yet, if I search LDAP after the join attempt I > >>> find: dn: uid=testing$,ou=Computers,dc=iwu,dc=edu > >> > >> This convention of a "workstation" account being the > >> same as a "people" account except with a dollar sign > >> appended to the name is the way Windows works. > >> Weird?Yes. Looks wrong?Yes. Needs "fixing"?Maybe Not. > >> > >>> ...My LDAP logs show it is searching ou=People > >>> rather than ou=Computers to see if it was added > >>> successfully. What must I do to make it search > >>> ou=Computers? ... > >> > >> Unfortunately it's pretty easy and pretty common to > >> use LDAP in a way that doesn't match the "usual" human > >> definitions of some words. This isn't necessarily > >> wrong though. If an operation doesn't work, definitely > >> dig in. But if an operation "works" but appears to use > >> words differently than your definitions, it may not be > >> a problem. > >> > >> Every LDAP tool has its own settings. Change it for > >> one tool, and it will still behave the old way for > >> other tools. > >> > >> For `ldapsearch`, there are several settings, the > >> later of which override the earlier. One is "base" in > >> a file named something like /etc/openldap/ldap.conf. > >> This may be overridden by a command line parameter to > >> `ldapsearch`. > >> > >> For LDAP name service lookups (if enabled in > >> /etc/nsswitch.conf), again there's "base" but this > >> time in /etc/ldap.conf (a separate file but with a > >> name very similar to the first one). Sometimes you'll > >> also find "nss_base_hosts", which takes precedence if > >> it exists. There may also be a setting on pam_ldap.so. > >> > >> > >> etc. > >> > >>> Now the other half of the question, the part you > >>> didn't ask, which is not where to "search" but > >>> where to "store". (Obviously storing in one place > >>> but searching in the other won't work at all. > >>> Both storing and searching in the "wrong" place > >>> may work perfectly well for Samba, yet might be > >>> inconsistent with some of your other tools and > >>> procedures.) > >> > >> Unfortunately there are a gazillion different ways to > >> update an LDAP database and they all work differently > >> and are all configured differently. Are you using some > >> scripts, or a web application like 'phpldapadmin', or > >> the `ldapadd` command, or ...; and are you calling it > >> explicitly or letting it be called from within Samba > >> via the 'add machine' parameter? > >> > >> good luck! > >> > >> > >> -Chuck Kollars > >> > >> > >> > >> ____________________________________________________________________________________ > >> Looking for last minute shopping deals? > >> Find them fast with Yahoo! Search. > >> http://tools.search.yahoo.com/newsearch/category.php?category=shopping > >> > > > > > -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/listinfo/samba
