Hlavní navigace

Samba - Tanec s Okny: sekce global souboru smb.conf

13. 4. 2000
Doba čtení: 4 minuty

Sdílet

Zažil jsem jedno krajně nepříjemné překvapení. Můj RedHat 6.1Cz mi po startu vypsal, že nelze připojit root partition, protože tato má poškozený superblock. Po vlastních neúspěšných pokusech o nápravu, jsem z konference linux@linux.cz obdržel radu - příkaz "e2fsck -b 32768 /dev/hda8". Díky všem, kteří se mi snažili pomoci. Tento článek byl totiž umístěn na zmíněné postižené partition.

Základním konfiguračním souborem Samby je soubor „/etc/smb.conf“. Jeho příklad byl uveden v předminulém článku. Pokusím se vysvětlit jednotlivá nastavení. Začneme sekcí „global“

[global]
    workgroup = WORKGROUP
    server string = Linux-Samba-server
    client code page = 852
    character set = ISO8859-2
    printcap name = /etc/printcap
    load printers = True
    printing = bsd
    log file = /var/log/samba/log.%m
    max log size = 50
    socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
    encrypt passwords = yes
    smb passwd file = /etc/smbpasswd
    unix password sync = yes
    null passwords = yes
    dns proxy = no
    share modes = yes
    map to guest = Bad User
a. Název počítače a národní kódování v názvech souborů.
workgroup = WORKGROUP

 – pracovní skupina Windows nebo doména Windows NT. Do této skupiny bude váš počítač (server) zařazen
server string = Linux-Samba-server – komentář, který se objeví v okolních počítačích u jména vašeho počítače
client code page = 852 – znaková sady klienta (852 – české). Díky tomuto parametru jsou podporovány názvy souborů ve sdílených složkách Samby v příslušném národním kódování
character set = ISO8859–2 – znaková sada systému (ISO8859–2 – česká). Tento parametr zajistí, že se názvy souborů interpretují i v souborovém systému serveru ve správném národním kódování. Samozřejmým předpokladem musí být podpora příslušné znakové sady operačním systémem.

b. Nastavení tiskáren
printcap name = /etc/printcap – název konfiguračního souboru tiskáren
load printers = True – všechny tiskárny uvedené v „/etc/printcap“ budou automaticky sdíleny přes Sambu
printing = bsd – tiskový model nastavený v operačním systému serveru
Moje Samba má nastaveny dvě tiskárny. Obě sdílí stejný adresář – „/var/spool/lpd/sam­ba“ Je nutno uvolnit práva pro zápis do tohoto adresáře pro všechny uživatele, kteří budou dané tiskárny sdílet. Parametry platí bez výhrad jen pro Linux. Unixy mají způsob konfigurace tiskáren dost nejednotný (bohužel). Úspěšné zvládnutí tisku na Sambě je tedy podmíněno především úspěšným zvládnutím tisku ve vašem operačním systému.

c. Nastavení logování Samby.
log file = /var/log/samba/log­.%m – každá stanice má v uvedeném adresáři vlastní log
max log size = 50 – maximální velikost logu. Doporučuji čas od času logy prohlédnout a „promazat“. Logování je velice cenné při odlaďování Samby.

d. Nastavení sítě a sdílené paměti Samby.
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 – parametr TCP_NODELAY je dolaďujícím parametrem výkonu sítě TCP/IP. Dva následující číselné parametry uvádějí velikost sdílené paměti Samby. Nastavení těchto parametrů závisí na konkrétním provedení vaší sítě. Souhrnně patří tyto položky do oblasti „ladění výkonu Samby“. Dá se tedy bez jejich nastavení docela dobře obejít. U více zatíženého serveru se vyplatí, se z jejich nastavením trochu pohrát. Více se dozvíte ze souborů speed.txt a speed2.txt z dokumentace Sam­by.

e. Hesla v Sambě
Uživatelská hesla jsou jedním ze základních kamenů úrazu při nastavování Samby. Je to především proto, že tato záležitost je u různých verzí Windows řešena různě. Windows 95 OSR1, Windows NT 3.x, Windows NT 4.0 bez Servis Packu 3 a stařičké Windows for Workgroups (Win3.11) pracují s hesly ve tvaru jednoduchého textu (plain text). Ostatní verze Windows hesla kódují. Máte dvě možnosti jak dosáhnout funkčnosti hesel uživatelů Samby:

  1. Donutit všechny stanice Windows, aby posílaly hesla ve tvaru čistého textu. Nejsnáze toho dosáhnete přidáním příslušného souboru „vyexportované části registru“, který najdete v dokumentaci Samby, do registru Windows. Například uvádím postup pro Windows 98. Zkopírujte si soubor „/usr/doc/samba-2.0.5a/docs/Win98_Pla­inPassword.reg“ z vašeho serveru se Sambou na příslušnou stanici. Kopírovat tento soubor můžete přes adresář „public“ – viz. minulý článek nebo třeba přes FTP. Jakmile máte „Win98_PlainPas­sword.reg“ na stanici klikněte na něj v Průzkumníku pravým tlačítkem myši a vyberte z plovoucího menu položku „Sloučit“. Po restartu budou takto upravené Windows 98 posílat hesla ve tvaru čistého textu. Samba samotná defaultně hesla nekóduje. Řádek „encrypt passwor­ds = yes“ ponechte tedy zakomentovaný nebo tento parametr nastavte na „encrypt passwor­ds = no“.

  2. Naučit Sambu kódovat hesla. To je v případě velkého množství stanic asi jediné rozumné řešení. Uvedené řešení platí stoprocentně pouze pro Linux, na Unixech může dojít k mírným odchylkám. Aby Samba zvládala kódovaná hesla musí být v souladu nastavení souborů „/etc/smb.conf“ a „/etc/smbpasswd“. Zde jsou příslušné řádky v /etc/smb.confen­crypt passwords = yes – Samba je má nastaveno dekódování hesel
    smb passwd file = /etc/smbpasswd – cesta k souboru s hesly pro Sambu. Bez tohoto souboru není Samba schopna hesla dekódovat
    unix password sync = yes – hesla v /etc/smbpasswd jsou automaticky synchronizována s hesly příslušných uživatelů (unixových, linuxových) serveru
    null passwords = yes – Jsou povoleni klienti bez hesla (guest).

Z hlediska bezpečnosti je nastavení s kódováním hesel kvalitnější. Takto nastavená Samba samozřejmě akceptuje i hesla ve tvaru čistého textu.

f. Dokončení sekce „global“
dns proxy = no – funkce nastavuje u Samby, zda má hledat jména (Netbios-name) počítačů přes DNS nebo ne
share modes = yes – sdílení paměti serveru pro běh aplikací povoleno
map to guest = Bad User – Klienti bez hesla nebo klienti bez platné autentifikace získají autentifikaci hosta (nobody). Tato autentifikace je užitečná především při „odlaďování“ Samby.

CS24_early

Na závěr ještě oprava k předchozímu článku. Samozřejmě že příkazy „make“ a „make install“ není nutno psát s udáním cesty. Dále váš server se Sambou nemusí být nutně ve stejné pracovní skupině jako stanice. Potom jej najdete v „Okolních počítačích“ v příslušné skupině, kterou jste mu určili. Osobně stejnou pracovní skupinu pro server i příslušné stanice doporučuji :-).

Příště dokončíme výklad vzorového souboru „smb.conf“ a podíváme se podrobněji na nastavení klientů.

Byl pro vás článek přínosný?

Autor článku

Autor je provozovatelem stránek kancelar.jinak.cz...