přejít na obsah přejít na navigaci

Linux E X P R E S, Jak se tančí Samba?

Jak se tančí Samba?

Výměna informací v počítačových sítích a mezi počítači obecně bylo vždy velice živé téma mezi odborníky i laiky. K dnešnímu dni existuje nepřeberné množství protokolů, které umožňují poměrně dosti efektivní výměnu dat. Některé jsou historicky velmi dobře zavedené (HTTP/1.1, FTP), jiné mají velmi zajímavou architekturu (Coda, OpenAFS).


Nevýhodou prvních dvou uvedených protokolů je nutnost používat klientský software, který není integrován přímo na úrovni VFS - což je případ prvních dvou, ačkoli existují projekty, které se snaží tyto souborové systémy zpřístupnit na této úrovni pomocí jaderných modulů. O dalších dvou drtivá většina uživatelů nikdy neslyšela a přes jejich zajímavé vlastnosti je jejich instalace poměrně složitá. V unixovém světě existuje léty prověřený, odzkoušený a hojně používaný systém NFS (více o něm v článku Daniela Závodského, pozn. red.). Ovšem ne všechny počítače mají unixový operační systém a v heterogenní síti je tak administrátor postaven před problém, jak soubory na unixovém serveru zpřístupnit uživatelům na pracovních stanicích s Windows. Jedním z řešení je nainstalovat NFS klienta, který ale nemusí všechny vlastnosti NFS podporovat. Řešením je tedy použít Sambu.

VFS nebo-li virtuální souborový systém umožňuje připojovat různé zdroje informací jako soubory nebo adresáře v hlavním souborovém systému. V Linuxu je příkladem VFS např. adresář /proc.

Balík programů Samba umožňuje rychlé a snadné propojení Linuxu a dalších unixových operačních systémů s MS Windows. Umožňuje využít všech výhod unixového serveru, a přesto ponechat na uživatelských stanicích Windows. Nezanedbatelná je také možnost využít Sambu pro propojení několika linuxových počítačů navzájem, ačkoliv se domnívám, že v tomto směru je NFS stále ještě nezastupitelné.

Latinskoamerická kráska

Samba je projekt, který se od roku 1992 snaží propojit unixové počítače s počítači, na nichž běží Windows. Jméno je odvozeno od zkratky SMB neboli Server Message Block. Zde by bylo vhodné zmínit, že původní nápad vzešel od firmy IBM a Microsoft jej upravil a integroval do Windows a svého tehdejšího produktu LAN Manager. Začátek Samby byl dosti dobrodružný - Andrew Tridgell, autor Samby, se snažil dekódovat protokol pro výměnu souborů DEC Pathworks a později zjistil, že je téměř identický s protokolem LAN Manager.

SMB protokol původně vyžadoval vrstvu NetBIOS, které ovšem již nadále není nutná a je používán přímo protokol TCP/IP.

Nyní, po čtrnácti letech existence, je Samba vyspělý produkt, který umožňuje sdílení souborů, tiskáren a autentizaci uživatelů. Správce sítě tak může využít výhod unixové správy uživatelů, a přitom nemusí běžné uživatele nutit do Linuxu.

Jak ji získat?

Samba je obsažena ve všech používaných distribucích, stačí tedy nainstalovat balík tak, jak je ve vaší distribuci obvyklé. Pokud Sambu z nějakého důvodu nemůžete nebo nechcete instalovat z balíku, můžete jej nainstalovat ze zdrojového kódu podle návodu v dokumentaci. Nezapomeneme nainstalovat i balík SWAT, který by mohl být zabalen zvlášť. Další možností, jak nakonfigurovat Sambu, je pomocí balíku Webmin, který má tu výhodu, že není specificky orientován jen na Sambu, ale z jednoho prostředí je možné nastavovat celý systém.

Získejte srdce dámy

Ke konfiguraci můžete použít více způsobů, např. je možné celou konfiguraci napsat v textovém editoru do souboru smb.conf, dále existují konfigurační nástroje jako SWAT (jemuž se budeme věnovat jako prvnímu) nebo Webmin (druhá část textu) přístupné pomocí internetového prohlížeče. Domnívám se, že konfigurace přímo v smb.conf má opodstatnění jen v případě velmi jednoduché konfigurace a doporučuji využít grafický nástroj, který umožňuje přímou spolupráci s nápovědou, kterou budeme (aspoň ze začátku) hojně využívat.

Základní konfigurace

Do prohlížeče zadáme adresu http://localhost:901 a pokud jsou všechny potřebné balíky nainstalovány, zobrazí se výzva k zadání jména a hesla (uživatele root) a poté hlavní konfigurační obrazovka.

Obrázek: Úvodní obrazovka SWAT

Nejprve vyplníme informace v sekci Globals. Většina položek má jasný význam jako obdobná nastavení v OS Windows. Do položky unix charset je nutné zadat kódování, které používá právě konfigurovaný počítač, jinak by diakritika v názvech souborů byla zkomolená. Realm je nutné vyplnit, pokud chceme použít autentifikaci Kerberos. Díky poli netbios aliases můžeme jednomu počítači přiřadit několik jmen. Interfaces umožňuje omezit přístup pouze pro vybrané síťové karty.

Zabezpečení

  • Pole security musíme vybrat podle účelu serveru. Hodnoty vybereme podle následujícího klíče:
  • SHARE - Tento režim vybereme, pokud na serveru budou sdílené prostředky přístupně všem.
  • USER - Každý uživatel se musí přihlásit jménem a heslem.
  • SERVER - Samba server přeposílá žádost o autentifikaci jinému serveru, ať již Sambě, nebo Windows.
  • DOMAIN - Podobné jako server, ale jméno dalšího serveru posílá hlavnímu serveru v doméně.
  • ADS - Podobné režimu DOMAIN, ale využívající autentikaci Kerberos.
  • Pro normální server doporučuji režim SHARE, který nám dovolí definovat sdílené prostředky přístupně všem. Pokud však od všech uživatelů budeme vyžadovat přihlášení jménem a heslem, doporučuji režim USER.

Obrázek: Zabezpečení serveru

Dále zde můžeme vyplnit seznamy uživatelů, kterým bude přístup povolen nebo naopak zakázán, nebo těch, kteří budou mít administrátorská práva. Současně můžeme definovat seznam uživatelů s právem zápisu a čtení. Můžeme nastavit jména nebo adresy počítačů, kterým chceme povolit nebo zakázat připojení. Pokud je server hlavním doménovým serverem, pak je třeba nastavit domain master na Yes.

Sdílení souborů

Přes ikonu Shares se dostaneme na stránku, na které můžeme vybrat již existující sdílené adresáře pro modifikaci a smazání, případně přidání nových. Pokud přidáme nový adresář, zobrazí se nám stránka na obrázku.

Obrázek:Definice a úprava sdíleného adresáře

Každý sdílený adresář můžeme okomentovat a musíme k němu napsat absolutní cestu. Můžeme k němu nastavit i přístupová práva, stejně jako v hlavní sekci Globals. Každý adresář je možné nastavit jen pro čtení a pomocí parametru guest ok můžeme povolit přístup k adresáři bez hesla (pozor - pokud je nastaven globální přístup USER, přístup k adresáři bude stejně vyžadovat heslo). Parametr browseable určuje, zda bude adresář viditelný v seznamu sdílených prostředků a parametr available nastavený na No způsobí, že připojení k adresáři vyvolá chybu a zaloguje ji.

Tiskový server

Parametry tiskáren jsou téměř totožné jako parametry adresářů. Je zde parametr printer admin, což je uživatel, který může mazat a upravovat všechny tiskové úlohy ve frontě. Zajímavé je, že každá tiskárna může mít svého vlastního správce. Printable musí být nastaveno na Yes, aby bylo možné na tiskárně tisknout.

Obrázek: Definice tiskárny

Správa serveru

V záložce Status můžeme startovat a vypínat jednotlivé služby a monitorovat aktivní připojení, adresáře a soubory. Jako zajímavý hodnotím fakt, že je možné ukončovat aktivní připojení, nicméně doporučil bych tuto možnost využívat co nejméně.

Obrázek: Správa serveru

Správa uživatelů

Ikona Password nás zavede ke správě uživatelů.

Obrázek: Správa uživatelů

Horní část formuláře (Server Password Management) nám umožňuje přidávat, upravovat, mazat a povolovat jednotlivé uživatele, kteří mají přístup ke sdíleným složkám, zatímco druhý formulář umožňuje totéž, ale na libovolném jiném Samba serveru, jehož jméno je zadáno v poli Remote Machine. To je výhodné, pokud máme více serverů, a správu chceme provádět z jednoho místa. V případě rozsáhlejší sítě doporučuji prozkoumat propojení s LDAP serverem, který může sloužit pro více druhů služeb než jen pro Sambu.

LDAP je zkratka z Lightweigth Directory Access Protocol. Tento protokol umí zpracovávat libovolná hierarchická data a je nejčastěji používán pro hierarchickou správu uživatelů.

Export domovských adresářů

Pokud chceme exportovat (sdílet) domovské adresáře uživatelů, bylo by příliš komplikované, namáhavé a málo flexibilní přidávat adresáře ručně. Nejjednodušší je vytvořit jeden jediný sdílený adresář, pojmenovaný např. home, jehož parametr PATH je nastaven na /home/%u nebo přímo %H. %u je zástupný symbol, který je nahrazen jménem uživatele a %H cestou k jeho domovskému adresáři. Výhodou je, že pak každý jednotlivý uživatel nevidí, a ani nemůže vidět, domovské adresáře ostatních uživatelů.

Zástupných symbolů je několik a je možné je používat všude, kde je očekáván řetězec, např. v řetězcích pro log nebo komentářích (myšleno pole comment, nikoliv komentáře na úrovni konfiguračního souboru).

Zástupné symboly - Samba

  • %u - jméno uživatele aktuálního sdíleného prostředku (adresáře nebo tiskárny);
  • %g - hlavní skupina uživatele;
  • %m - jméno klientského počítače (jméno NetBIOS);
  • %M - jméno klientského počítače (internetové jméno);
  • %I - IP adresa klientského počítače;
  • %d - číslo serverového procesu;
  • %S - jméno aktuálního sdíleného prostředku;
  • %H - domovský adresář uživatele.

Webmin

Webmin je velmi známý a široce používaný program pro vzdálenou správu systému pomocí internetového prohlížeče. Pokud máme Webmin nainstalovaný, můžeme se k němu připojit přes adresu http://localhost:10000 .

V nabídce Servery nalezneme ikonu Samba Windows File Sharing. Následující strana je dle mého názoru lépe členěna a uživatel se v ní snáze zorientuje. Naneštěstí i přesto, že Webmin podporuje češtinu jako jeden ze svých jazyků, modul pro nastavení Samby počeštěn není.

Obrázek: Ikona Samby ve Webminu

Odkaz Unix Networking nám umožní nastavit důvěryhodné počítače, rozhraní a také jemně vyladit parametry TCP/IP protokolu. V sekci Windows Networking můžeme nastavit parametry, které se mají zobrazit klientům - jako je pracovní skupina a jméno počítače.

Authentication umožňuje vyladit přidávání uživatelů na úrovni skriptů. Zde bych raději nic neměnil a důvěřoval bych vývojářům.

Sekce Windows to Unix Printing nastavuje, jaké lokální tiskárny budou na naší LAN viditelné. Miscellaneous podporuje další parametry, které ale pravděpodobně nebudeme chtít měnit. Winbind Options umožňuje nastavit podporu pro přihlašování pomocí tohoto protokolu. Položky File Share Defaults a Printer Share Defaults obsahují standardní definice, které se poté využijí u jednotlivých sdílených prostředků.

Obrázek:Sdílené složky a adresáře

Dále je možné editovat přímo konfigurační soubor a nebo spustit SWAT. V části Samba Users je mimo obvyklého přidávání uživatelů a skupin také volba, kterou SWAT nemá - konverze unixových hesel na windowsová a také automatická synchronizace linuxových a Samba skupin a uživatelů, což mimo jiné znamená, že informace o uživatelích jsou spravovány na jednom místě.

Stejně jako program SWAT i Webmin umí přidávat, modifikovat a mazat sdílené složky a tiskárny, včetně zobrazení aktivních připojení.

Závěrem bych k WebMinu dodal, že jeho ovládání a pojmenování ovládacích prvků je v mnoha ohledech lepší než u programu SWAT. Pokud by se podařilo tento program celkově přeložit, konfigurace nejen Samby a Linuxu by byly mnohem snazší.

Klientské programy

Ne vždy však chceme adresáře a tiskárny sdílet, někdy je třeba se k již sdíleným prostředkům připojit. Jedním ze základních programů je smbclient. Je to řádkový klient, který se ovládá stejným způsobem jako klasický FTP klient. Příklad použití:

uzivatel@localhost:~$ smbclient \\\\Pocitace\\Adresar
get soubor1.txt
put soubor2.txt
exit

Další možností je připojit sdílený adresář stejným způsobem jako např. CD-ROM, např. takto:

uzivatel@localhost:~$ mount -t smbfs \\\\Pocitace\\Adresar /mnt -o username=jmeno,password=heslo

Grafická prostředí obvykle mají další nástroje pro připojování sdílených adresářů a tiskáren (např. GOsa nebo Smb4K). V mnoha distribucích je možné sdílený adresář připojit přímo z grafického prostředí, např. v Nautilu.

Obrázek: Nautilus a Samba

Nahoru

Odkazy

Příspěvky

Jak se tančí Samba?
Radek Honzík 4. 03. 2008, 14:07:33
Odpovědět  Odkaz 
Tento článek se mi jako naprostému Linuxovému začátečníkovi jeví jako velice užitečný. Měl bych jeden dotaz. Pokud přidám uživatele přes SWAT, vytvoří se mi i v systému a vytvoří se mu domovký adresář?
Jak se tančí Samba?
Cef 31. 08. 2011, 20:16:56
Odpovědět  Odkaz 
Ahoj, vim ze me nejspis odbydete ale treba taky ne. mam Sambu i SWAT ale at se snayim jak se snayim nedari se mi nasdilet souborz pro okolni pocitace (beyi pod win 7). existuje jednoduchz a snadnz postup?(vim ze ano, ale poradi mi ho nekdo? prosim)dekuji

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

Ondřej Jakubčík

Ondřej Jakubčík je absolventem gymnázia v Ostrově, v současnosti je studentem Fakulty elektrotechnické ČVUT v Praze. Svobodný software používá od roku 1997, zajímá se zejména o programování v jazycích C, C++ a Java, dále o internetové technologie a zabezpečení počítačových sítí. Pro svou práci využívá téměř výhradně operační systém Linux, ovšem aktivně se zajímá i o jiné systémy, např. FreeBSD nebo Solaris.


  • Distribuce: Linux From Scratch + vlastni modifikace