Podpora pro síťové prostředí samba. Samba: instalace, konfigurace, optimalizace

Nyní poměrně často v jednom lokální síť počítače lze nalézt Ovládání Linuxu a Windows. Důvody této symbiózy mohou být různé: například majitelé internetové kavárny neměli dostatek finančních prostředků na nákup licencovaného OS pro všechny počítače, nebo správce systému jednoduše přitahovaly kladné stránky Linuxu. Popularita operačních systémů od společnosti Microsoft je do značné míry určena klientským softwarem pro Windows. Není žádným tajemstvím, že tento softwarový sektor je vysoce rozvinutý. Mnoho společností se o to vážně snažilo a vytvořilo opravdu dobré a hlavně snadno použitelné programy, které snadno zvládne i běžný uživatel. Ale jako serverová pozice Windows již ne tak jasné. Server založený na Unixu se tradičně vyznačoval spolehlivostí, stabilitou, bezpečností a často nižšími požadavky systémové prostředky. Ale v každém případě pouhým připojením počítačů s různými softwarovými platformami do sítě se očekávaného výsledku nedočkáme. Celý problém je v tom, že tyto dva systémy používají různé principy pro organizaci síťových zdrojů, které jsou navzájem nekompatibilní.
Protože Microsoft nemá slitování a Windows se pravděpodobně nenaučí pracovat s Unix Network File System (NFS) standardní prostředky, a programy třetích stran, abych byl upřímný, nevím, nejoblíbenějším způsobem je pokusit se naučit Unix "předstírat", že jde o Windows NT.

Interakce v síti počítačů pod Ovládání Windows postavený na protokolu SMB (Server Message Block)— bloky zpráv serveru. Provádí všechny úkony potřebné v těchto případech pro otevírání a zavírání, čtení a zápis, vyhledávání souborů, vytváření a mazání adresářů, nastavení tiskové úlohy a její smazání odtud. Všechny potřebné akce jsou implementovány v unixových operačních systémech pomocí balíčku SAMBA. Jeho schopnosti lze podmíněně rozdělit do dvou kategorií: poskytování prostředků (tím máme na mysli přístup k systému tiskárny a souborům) pro klienti Windows a přístup ke zdrojům zákazníků. To znamená, že počítač se systémem Linux může fungovat jako server i jako klient. Nejprve zvažte možnost serveru SAMBA.

Co by měla SAMBA poskytovat pro běžné síťové propojení počítačů se systémem Windows? Za prvé, řízení přístupu, které lze implementovat buď na úrovni sdílení, kde je libovolnému zdroji v síti přiřazeno heslo a odpovídající pravidla použití (například „pouze pro čtení“), zatímco uživatelské jméno nemá absolutně žádné hodnota; nebo dokonalejší a flexibilnější organizace na uživatelské úrovni, kdy je každému uživateli vytvořen účet, který kromě jména a hesla obsahuje všechny potřebné informace o přístupových právech ke zdroji. Před získáním přístupu k požadovanému zdroji je každý uživatel autentizován, poté jsou mu přidělena práva podle účtů. Za druhé je nutné emulovat přístupová práva definovaná souborovým systémem. Jde o to, že uvažované systémy mají přístupová práva k souborům a adresářům na disku jinak uspořádané. Unix má tradičně tři kategorie uživatelů souborů: majitel, skupina a ostatní. Každý z těchto předmětů může být poskytnut oprávnění ke čtení, napsat a provedení (exekuce). Ve Windows NT je přístupový systém poněkud flexibilnější, uděluje přístup více skupinám nebo uživatelům s příslušnými přístupovými právy definovanými zvlášť pro každý subjekt. Proto plně emulujte pomocí SAMBA přístupová práva vložené do NTFS není možné.

S běžícími klienty Windows 9x, věci se mají jinak. Již od praotce DOSu byly díky tomu, že systém je jednouživatelský a o žádných uživatelích, natož o skupinách, pro souborový systém FAT definovány pouze čtyři atributy - nemohlo být ani řeči - pouze pro čtení, systém (systém), archiv (archiv) a skrytý (skrytý). Navíc ve Windows, na rozdíl od Unixu, má přípona souboru speciální význam - ty, které jsou určeny ke spuštění, mají příponu .exe, .com nebo .bat. Při kopírování souborů z počítačů Unix na počítače se systémem Windows jsou atributy nastaveny takto:

pouze na čtení- čtení, psaní pro majitele;

archivní- exekuce pro vlastníka;

systémové- vystoupení pro skupinu;

skryté - provedení pro skupinu.

Síť počítačů Windows může být organizována jako pracovní skupina (workgroup), kdy jsou počítače na sobě nezávislé a každý má svou vlastní databázi hesel a přihlašovacích údajů s vlastní bezpečnostní politikou a také doménu NT. Spravuje se celá databáze pro ověřování uživatelů a počítačů primární řadič domény (PDC, Primary Domain Controller), tj. centrálně. Samba vám umožňuje omezit přístup na všech těchto úrovních a funguje jako „hlavní prohlížeč“ v kontextu pracovní skupiny nebo řadiče domény.

Řešili jsme obecné organizační záležitosti. Podívejme se nyní konkrétně na implementaci a konfiguraci serveru SAMBA v systému Linux. Aby server Samba fungoval, musí být spuštěny dva démoni: smbd, která poskytuje službu tisku a sdílení souborů pro klienty Samba (jako jsou Windows všech pruhů) a nmbd A, která poskytuje názvovou službu NetBIOS (lze ji také použít k dotazování jiných démonů názvové služby). Pro přístup ke klientům se používá protokol. TCP/IP. Samba se obvykle instaluje s distribucí Linuxu. Jak zkontrolovat? Stačí zadat příkaz:

$ kde je samba

a měli byste dostat něco takového:

Samba: /usr/sbin/samba /etc/samba /usr/share/man/man7/samba.7.gz

Pokud není uvnitř obyčejná dodávka, pak vítejte na ftp://ftp.samba.org/pub/samba/samba-latest.tar.gz nebo téměř na jakémkoli linuxovém serveru. Balíček se snadno instaluje, takže abychom nezabírali místo, budeme předpokládat, že jej máte nainstalovaný. Nyní zkontrolujeme, zda démon běží:

$ ps -aux | grep smbd root 1122 0,0 0,6 4440 380 ? S 16:36 0:00 smbd -D

Jak vidíte, už to mám spuštěné. Pokud jej nemáte, ale chcete, aby se spouštěl při startu systému, tak například v Linuxu Mandrake zaškrtněte požadovanou položku v DrakConfspustit služby nebo v Ovládací panel Red HatKonfigurace služby, to obvykle stačí. Nebo spusťte ručně: ./etc/rc.d/init.d/smb start. Jediný konfigurační soubor Samby se nazývá smb.conf a je obvykle umístěn v adresáři /etc (ačkoli například v AltLinuxu je v adresáři /etc/samba). Služba SAMBA jej čte každých 60 sekund, takže změny provedené v konfiguraci se projeví bez restartu, ale nebudou šířeny na již vytvořená připojení.

To je důvod, proč mám Linux rád, protože konfigurační soubory jsou prostý text (a uvnitř dobře komentované) a abyste mohli využít většinu možností, stačí odkomentovat odpovídající řádek. Soubor smb.conf není výjimkou. Skládá se z pojmenovaných sekcí začínajících názvem sekce uzavřeným v hranatých závorkách. V každé sekci je sada parametrů ve tvaru klíč=hodnota. Konfigurační soubor obsahuje čtyři speciální sekce: , a jednotlivé zdroje (sdílené položky). Jak již z názvu vyplývá, sekce obsahuje nejobecnější charakteristiky, které budou všude uplatněny, které však lze následně předefinovat v sekcích pro jednotlivé zdroje. Některé z možností v této části jsou také relevantní pro konfiguraci klientské strany Samba.

Hodnoty typických parametrů sekce globální:

Pracovní skupina = název_skupiny # název pracovní skupiny v síti Windows název netbios = název serveru v síti řetězec serveru = komentář, který je viditelný v okně vlastností procházení sítě host ok = ano # povolit přihlášení hosta (host ok = ne - host přihlášení je zakázáno) účet hosta = nikdo # jméno, pod kterým je povoleno přihlášení hosta zabezpečení = uživatel # Úroveň přístupu. uživatel - na úrovni uživatele zabezpečení = sdílení - autentizace na základě jména a hesla. Při ukládání databáze hesel na jiný SMB server se použijí hodnoty security = server a password server = name_server_NT. Pokud je server členem domény, použije se hodnota security = domain, přístupové heslo je specifikováno v souboru zadaném pomocí volby smb passwd file = /cesta/k/souboru.

Navíc lze využít registraci šifrovaná (šifrovaná) a nešifrovaná (prostý text) hesla. Posledně jmenované se používají v staré Windows(Windows for Workgroups, Windows 95 (OSR2), všechny verze Windows NT 3.x, Windows NT 4 (před aktualizací Service Pack 3)). Chcete-li povolit možnost použití šifrovaného hesla, použijte možnost šifrovat heslo = ano. Věnujte prosím této možnosti zvláštní pozornost. Starší distribuce Linuxu, které byly vytvořeny během éry Windows 95 (a později) stará verze Samba) šifrování hesel je ve výchozím nastavení zakázáno a samba dříve verze 2.0 tento režim vůbec nepodporuje (mimochodem, tato možnost a podobné - ty, které se netýkají přístupu ke konkrétním zdrojům - se používají i v klientovi).

Pro správné zobrazení Ruské názvy souborů vyžadují následující možnosti: kódová stránka klienta = 866 a znaková sada = koi8-r. V distribucích s dobrou lokalizací, například deriváty Mandrake a Russian, tato řada již existuje, někdy ji stačí pouze odkomentovat, ale ve většině ostatních si ji musíte přidat sami.

Možnost interfaces = 192.168.0.1/24 určuje, na které síti (rozhraní) má program běžet, pokud je server připojen k několika sítím najednou. Pokud nastavíte volbu bind interfaces only = yes, server bude odpovídat pouze na požadavky z těchto sítí.

hostitelé povolit = 192.168.1. 192.168.2. 127. - definuje klienty, kteří mají povolen přístup ke službě.

V globální sekci je možné využít různé proměnné pro flexibilnější konfiguraci chodu serveru. Po navázání spojení jsou za ně nahrazeny skutečné hodnoty. Například v souboru protokolu direktivy = /var/log/samba/%m.log pomáhá volba %m definovat samostatný soubor protokolu pro každý klientský počítač. Zde jsou nejběžnější proměnné používané v globální sekci:

%a - architektura OS na klientském počítači (možné hodnoty jsou Win95, Win NT, NEZNÁMÝ atd.);

%m je název NetBIOS klientského počítače;

%L je název NetBIOS serveru SAMBA;

%v - verze SAMBA;

%I je adresa IP klientského počítače;

%T - datum a čas;

%u je jméno uživatele pracujícího se službou;

%H je domovský adresář uživatele %u.

Pro flexibilnější nastavení se také používá direktiva include s použitím výše uvedených proměnných. Například: include = /etc/samba/smb.conf.%m – nyní, když je požadavek z prodejního počítače, pokud existuje soubor /etc/samba/smb.conf.sales, bude konfigurace převzata z tento soubor. Pokud pro nějaký stroj neexistuje samostatný soubor, pak se pro práci s ním použije společný soubor.

Nabízí se také zajímavá možnost stvoření virtuální server . Chcete-li to provést, použijte parametr netbios alias:

Aliasy Netbios = správce účetnictví prodeje

Nyní nařizujeme Sambě, aby používala svůj vlastní konfigurační soubor pro každý virtuální server:

Zahrnout = /etc/samba/smb.conf.%L

V okně síťového prohlížeče budou viditelné tři servery: odbyt, účetnictví, admin.

Povolení možností zachování velikosti písmen a krátkého zachování velikosti písmen způsobí, že server uloží veškerý vstup s rozlišením velkých a malých písmen (ve Windows nezáleží na velikosti písmen, na všech Unixech je to naopak).

Sekce umožňuje uživatelům připojit se ke svým pracovním adresářům, aniž by je výslovně popisovali. Když klient požaduje svůj adresář //sambaserver/sergej, stroj hledá odpovídající popis v souboru, a pokud jej nenajde, hledá přítomnost této sekce. Pokud klíč existuje, prohledá se soubor s hesly, aby se našel pracovní adresář uživatele, který požadavek podal, a pokud je nalezen, zpřístupní jej uživateli.

Typický popis tato sekce vypadá takto:

Komentář = Domovské adresáře # Komentář, který je viditelný v okně vlastností sítě browseable = no # určuje, zda se má zdroj zobrazit v seznamu procházení. zapisovatelný = ano # umožňuje (ne - zakazuje) zápis do domovského adresáře režim vytvoření = 0750 # oprávnění pro nově vytvořené soubory režim adresáře = 0775 # stejný, ale pouze pro adresáře

Po konfiguraci výchozího nastavení můžete vytvořit síťové prostředky, ke kterým bude mít přístup konkrétní uživatel nebo skupina uživatelů. Takový prostředek je vytvořen z již existujícího adresáře, proto zapíšeme do souboru:

Komentář = Cesta k veřejným věcem = /home/samba public = ano zapisovatelný = nelze tisknout = nelze zapisovat = správce, @prodej

Parametr path ukazuje na adresář, kde se nachází prostředek; parametr public udává, zda host může zdroj používat, a parametr printable určuje, zda lze zdroj použít k tisku. Volba seznamu zápisu vám umožňuje určit, kteří uživatelé mohou zapisovat do zdroje, bez ohledu na hodnotu zapisovatelného (v tento příklad toto je uživatel správce a prodejní skupina). Je možné použít i opačný seznam – přečtený seznam. Pokud je potřeba skrýt některé soubory, pak v Unixu/Linuxu k tomu musí název souboru začínat tečkou (parametr skrýt soubory tečky, který řídí zobrazení skryté soubory, ve výchozím nastavení se rovná Ano). Navíc je možné nastavit vzory pro názvy skrytých souborů, pro které se používá parametr skrýt soubory. Každý vzor začíná a končí znakem lomítka (/) a může obsahovat znaky použité v regulární výrazy. Například: skrýt soubory = /*.log/??.tmp/. Takové triky stojí uživatele Windows jen nastavením „Zobrazit skryté a systémové soubory» Průzkumník. Chcete-li s jistotou omezit dostupnost (možnost smazání) souboru (adresáře), použijte parametry souborů veto a odstraňte parametry souborů veto.

U CD mechanik je situace poněkud složitější. Jde o to, že v unixových systémech koncept disku jako takový chybí, a aby bylo možné získat přístup k požadovanému zařízení, musí být nejprve připojeno do stromu adresářů (# mount -t iso9660 /dev/cdrom / mnt/cdrom) a po použití, aby nedošlo ke zničení souborový systém, musí být odpojen (# umount /dev/cdrom), jinak se zařízení disku prostě nevzdá. Pokud na serveru běží démon autofs, pak je problém snadno vyřešen. Chcete-li, aby bylo zařízení, které nebylo nějakou dobu používáno, automaticky odpojeno, nastavte požadovaný parametr časového limitu v souboru /etc/auto.master. Například:

/mnt/auto/etc/ --timeout=5

(podobný řádek tam již je, stačí jej odkomentovat). Poté nastavte možnosti pro příslušné zařízení v souboru /etc/auto.tab:

cdrom -fstype=auto,ro:/dev/cdrom

Po tom všem zapíšeme do /etc/smb.conf následující řádky, abychom tento zdroj zpřístupnili:

Cesta=/mnt/cdrom zapisovatelný=ne

Druhou možností je použití direktiv preexec a postexec, které určují, které příkazy se mají provést při přístupu ke zdroji a po odpojení od něj (tyto parametry lze zadat pro jakýkoli zdroj a dokonce i v globální sekci, což otevírá velké možnosti) .

Cesta = /mnt/cdrom pouze pro čtení = ano kořenový preexec = připojení /mnt/cdrom # pouze kořenový kořenový adresář postexec = umount /mnt/cdrom # samozřejmě tyto body připojení musí být popsány v souboru /etc/fstab, jinak další informace musí být také poskytnuty.

Nyní se při přístupu k prostředku CD-ROM automaticky připojí a někdy i odpojí. Celý problém je v tom, že rozhodnutí o uzavření zdroje musí učinit server - klienti o tom zpravidla neinformují. Ale obvykle se to stane, protože prostředek je současně používán několika uživateli najednou nebo je ponechán na jednom počítači otevřít soubor na tomto zdroji (Zařízení je zaneprázdněno). Proto se CD-ROM automaticky neodpojí, jediný přijatelný způsob, jak uvolnit zdroj, je podívat se pomocí nástroje smbstatusčíslo procesu využívajícího tento zdroj a zabijte ho pomocí # kill číslo_pid (nebo kill -s HUP číslo_pid).

S požadovanou konfigurací nyní vytvoříme uživatelské účty (s výjimkou přihlášení hosta s minimálními oprávněními nikdo). K identifikaci uživatelů SAMBA se používá soubor /etc/samba/smbpasswd, který obsahuje uživatelská jména a šifrovaná hesla. Protože šifrovací mechanismus v sítích počítačů Windows není kompatibilní se standardními unixovými mechanismy, používá se k vyplnění souboru s hesly samostatný nástroj - smbpasswd.

# useradd -s /bin/false -d /home/samba/sergej -g prodej sergej # smbpasswd -a sergej # smbpasswd -e sergej

Tento příklad přidá nového uživatele sergej, patřící do skupiny odbyt, s fiktivním shellem (možnosti jsou /sbin/nologin, /dev/null) a domovským adresářem /home/samba/sergej. Poté vytvoříme heslo pro uživatele sergej a posledním krokem je povolení přístupu uživateli, protože. ve výchozím nastavení je zakázána. Zajímavý bod, který může být někdy matoucí. Jde o to, že když se počítač se systémem Windows NT/2000 připojí k serveru SAMBA, uživatel je vyzván, aby podle očekávání zadal přihlašovací jméno a heslo, a pokud je pro přístup použit počítač s Windows 9x/Me, je uživatel vyzván, aby zadejte pouze heslo a přihlášení se vygeneruje automaticky na základě přihlašovacího jména.

Můžete také mapovat více uživatelů Windows na jednoho uživatele Linux/Unix. K tomu je vytvořen mapovací soubor /etc/smbusers.map, ve kterém je každé mapování specifikováno na samostatném řádku:

user_linux = user_win1 user_win2 user_winN

V sekci přidejte řádek username map = /etc/smbusers.map. V čem uživatel systému Windows se musí přihlásit pomocí hesla uživatele, se kterým je spojen.

Pomocí SAMBA můžete uspořádat možnost síťového tisku z počítačů se systémem Windows (pokud plánujete samostatný tiskový server, stačí k tomu stroj s procesorem 486).

Chcete-li to provést, musíte v sekci napsat následující řádky:

Printcap name = /etc/printcap # Soubor s popisem pro tiskárny připojené k systému načíst tiskárny = yes # Označuje, že by měl být automaticky zahrnut do seznamu síťových prostředků printing = lprng # printing system (pro Linux lze použít i bsd) .

Cesta = /var/spool/samba # ukazuje na adresář, kde jsou umístěny tiskové úlohy, procházet = ano tisknout = ano pouze pro čtení = ano

Po vytvoření souboru jej otestujte pomocí nástroje testparm. Bohužel tento program umí pouze detekovat syntaktické chyby, nikoli logických, takže není zaručeno, že služby popsané v souboru budou fungovat správně (při testování se zobrazí všechna nastavení, i ta, která jsou nastavena standardně - výsledek si proto pečlivě prohlédněte). Pokud ale program nebude nadávat, můžete doufat, že se soubor při startu načte bez problémů. Správnou činnost tiskáren uvedených v souboru /etc/printcap se serverem SAMBA lze zkontrolovat pomocí nástroje testprns. Navíc nezapomeňte na soubory .log: když nastanou problémy, můžete tam někdy najít řešení.

Teď trochu o tom dobrém. Konfigurace Samby je poměrně složitý postup, ale distribuce je dodávána s webovým nástrojem pro správu tzv S.W.A.T(Samba Web Administration Tool, ). Swat je provozován jako služba nebo s server Apache a je určen pro úpravu souboru smb.conf, stejně jako pro kontrolu stavu, spouštění a zastavování démonů Samba a změnu uživatelských hesel. Aby to fungovalo jako služba, musí soubor /etc/services obsahovat řádek swat 901/tcp a soubor /etc/inetd.conf musí obsahovat stream swat tcp nowait.400 root /usr/local/samba/bin /swat swat (to je, pokud je použit síťový démon inetd, obvykle ve starších distribucích; moderní distribuce používají bezpečnější možnost - xinetd). Chcete-li použít swat v adresáři /etc/xinet.d, vytvořte soubor swat s následujícím obsahem:

Service swat (zakázat = žádný port = 901 socket_type = čekání streamu = no only_from = 127.0.0.1 # toto je řádek pro spuštění pouze z místního počítače uživatel = kořenový server = /usr/sbin/swat log_on_failure += USERID )

Nyní, chcete-li spustit Swat v okně prohlížeče, zadejte:

http://localhost:901

Předtím si ale nezapomeňte vytvořit uživatele admin výše popsaným způsobem. A nikdy nespouštějte službu SAMBA jako vykořenit.

Po všech změnách v souboru smb.conf je někdy potřeba restartovat démona:

Smb: /etc/rc.d/init.d/smb restart

Pokud po všech výše uvedených akcích nebylo možné zorganizovat přístup ke zdrojům SAMBA, pak takové nástroje jako ping(pro kontrolu dostupnosti hostitele v síti), nmblookup(pro dotazování na názvy NetBIOS), nebo jako poslední možnost tcpdump. A nezapomeňte na přístupová práva, protože přiřazením adresáře /gde/to/w/glubine uživateli dáte možnost číst (právo spouštět) a předchozí adresáře.

Nyní pojďme mluvit o použití klienta Samba, protože my (uživatelé Linuxu) chceme také pracovat se sítí Prostředky Windows. Chcete-li zjistit, jaké zdroje jsou k dispozici, musíte zadat příkaz /usr/bin/smbclient -L název_hostitele. Program se zeptá na heslo, na které ve většině případů stačí stisknout Enter. Nyní se pro připojení k požadovanému prostředku zadejte název počítače a požadovaný prostředek. Například:

# /usr/bin/smbclient\\Alex\Sound

(zde se pokoušíme připojit ke složce Zvuk na Alexově počítači). V důsledku toho, pokud je příkaz zadán správně a takový síťový prostředek existuje, měli byste být vyzváni k zadání hesla. Zadejte jej nebo stiskněte Enter, pokud pro přístup nepotřebujete heslo. Jako odpověď obdržíte výzvu klienta samba: smb: >. V budoucnu se pracuje pomocí sady příkazů, pomocí kterých můžete provádět všechny potřebné operace pro práci se soubory (kopírování, vytváření, přesouvání atd.). Nápovědu získáte zadáním smb: > help. Tento režim je poněkud nepohodlný, proto se ve většině případů používá modul smbfs, součástí samby; ale ve starších distribucích může být jádro sestaveno bez podpory smbfs, v takovém případě bude muset být přestavěno. Chcete-li připojit požadovaný prostředek, zadejte něco takového:

Mount -t smbfs -o username=user,password=123456,iocharset=koi8-r,codepage=866 //alex/sound /mnt/sound.

Pokud uživatelské jméno a heslo nezadáte, systém se vás na to zeptá. Nezapomeňte, že když se podíváte do souboru ~HOME/.bash_history, můžete heslo zjistit z příkazů, které jste napsali. Další jemnost: pokud program smbclient správně zobrazuje soubory s ruskými jmény, pak modul smbfs někdy nevěnuje absolutně žádnou pozornost jinému kódování, i když jej výslovně určíte. Říká se, že to lze opravit pomocí opravy, ale zatím jsem žádnou pro svůj Red Hat nenašel.

Pokud chcete, aby se sdílená složka SMB připojila automaticky při spuštění systému, přidejte do /etc/fstab tento řádek:

//[e-mail chráněný]/sound /mnt/alex/sound smbfs rw, noauto 0 0.

V tomto příkladu jménem uživatele host(pokud zdroj podporuje tohoto uživatele a pokud má tento uživatel přístup pouze s heslem, pak se nebojte: určitě o to budete požádáni) zvukový síťový zdroj na počítači alex je připojen k /mnt/alex/sound složku s možností zápisu do tohoto adresáře. Mimochodem, klient Samba dokonale vidí skryté síťové zdroje, tzn. ti, kteří mají jméno sítě končí znakem $.

Jak vidíte, musíte pracovat s příkazovým řádkem, což v moderním uživateli vyvolává tichou hrůzu. A zde mu šel svět OpenSource vstříc – bylo vytvořeno mnoho utilit, které vám umožňují pracovat se zdroji Samby známějším způsobem, stisknutím tlačítek v grafickém prostředí. Nejoblíbenější program zahrnutý v distribuci Mandrake a jeho derivátů, stejně jako Debian - gnomba. V každém případě to lze najít na většině serverů se softwarem pro Linux (viděl jsem to určitě na ftp://ftp.altlinux.ru/). Tento nástroj umožňuje zobrazit dostupné síťové zdroje () a v případě potřeby se připojit k požadovanému adresáři, přičemž je možná možnost připojení pomocí přihlašovacího jména a hesla pro zdroje, které to vyžadují. Je možné spustit správce souborů při připojení (ve výchozím nastavení gmc), vytváření adresářů pro připojitelné zdroje, nastavení možnosti automatického skenování při startu programu (ve výchozím nastavení případně pomocí protokolu SMB) a skenování podle IP adres (plánováno pomocí protokolu WINS). Z mně neznámých důvodů se v některých distribucích při skenování pomocí protokolu SMB nezobrazovaly síťové zdroje, takže vždy používám druhý způsob, jelikož funguje bezchybně, stačí nastavit rozsah IP adres pro skenování (pokud víš). Pro správné zobrazení ruských názvů souborů nezapomeňte na kartu nainstalovat fonty koi8-r Volby > Výběr písma a také zkontrolujte řádky označující kódování cyrilice v souboru smb.conf (viz výše).

Pokud gnomba může pouze připojovat a odpojovat prostředky, pak program xsmbrowser také umožňuje zadat je jako složky na místním počítači (). Je pravda, že se mi ještě nepodařilo přimět tento program, aby porozuměl souborům s ruskými jmény, ale existují také pozitivní aspekty: když je tento program spuštěn, všechny příkazy pro připojení a různé síťové požadavky se zobrazují na konzole, což vám umožňuje porozumět jim studna. Vývojáři KDE se také pokusili: prostřednictvím Předvolby > Informace utilita k dispozici Stav Samby, zobrazující všechna spojení do/z místní počítač, což je také pohodlný nástroj pro prohlížení souborů .log. Obslužný program poskytuje podobné informace. komba, který lze nalézt na http://linux.tucows.com/ ().

Jak rád bych vám toho řekl víc, ale časopis je časopis – všechno se do vás nevejde. Dále vám na pomoc přijde všudypřítomný muž a informace. Také všechny potřebné referenční informace lze získat z nástroje SWAT, navíc byla v Red Hat 7.3 nalezena kniha Using Samba Robert "a Eckstein"(jazyk angličtina - špatný, zcela zdarma - dobrý: /usr/share/swat/using_samba), dostupné také od SWAT (). Adresář /usr/share/doc/samba obsahuje další dokumentaci, často kladené otázky a ukázkové konfigurační soubory. Na různých fórech můžete najít dost protichůdné názory na práci Samby, od extrémně negativních až po naprostou radost. Osobně jsem na straně zastánců tohoto emulátor Windows NT navíc podle výsledků testů se stejným hardwarem vykazuje server Samba výkon o cca 25-30% vyšší než počítač se systémem od Microsoftu. Hodně štěstí.

V tomto tutoriálu se naučíme, jak nainstalovat a nastavit server Samba na Ubuntu 16.04. Samba je bezplatná a open source implementace protokolu SMB/CIFS pro Unix a Linux, která umožňuje komunikaci mezi soubory a tiskárnami na strojích Unix/ a Windows v místní síti.

Samba je softwarový balík, z nichž dva nejdůležitější jsou:

  • smbd: Poskytuje službu SMB/CIFS (sdílení souborů a tiskáren) a může také fungovat jako řadič domény Windows.
  • nmbd: poskytuje službu pojmenování NetBIOS

Jak nainstalovat Samba Server na Ubuntu 16.04

Samba je ve většině Linuxové distribuce. Chcete-li nainstalovat Sambu na , stačí spustit:

sudo apt nainstalovat sambu

Poslední stabilní verze 4.5.3 je k dispozici, vydáno 19. prosince 2016 Pro kontrolu verze Samba , běh

Sudo smbstatus

sudo smbd --verze

Ukázkový výstup:

Samba verze 4.3.11-Ubuntu

Chcete-li zkontrolovat, zda je služba Samba spuštěna, spusťte následující příkazy.

systemctl status smbd systemctl status nmbd

Chcete-li spustit tyto dvě služby, spusťte následující příkazy:

sudo systemctl start smbd sudo systemctl start nmbd

po spuštění, smbd bude poslouchat na portech 139 a 445.

Úprava konfiguračního souboru

Existuje pouze jeden konfigurační soubor, který je třeba upravit: /etc/samba/smb.conf .

sudo nano /etc/samba/smb.conf

V sekci zkontrolujte hodnotu pracovní skupina patří do pracovní skupiny počítačů se systémem Windows.

Pracovní skupina = PRACOVNÍ SKUPINA

Přejděte dolů na konec souboru. (PROTI textový editor nano, stiskněte CTRL+W a poté CTRL+V.) Povolte novou sekci, jak je uvedeno níže. Nahraďte uživatelské jméno požadovaným uživatelským jménem.

Komentář = Home Public Folder path = /home/username/ zapisovatelný = ano platní uživatelé = uživatelské jméno

Home Share je název složky, která se zobrazí v síti Windows. Komentář je popis sdílené složky. Následující 3 řádky označují, že oprávnění k přístupu do adresáře /home/username/, do kterého lze také zapisovat, mají pouze vybraní platní uživatelé. Výše uvedená konfigurace zakáže anonymní přístup.

Uložte a zavřete soubor a poté spusťte následující příkaz, abyste zkontrolovali, zda se nevyskytují chyby syntaxe.

testparm

Vytvoření uživatele

Samba je výchozím režimem zabezpečení uživatel, což znamená, že klienti musí zadat uživatelské jméno a heslo pro přístup ke sdílené složce. Chcete-li přidat uživatele do Ubuntu, spusťte následující příkaz:

uživatelské jméno sudo adduser

Budete vyzváni k nastavení unixového hesla. Kromě toho musíte pro uživatele nastavit samostatné heslo Samba pomocí následujícího příkazu:

sudo smbpasswd -a uživatelské jméno

Nyní zbývá pouze restartovat démona smbd.

sudo systemctl restart smbd

Samba přístup ke sdílené složce z Windows

Na Počítač se systémem Windows který je ve stejné síti, otevřete Průzkumník souborů a klikněte na Síť v levém podokně. Uvidíte server samby. Dvojklik sdílená složka a zadejte své uživatelské jméno a heslo.

Přístup Samba ke sdílené složce z počítače Ubuntu

Ve Správci souborů přejděte na kartu Síť v levém podokně a vyberte Síť Windows.

Vyberte pracovní skupinu, server Samba a sdílenou složku a poté zadejte uživatelské jméno a heslo Samba.

Přidání více uživatelů nebo skupin

Pokud více účtů potřebuje získat přístup ke sdílené složce, musíte změnit legální uživatele, jak je uvedeno v souboru /etc/samba/smb.conf níže.

Platní uživatelé = uživatel1, uživatel2, uživatel3

Také použijte smbpasswd k nastavení hesla Samba pro každého z těchto uživatelů.

sudo smbpasswd -a uživatel1 sudo smbpasswd -a uživatel2 sudo smbpasswd -a uživatel3

Chcete-li skupině uživatelů povolit přístup ke sdílené složce, použijte následující konfiguraci /etc/samba/smb.conf.

Platní uživatelé = @sambashare

Vytvořte skupinu.

sudo groupadd samshare

Poté přidejte uživatele do této skupiny

sudo gpasswd -a uživatel1 sambahare sudo gpasswd -a uživatel2 sambahare sudo gpasswd -a uživatel3 sambahare

Skupina musí mít oprávnění k zápisu do sdílené složky, čehož lze dosáhnout pomocí následujících dvou příkazů.

Nastavit samshare jako vlastníka skupiny sdílené složky:

sudo chgrp sambshare /cesta/ke/sdílené/složce -R

Udělte skupině přístup pro zápis.

sudo chmod g+w /cesta/ke/sdílená/složka/ -R

Doufám, že vám tento článek pomohl nastavit server Samba na Ubuntu 16.04. Jako vždy, pokud vám tento příspěvek přišel užitečný, zanechte prosím komentář.

Implementace síťových protokolů Server Message Block (SMB) a Common Internet File System (CIFS). Hlavním účelem je sdílení souborů a tiskáren mezi systémy Linux a Windows.

Samba sestává z několika démonů, kteří běží na pozadí a poskytují služby, a řady nástrojů příkazového řádku pro interakci se službami Windows:

  • smbd- démon, který je serverem SMB pro souborové a tiskové služby;
  • nmbd- démon, který poskytuje služby pojmenování NetBIOS;
  • smblient- obslužný program poskytuje přístup z příkazového řádku k prostředkům SMB. Umožňuje také získat seznamy sdílených zdrojů na vzdálených serverech a zobrazit síťové prostředí;
  • smb.conf- konfigurační soubor obsahující nastavení všech nástrojů Samba;

Seznam portů používaných Sambou

  • podíl- Tento režim zabezpečení emuluje metodu ověřování používanou operačními systémy Windows 9x/Windows Me. V tomto režimu jsou uživatelská jména ignorována a sdíleným položkám jsou přidělována hesla. V tomto režimu se Samba pokouší použít klientem poskytnuté heslo, které mohou používat různí uživatelé.
  • uživatel* - tento bezpečnostní režim je nastaven ve výchozím nastavení a používá uživatelské jméno a heslo pro ověřování, jak se obvykle v Linuxu dělá. Většina moderních operačních systémů ukládá hesla v zašifrované databázi, kterou používá pouze Samba.
  • server- Tento bezpečnostní režim se používá, když je nutné, aby se Samba autentizovala na jiném serveru. Pro klienty tento režim vypadá stejně jako autentizace na úrovni uživatele (uživatelský režim), ale ve skutečnosti Samba kontaktuje server zadaný v parametru serveru hesel, aby provedl ověření.
  • doména- pomocí tohoto režimu zabezpečení se můžete plně připojit k doméně Windows; pro klienty to vypadá stejně jako autentizace na úrovni uživatele. Na rozdíl od autentizace na úrovni serveru využívá autentizace na základě domény bezpečnější výměnu hesel na úrovni domény. Úplné připojení k doméně vyžaduje spuštění dalších příkazů v systému Samba a případně na řadiči domény.
  • reklamy- tento režim zabezpečení je podobný metodě ověřování domény, ale vyžaduje řadič domény Aktivní adresář doménové služby.

Kompletní seznam parametrů Samba je v manuálových stránkách .

Výše byl příklad s přístupem ke sdílenému adresáři. Zvažte další příklad se soukromým adresářem, do kterého je přístup pouze pomocí přihlašovacího jména a hesla.

Vytvořte skupinu a přidejte do ní uživatele

sudo groupadd smbgrp sudo usermod -a -G smbgrp proft

Vytvořte adresář pro uživatele a nastavte oprávnění

sudo mkdir -p /srv/samba/proft sudo chown -R proft:smbgrp /srv/samba/proft sudo chmod -R 0770 /srv/samba/proft

Vytvořte uživatele samby

sudo smbpasswd -a proft

Přidejte nový prostředek do /etc/samba/smb.conf

cesta=/srv/samba/proft platní uživatelé=@smbgrp host ok=no zapisovatelný=ano procházetelný=ano

Restartujeme server

sudo systemctl restart smbd

Příklad nastavení zdroje, který má symbolický odkaz do uživatelské složky ( /srv/samba/media/video » /home/proft/video)

Cesta=/srv/samba/media host ok=ano pouze pro čtení=ano prohlížet=ano vynutit uživatele=zisk

Nastavení klienta

Zobrazení sdílených počítačů

Smbclient -L 192.168.24.101 -U%

Další způsob připojení anonymního uživatele pomocí příkazového řádku

Smbclient -U none //192.168.24.101/public ls

Pokud je server nakonfigurován s více než vysoká úroveň zabezpečení, možná budete muset předat uživatelské jméno nebo název domény pomocí voleb -W a -U.

Smbclient -L 192.168.24.101 -U proft -W WORKGROUP

Montáž sdílení samba

# vytvořit bod připojení mkdir -p ~/shares/public # připojit zdroj # pro anonymního uživatele nikdo nepřipojit -t cifs //192.168.24.101/public /home/proft/shares/public -o user=nobody,password=, workgroup= WORKGROUP,ip=192.168.24.101,utf8 # pro uživatele proft mount -t cifs //192.168.24.101/public /home/proft/shares/public -o user=proft,password=1,workgroup=WORKGROUP,ip= 192.168, 24.101,utf8

Více lepší hesla uložit v samostatný soubor

# sudo vim /etc/samba/sambacreds username=proft password=1 username=noboy password=

Nastavte oprávnění na 0600

sudo chmod 0600 /etc/samba/sambacreds

Nová linka k připojení

Mount -t cifs //192.168.24.101/public /home/proft/shares/public -o user=proft,credentials=/etc/samba/sambacreds,workgroup=WORKGROUP,ip=192.168.24.101

A příklad pro /etc/fstab

//192.168.24.101/public /home/proft/shares/public cifs noauto,username=proft,credentials=/etc/samba/sambacreds,workgroup=WORKGROUP,ip=192.168.24.101 0 0

Otevřete zdroj v správce souborů Nautilus/Nemo/etc může být na této cestě smb://192.268.24.101.

Pokud píše Nemo Nemo nezvládne umístění „čích“. znamená, že balíček chybí. gvfs-smb.

Přístup k serveru z klienta Windows a Android

Pod Windows můžete zjistit pracovní skupinu z konzoly pomocí

Síťová konfigurace pracovní stanice

Prostředky můžete otevřít na vzdáleném počítači zadáním do řádku Průzkumníka (Explorer) nebo adresy UNC Spustit (Start - Spustit): \192.168.24.101 .

V systému Android se můžete k serveru připojit pomocí ES File Explorer, na kartě Síť přidejte server pouze podle IP (bez určení schématu, smb). Poté můžete otevřít sdílené prostředky. Pro statistiku: HDRIP-film běží bez zpomalení.

Čtení navíc

Samba- program, který vám umožní přístup síťové disky na různých operačních systémech prostřednictvím protokolu SMB/CIFS. Má klientskou a serverovou část. Je to svobodný software, vydaný pod licencí GPL.

Samba běží na většině systémů podobných Unixu, jako je GNU/Linux, Solaris kompatibilní s POSIX a Mac OS X Server, různé varianty BSD, OS /2, Windows. Samba součástí téměř všech distribucí GNU/Linuxu, samozřejmě včetně Ubuntu.

Instalace

Chcete-li vytvořit sdílenou složku v Desktop Ubuntu stačí kliknout klikněte pravým tlačítkem myši klikněte na složku a vyberte položku nabídky "Publikovat složku". Není potřeba upravovat žádné konfigurační soubory. Vše popsané níže platí pouze pro ruční nastavení, například v případě vytvoření souborového serveru.

Pro instalaci stačí otevřít terminál a napsat:

sudo apt-get nainstalujte sambu

Aplikace se automaticky stáhne a nainstaluje.

Nastavení

Udělejme to pomocí terminálu záloha počáteční konfigurační soubor:

sudo cp /etc/samba/smb.conf(,.bak)

Nyní můžete upravit soubor nastavení /etc/samba/smb.conf, k tomu jej otevřete v libovolném textovém editoru s právy superuživatele. Například takto:

sudo nano /etc/samba/smb.conf

To, co je napsáno níže, je obecně jen jeden konkrétní případ použití Samby a v obrovském počtu případů je vše nakonfigurováno absolutně špatně. Článek je potřeba opravit, zaměřit se na možnosti Samby a nejen na použití tohoto programu jako úložiště souborů s lokální autorizací. Příklad s ukládáním souborů je lepší vzít v samostatném podrobném článku.

Příklad nastavení Samby jako samostatného souborového serveru s autorizací:

; Globální nastavení serveru; Obecná nastavení serveru; Název počítače, který se zobrazí v síťovém prostředí netbios name = main-server server string = ; Workgroup klienti workgroup = WORKGROUP oznámit verzi = 5.0 možnosti soketu = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 passdb backend = zabezpečení tdbsam = uživatelská nulová hesla = true ; Uživatelské jméno alias soubor uživatelské jméno map = /etc/samba/smbusers jméno resolve order = hosts wins bcast ; Podpora wins je nastavena na ano, pokud je vaše Samba nmbd(8) serverem WINS. Nenastavujte tuto možnost na ano, pokud nemáte více podsítí a nechcete, aby vaše nmbd fungovala jako server WINS. Nikdy nenastavujte tuto možnost na ano na více než jednom počítači ve stejné podsíti. vyhrává podpora = ne ; Tiskárna podporuje tisk = CUPS printcap name = CUPS; Soubor protokolu protokolů = /var/log/samba/log.%m syslog = 0 pouze syslog = ne; Nastavení vazby na rozhraní, na kterých se má naslouchat, pokud není zadáno, naslouchá na všech rozhraních; rozhraní = lo, eth0 ; svázat pouze rozhraní = true ; ; ; cesta = /var/lib/samba/printers ; procházet = ano ; host ok = ano ; pouze pro čtení = ano ; zapisovat seznam = root ; vytvořit masku = 0664 ; maska ​​adresáře = 0775 ; ; ; cesta = /tmp ; tisknutelné = ano ; host ok = ano ; procházet = ne; ; ;cesta = /media/cdrom ;prohlížení = ano ;pouze pro čtení = ano ;host ok = ano ; Shara pevný disk; Název koulí, viditelný pro zákazníky ; Cesta ke sdílenému disku cesta = /media/sda1 ; Je možné procházet browseable = yes read only = no guest ok = no create mask = 0644 directory mask = 0755 ; Vazba na konkrétní uživatelské jméno nebo skupinu, jména oddělená mezerami; vynutit uživatele = uživatel1 uživatel2 ; skupina síly = skupina1 skupina2 ; Další HDD, podobně jako výše cesta = /media/sde1 browseable = yes read only = no guest ok = no create mask = 0644 directory mask = 0755

Nyní musíme jednat s uživateli.

Samba používá uživatele, kteří jsou již v systému, vezměme si například jméno uživatele, řekněme, že je již v systému, musíte jej přidat do databáze SMB a přiřadit heslo pro přístup ke sdíleným složkám, udělejme to pomocí příkaz:

Smbpasswd -a uživatel

Budete vyzváni k zadání hesla, uživatel bude přidán do databáze, nyní je potřeba tohoto uživatele povolit.

Uživatel Smbpasswd -e

Dále vytvoříme alias pro uživatele s uživatelským jménem, ​​abychom k němu měli snadnější přístup Stroje se systémem Windows na kterém máme například uživatele jménem Admin, za tímto účelem vytvoříme a upravíme soubor /etc/samba/smbusers:

sudo touch /etc/samba/smbusers sudo gedit /etc/samba/smbusers

Napište do souboru několik řádků

# Unix_name = SMB_name1 SMB_name2 user = Správce

Tím je nastavení dokončeno, restartujte Sambu.

Nejjednodušší GUI pro Sambu můžete nainstalovat pomocí příkazu:

sudo apt-get install system-config-samba

Spouští se příkazem:

sudo system-config-samba

Všechny změny zapíše do konfiguračního souboru samby.

Pro vzdálená správa Samba jako webové rozhraní pro Sambu je skvělá

Tento článek se zaměří na vytvoření bezdrátové sítě LAN pro zařízení s různými operačními systémy. Systémy Windows, Linux, Android pomocí Samby.

V dnešní době má téměř každý byt wifi síť, stejně jako velké množství různých zařízení (notebooky, smartphony, tablety, Android TV Box). V tomto ohledu dříve nebo později vyvstane potřeba spojit všechna dostupná zařízení do jednoho domácí síť pro volný přístup ke všem druhům souborů z libovolného gadgetu.

Ve skutečnosti o tom bude řeč v tomto opusu. Pojďme tedy začít.

Pro budování sítě využijeme hotové řešení s názvem Samba. Toto je balíček bezplatné programy open source software, který umožňuje připojení k síťovým jednotkám, tiskárnám a dalším zařízením na různých operačních systémech pomocí vlastního protokolu SMB / CIFS.

Software se skládá ze dvou částí – serveru a klienta. Na jedno ze zařízení, které bude podle definice hlavní, nainstalujeme server Samba, na všechny ostatní klienty Samba.

Instalace backendu Samba

V mém případě jsem pro serverové zařízení zvolil notebook, na kterém jsou paralelně nainstalovány Windows 7 a Ubuntu Mate 16.04. Pojďme se blíže podívat na proces instalace a konfigurace Samby pro oba operační systémy.

Nastavení serveru samba pod Linuxem

Ve výchozím nastavení Ubuntu nemá nainstalovanou Sambu, takže je třeba to udělat, než budete pokračovat. Chcete-li následně neupravovat konfigurační soubor Samba prostřednictvím terminálu, nainstalujte si volitelně program Gadmin-Samba, který kromě balíčků serveru Samba obsahuje GUI.

Chcete-li nainstalovat, zadejte terminál:

Sudo apt install gadmin-samba

Po dokončení instalace spusťte Gadmin Samba. Rozhraní aplikace není rusifikované, ale je docela snadné pochopit nastavení.


V programu je mnoho nastavení, ale celkově nás v našem případě zajímá karta „uživatelé“. Přejděte na něj a přidejte nového uživatele.


Stiskneme tlačítko „Nový uživatel“, v aktualizovaném okně zadáme uživatelské jméno, vymyslíme heslo, přidáme jej do skupiny (abychom „nevynalezli kolo“, určete stávajícího, konkrétně „sambausers“) a nastavte domovský adresář pro soubory. Poté klikněte na „Použít“.


HD Videobox - nový uživatel

Chcete-li použít změny, restartujte server pomocí tlačítek „deaktivovat“ a „aktivovat“ umístěných v levém horním rohu okna aplikace.


Nezapomeňte také nastavit oprávnění na "sdíleno" pro sdílení složky. To lze provést buď prostřednictvím terminálu, nebo prostřednictvím grafického uživatelského rozhraní průzkumníka souborů nautilus.


Nautilus - změna oprávnění


Nautilus - oprávnění k zápisu souborů

Nastavení serveru samba pod Windows

V případě Windows je vše mnohem prozaičtější, jelikož je zde použita Samba operační systém výchozí.

V zásadě můžete použít stávající účet nebo povolit přístup pro hosty. Případně si můžete vytvořit jiný účet, jehož údaje budou použity pro přístup k síti

Chcete-li vytvořit nový účet musíte jít do "ovládacího panelu", vybrat "správa uživatelských účtů" a vytvořit nový účet s heslem.


Přidání nového účtu

Při vytváření nového uživatele budete muset vybrat typ účtu, vymyslet jméno a heslo.


V poslední fázi budete muset nastavit práva pro zobrazení změn ve „sdílených“ složkách. Můžete to udělat ve standardu Průzkumník Windows přes bod kontextová nabídka"vlastnosti", ve vztahu ke složce, kterou potřebujete.


Sdílení složky


Přidání uživatele a změna oprávnění složky

Po postupu pro vytvoření nového uživatele je nutné provést přechod pro aktuální relaci, aby se změny projevily.

Instalace klienta Samba na Android

Mít přístup Samba server a v souladu s tím i síťové disky na zařízeních pod Ovládání Android Doporučuji používat kořenová aplikace Průzkumník (odkaz ke stažení) plná verzežádné reklamy na konci článku).