Samba PDC + LDAP

Rozhodli jsme se nahradit stárnoucí NT4.0 PDC s FreeBSD + Samba + LDAP řešení na podporu našich smíšené Windows, Linux, FreeBSD sítě. Provádění jsme použili byl:

  1. Samba 3.0.6
  2. FreeBSD 4.10
  3. OpenLDAP 2.2.15

Snažíme se a poukázat na rozdíly pro naše méně šťastných bratrů a sester Linux - jen vtip! Tento HOWTO řeší bolest konfiguraci LDAP a Samba. Pokud potřebujete pomoc při zřizování sambu to není místo pro vás.

Obsah

Přehled a pozadí

NT LAN Manager

LDAP struktura

Nastavení a LDAP obyvatel

Soubory a ukázky

smb.conf LDAP parametry

OpenLDAP Guide

Přehled a pozadí

Naším konečným cílem je jednotné přihlášení na správní zjednodušení, spíše než jakékoliv vznešené cíle. FreeBSD 4.10 nám dává dočasný problém, protože nepodporuje systému přihlášení přes LDAP. To znamená, že musíme zopakovat ty uživatele, kteří požadují zdroje přístupový systém jak v LDAP a přes add_user. Pokud jste Linux nebo FreeBSD 5.x uživatel není problém. Přesto se budeme dále proto, že:

  1. Skutečný počet uživatelů, které vyžadují přístup k systémovým zdrojům je nízká ve srovnání s celkovým počtem uživatelů - budeme držet non-uživatele systému pro e-mail, FTP a přístup na web ve stejném LDAP struktury ( viz tento tabl e).
  2. FreeBSD 5.x nepodporuje LDAP přihlášení přes NSS služeb - takže když jsme se konečně stěhují do 5.x jen je třeba zastavit ruční synchronizaci - stejně jako zastavení bouchání na hlavu o zeď očekáváme, že bude docela příjemné, když se to stane.
  3. Rozhodli jsme se, že adresář žil na bázi architektury je zásadně "pravé ™" pro budoucnost - takže žádné dočasné potíže, je jen bump-in-the-cesta do budoucnosti (působivé nebo co)!.

Takže jsme instalovali Samba jako PDC s non-LDAP autentizace a to mám všechno běží jako testovací systém jen aby dokázal, PDC konfiguraci. Následně jsme viděli tuto navrhovanou v dokumentaci Samba a považují to hluboce moudrou radu. Nezačínejte s LDAP implementace, pokud jste udělali vše před nebo máte vysoký práh bolesti. Teď jsme přišli přidat LDAP do konfigurace a problémy a otázky začala - a ve skutečnosti constiture hlavní motivací pro napsání tohoto HOWTO. Co všechny Samba objectclasses dělat? potřebujeme je všechny? Jak jsme nakonfigurovat LDAP používat? Jsme použili a nakonfigurován Samba mnohokrát předtím a nikdy ani neviděl, že pojmy SID a RID - jen to, co jsou zač, a ještě důležitější proč musíme o nich vědět? Je důležité pochopit, že důsledkem výběru LDAP implementace je, že jsou nutně vystaveni celé této SID / RID haraburdí - a řada dalších věcí, kromě - jednoduše proto, že konfigurace LDAP (databáze autentizace) není pod ovládání Samba kódu - vzhledem k tomu, s ověřováním tdbsam kód Samba řídí jeho ověřování databáze a návazně se spousta věcí automagical - který má up-stranu takže si myslíte, že jste chytřejší než vy. V LDAP implementace si - eso sys admin - je třeba udělat všechnu práci, která je standardně v tdbsam - který má dolů-strana připomínat, jak hloupý skutečně jste! Můžete upřímně ušetřit spoustu utrpení tím, že pomocí LDAP. Rozhodli jsme se, že další výhody LDAP (společný zdroj dat bla, bla, bla, bla, atd.) stojí za bolest. Nebo spíš bychom podstoupit bolest jednou a jako důsledek extrémního traumatu by to být vymazány tvoří naši paměť (trochu jako porodu - nebo tak jsme spolehlivě řečeno). Nebo možná jsme jen do bolesti!

Některé tipy

My se zmást velmi snadno - zde jsou některé věci, které jsme si myslí, že jsou velmi důležité mít na paměti, nebo v některých případech na to zapomenout:

  1. Pokud víte, že LDAP lépe než Samba ani dívat na schématu Samba, dokud se dobře do realizace - máme blind-sided (to se stává často) a snaží se přijít na to, co a kde se všechny objectclasses musela být definována - v V některých případech Samba automagicky je používá. Reverzní inženýrství ze schématu je špatná věc ™.
  2. Pokud nemáte žádné existující LDAP systém, pak byste mohli udělat nic horšího, než jen slepě následovat IDEALX Samba HOWTO , který je opravdu nejlepší dokument tam na Samba PDC navíc LDAP. IOHO nicméně oni předpokládají, že buď musí znát spoustu, nebo jsou připraveny přijmout hodně za samozřejmost. V našem neustálého hledání pravdy a poznání jsme upadli do ani kategorie (je to pompézní nebo co). Případně můžete předpokládat (pravděpodobně správně) jsme prostě příliš hloupí řídit se pokyny!
  3. Pokud máte existující LDAP systém a jsou sloučení Samba ověřování LDAP a pak budete muset pochopit trochu víc - ale vzít čas "cos pokud nechcete používat některé nástroje se dostanete do vážných potíží.
  4. Začněte tím, že pochopení a definování Samba LDAP smb.conf parametry a pak zjistit, co budete muset udělat, aby OpenLDAP. Upozornění: Na téma smb.conf parametrů jsme zjistili řadu odkazů na non-robustní ověření parametrů pomocí samby - když jsme se podíval na kód získat přesný formát pár parametrů jsme zjistili, že se to být tak docela pravda. S triviálními výjimky NENÍ ověření parametrů. Můžete snadno dostat non-životaschopné Samba konfiguraci tím, že se pár smb.conf parametrů špatných - nyní pokládáme nyní mezi světy odborníků v této podobě Samba konfigurace - neživotaschopných konfiguracích, které je! Takže pokud Samba nefunguje, když jste původně vložte jej zapomenout na přátelské log soubory a podívejte se pozorně na vašich parametrů.

 

NT LAN Manager NTLM)

Zjistili jsme, že jsme museli vědět více o LAN Manager, než jsme kdy toužili vědět - nebo spíše pochopit proces konfigurace Samby se držel zakopnutí o podmínkách a konceptů, které jsme měli k neurčitému podezření jsme jen polovina pochopil - byli jsme zpravidla správná v našem podezření - jsme jen polovina rozuměl! Shromáždili jsme spolu pozadí stránky, které nazýváme Survivors Průvodce NTLM . Jsme také odkaz tuto stránku jako nezbytné z textu níže poskytnout další podrobnosti.

LDAP struktura

Samba LDAP tě potřebuje definovat 5 klíčových parametrů ( všechny LDAP parametry ) a strukturovat svůj LDAP hierarchii způsobem:

  1. Pokud v hierarchii LDAP se NTLM uživatelské účty jsou uloženy - pomocí ldap uživatele příponu parametr. Každý uživatel NTLM účet musí namapovat na UNIX (POSIX) účet na PDC. Defned pomocí objectClass AUX sambaSamAccount .
  2. Pokud v hierarchii LDAP se NTLM skupiny jsou uloženy - pomocí skupiny LDAP příponu parametr. Každá skupina - které mohou být vestavěné nebo definované uživatelem - nutné namapovat na UNIX (POSIX) skupiny na PDC.
  3. Pokud v hierarchii LDAP se NTLM stroje účty jsou uloženy - pomocí ldap stroje příponu parametru.
  4. Volitelné Pokud v hierarchii LDAP skupina NTLM mapování jsou uloženy informace - pomocí ldap idMap příponu parametr.
  5. Trochu Volitelné Uživatelské jméno a heslo pomocí ldap admin dn parametr. To může být normální rootdn parametr OpenLDAP - to má však tu nevýhodu, že Samba může napsat na každém místě ve vašem LDAP DIT - pokud vůbec Samba rozhodl se jít trochu divoká byste mohli mít několik problémů. To je mnohem moudřejší a doporučil, aby si definovat samostatný uživatele v DIT, který má oprávnění upravovat, přidávat a číst pouze Samba určitá pole (nevýhoda je, budete muset definovat přístup k klauzule). Život není nikdy snadné.

LDAP DIT

Jak definujete tento materiál bude záviset na tom, zda máte existující LDAP nebo ne, a pokud máte existující implementace, jaké údaje (objectclasses) je v současné době obsahuje. Podívejme se na tři případy:

No existující LDAP implementace

To je nejjednodušší stát - sledovat IDEALX Samba PDC HOWTO otrocky. Oni vědí, co dělají. Chystáte se stavět LDAP systém, který je šitý na míru Samba, aby DIT struktura může být optimalizován pro tento účel.

Stávající LDAP - Kategorie Informace pouze

Pokud používáte existující adresáře provádění např. na základě, řekněme, osoba nebo inetOrgPerson a neobsahuje bezpečnostní informace pro řízení přístupu k systémovým zdrojům, např. systému přihlášení - ale můžete ji používat pro autentizaci pro e-mail, LDAP přístup, ftp přístup atd., pak je nutné provést některé volby. Ve výchozím nastavení Samba používá UID atributy (řízen LDAP filtr parametrem).

Original version: http://www.zytrax.com/tech/howtos/samba.html