Klient sítě Windows
Součástí projektu Samba je i klientská část, která spolupracuje s modulem v jádře linuxu a umožňuje tak Linuxu využívat služby v síti Windows. Protistranou může být jak stanice (či server) s MS Windows, tak jiná Samba (která může být spuštěna na Linuxu, Mac OS X nebo i jiném systému).
Obsah
Člen ADS
Samba může být členem AD (Active Directory), ve které si počítače (servery) důvěřují a sdílejí zejména informace o uživatelských účtech. Aby Samba mohla komunikovat s ostatními servery začleněnými v ADS, musí být nejprve mezi ní a AD vytvořen vztah důvěry. Tomuto aktu, kdy si obě strany u sebe uloží autentizační informace, podle kterých si dále navzájem mezi sebou při komunikaci prokazují svoji identitu, se říká vstup do AD (nebo podle staršího obdobného kroku jako „vstup do domény“).
Soubor /etc/samba/smb.conf změňte tak, aby obsahoval:
workgroup = oalib.cz password server = * security = domain idmap config * : range = 16777216-33554431 template shell = /bin/false winbind use default domain = yes winbind offline logon = false wins server = 11.0.0.243
Do ADS (doména či Active Directory) vstoupíte příkazem:
net ads join oalib.cz
Při vstupu do domény je potřeba heslo správce domény (root, administrator). Informace se ukládají do souboru /var/lib/samba/private/secrets.tdb
. Na severu je automaticky vytvořen účet stanice s přidaným znakem $ na konci.
Test, opuštění domény
net ads status net ads leave
Na Samba serveru je možné ověřit účet stanice výpisem z interní databáze Samby pomocí příkazu (merlin je název připojené stanice):
pdbedit -Lw merlin\$
Klient domény
Stanice může být členem domény, pak přejímá od serveru informace o účtech uživatelů, kteří jsou v doméně nadefinováni. Server (PDC) sděluje informace klientovi jen za předpokladu, že je vztah důvěry navázán. Nejčastěji se používá pro ověření přihlašovacích informací (jméno+heslo).
Na klientovi (tj. stanice s Linuem) je potřeba modifikovat soubor /etc/samba/smb.conf
podle následujícího vzoru (význam položek je uveden níže):
workgroup = oalib.cz password server = * security = domain idmap config * : range = 16777216-33554431 template shell = /bin/false template homedir = /home/%D/%U winbind use default domain = yes winbind offline logon = false wins server = 11.0.0.243
Parametr workgroup
označuje jméno domény, do které se vstupuje (doménu vytváří PDC – buď Samba nebo klasická doména na Windows NT serveru). Parametr password server
definuje IP adresu serveru, kterého se klient bude ptát při ověření jména a hesla (v dobře nakonfigurované doméně windows si klient tuto informaci může zjistit automaticky, proto tam jen hvězdička). Parametr template shell
definuje shell pro přihlašující se uživatele a pokud se přihlašuje do GUI (grafické rozhraní), není potřeba (proto je tam /bin/false
, tj. žádný shell). Zvolený shell musí být na klientovi být uveden v seznamu /etc/shells
. Parametr winbind use default domain
umožňuje, aby se uživatelé přihlašovali do implicitní domény jen svým přihlašovacím jménem a nemuseli pořád uvádět doménu (zde oalib.cz
). Parametr winbind offline logon
umožňuje stanici povolit přihlášení i bez dostupnosti doménového řadiče (PDC, BDC). Parametr wins server
definuje IP adresu WINS serveru. Pomocí něj klient snadno zjistí seznam okolních stanic a hlavně IP adresu serveru zodpovědného za vedení domény (tj. PDC, BDC).
Pokud je /etc/samba/smb.conf
správně nastaven, stanice (snadno a správně) zjistí, kdo je řadič domény (tj. PDC, BDC). Test dostupnosti DC (domain controller, řadič domény) tedy musí vypsat IP adresu (či více adres).
net loookup dc oalib.cz
Adresa DC se získává tak, že se nejdříve zjistí řadiče domény, které mohou být zapsány v souboru /etc/samba/smb.conf, dále z dat, která jsou dočasně uložena na lokálním disku a následně pak z dotazu na WINS server. Pokud jsou data špatně, je nutné zastavit řadič domény (tj. Sambu a tím i WINS server), smazat cache WINS serveru v souboru /var/lib/samba/wins.tdb
, a pak smazat i cache na lokálním počítači v souborech /var/lib/samba/gencache*
.
Pokud je zjištění DC správně, použijte pro vstup klientské stanice do domény příkaz:
net rpc join oalib.cz
Kontrola členství v doméně
net rpc info net rpc testjoin
Na serveru zkontrolujte existenci účtu počítače, který tam automaticky vznikl. K názvu počítače (klienta, který do domény vstoupil) připojte při dotazu na Samba serveru znak dolar („$“), čímž se odlišují běžné uživatelské účty od účtů počítačů. Slovo „merlin“ nahraďte jménem vstupujícího počítače (zjistíte ho na vstupujícím klientovi, resp. stanici, příkazem hostname
):
pdbedit -Lw merlin\$