Selv om denne bog handler om Linux, skal man ikke glemme, at der findes andre styresystemer. Et af de mere udbredte er Windows - herunder wfw/95/98/NT, som alle har indbygget muligheden for at fungere i netværk. Hvis man påtænker at opbygge eller allerede har et heterogent netværk af Windows- og UNIX-computere, skal man kigge nærmere på SAMBA.
SAMBA er Open Source Software og kan dermed erhverves gratis. I Danmark kan SAMBA bedst downloades fra http://sunsite.auc.dk/samba/samba.html, ellers fra http://www.samba.org.
Med SAMBA installeret får man stort set samme muligheder, som hvis man investerer i en langt dyrere og meget mere hardwarekrævende NT licens eller en OS/2 Lan Manager. Det, SAMBA først og fremmest kan tilbyde, er at fungere som fil- og printerserver. Derudover kan SAMBA også fungere som domain controller for Windows 95/98 klienter. Fuld domain control for Windows NT domæner findes i version 2.0.
Med SAMBA installeret (og ikke mindst konfigureret) vil serveren kunne ses, hvis man klikker på "network neighbourhood" (på dansk: "andre computere") eller på samme netværk i Windows 95/98/NT.
Den letteste måde at installere/opgradere SAMBA på er ved at bruge en prækompileret pakke. Sådanne pakker kan hentes på http://sunsite.auc.dk/samba/ftp/Binary_Packages/, og de findes til flere forskellige Linux-distributioner, bl.a. Red Hat, Caldera, Debian, Slackware og SuSE. Hvis man holder af at kompilere sin kildetekst selv, kan den hentes her: ftp://sunsite.auc.dk/pub/unix/networking/samba. Vi vil dog meget anbefale at bruge en prækompileret pakke, og vi vil i eksemplet gå ud fra, at du har Red Hat installeret. Når du har hentet rpm-pakken, skriver du bare:
[root@linus /root]# rpm -ivh samba-2.0.3-8.i386.rpm |
Når du har fået installeret SAMBA serveren, skal du have den konfigureret. Dette gøres ved at rette i filen /etc/smb.conf. Denne fil kan virke meget skræmmende, da der er vel omkring 80 parametre, man kan sætte. Det skal du dog af to grunde ikke lade dig gå på af: For det første har de fleste parametre udmærkede default værdier, så dem behøver man slet ikke at bekymre sig om. For det andet bliver der installeret en udmærket default /etc/smb.conf, som virker uden de store ændringer. Denne default smb.conf er desuden meget velkommenteret, hvilket yderligere letter tilpasning. Her er et eksempel på en lille /etc/smb.conf fil, der ud over at sætte SAMBA op som fil- og printerserver også konfigurerer SAMBA som domain controller.
[global] workgroup = hjemme printing = bsd printcap name = /etc/printcap load printers = yes log file = /var/log/samba-log.%m short preserve case = yes preserve case = yes lock directory = /var/lock/samba locking = yes strict locking = yes security = user socket options = TCP_NODELAY domain master = yes domain logons = yes [homes] comment = Home Directories read only = no create mode = 0750 [deskjet870cxi] comment = All Printers path = /var/spool/samba browseable = yes printable = yes ; Set public = yes to allow user 'guest account' to print public = no writable = no create mode = 0700 |
Det skal også nævnes at der er et grafisk konfigurationsværktøj swat til SAMBA, som virker sammen med Netscape.
SMB bruger en krypteringsteknik, der ligner standard UNIX kryptering. Det er dog kun tilsyneladende, at de to teknikker er ens, UNIX variationen sender nemlig typisk kodeordet i klar tekst over netværket, når man skal logge ind. SMB sender i modsætning hertil en kodet version af passwordet.
Hvorvidt man vælger at bruge krypterede passwords eller ej, er op til den enkelte at afgøre, da der er både fordele og ulemper.
Fordele ved krypterede passwords:
Sikkerhed. Password bliver ikke sendt over netværket i klar tekst.
Windows 95 med osr2, Windows 98 og NT vil som standard kun tale med en server, der anvender krypterede passwords.
Der skal vedligeholdes endnu en passwordfil.
Hvis du allerede bruger services, der sender password i klar tekst (F.eks telnet og ftp), gør det ikke den store forskel, om SMB også gør det.
Hvis du sidder på et sikkert net, f.eks et lille hjemmenetværk eller et lille firma med få og venlige brugere, er der ingen grund til at bruge krypterede passwords.
Windows 98 og Windows NT 4 (sp3 og senere) kræver som default brug af krypterede kodeord. Det betyder, at du har to valg:
Du konfigurerer SAMBA til at bruge krypterede passwords.
Du ændrer Windows 98/95/NT registry, så de ikke kræver krypterede passwords.
Konfigurering gøres ved at føje følgende linje til [global] sektionen i /etc/smb.conf
encrypt passwords = yes |
Dernæst skal du lave en ny password fil til brug for SAMBA alene. Der findes et shell script, der kan generere en SAMBA password fil ud fra den eksisterende UNIX password fil. Det gør du med følgende kommando:
[daisy@linus daisy]$ cat /etc/passwd | mksmbpasswd.sh >/etc/smbpasswd |
I SuSE 6.3 er smbpasswd.sh placeret i kataloget /usr/sbin, og biblioteksplaceringen skal med i kommandoen. Desuden har filen i den distribution ikke rettigheder til at kunne eksekveres, hvilken du således skal tildeles, før kommandoen udføres.
Kommandoen opretter filen til de krypterede passwords, men den opretter ikke selve de krypterede passwords. Uanset om du vælger, at brugerne skal have samme SAMBA-passwords, som de er tildelt som brugere i dit Linux-system, skal du alligevel bagefter tildele dem krypterede SAMBA-passwords ved hjælp af kommandoen smbpasswd.
Selv hvis du med linjen null passwords = yes i /etc/smb.conf under global-sektion har tilladt, at SAMBA-password'et er blankt, skal du alligevel oprette et "blankt" password med smbpasswd-kommandoen.
Du bør bruge samba-1.9.18p10 eller senere, da kryptering er slået til som default - dette gælder i hvert fald for Red Hat. Bruger du andre distributioner, bør du checke, hvordan SAMBA er konfigureret. Hvis du gerne vil oversætte din egen software, skal du anvende linkerflaget -lcrypt til LIBSM. Til sidst kan vi også nævne værktøjet "swat" som gør at du kan konfigurere SAMBA via en vilkårlig web-browser.
Windows 95/98 maskiner konfigurerer du det ved at ændre i en indgang i registry-databasen, så den ser således ud:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\VNETSUP] "EnablePlainTextPassword"=dword:00000001 |
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Rdr\Parameters] "EnablePlainTextPassword"=dword:00000001 |
Ud over man-siderne og dokumentationen, der installeres i /usr/doc, findes der en bog om SAMBA. Den er ikke blændende godt redigeret hele vejen igennem, men er ualmindelig rar at have stående som opslagsværk, hvis du administrerer en server med SAMBA. Sidst i bogen er der et rigtig godt kapitel om fejlfinding.
John D. Blair: SAMBA: Integrating UNIX and Windows, Specialized Systems Consultants, Inc., ISBN: 1-57831-006-7, 290 sider + CDROM