Questo è il file di testo che vi permette di configurare il server Samba.
Il file è suddiviso in sezioni il cui titolo è indicato fra parentesi quadre [ ]. Ogni riga di testo che inizia con un ; o un # viene ignorata quando Samba viene avviato: questa caratteristica viene spesso usata per aggiungere osservazioni e spiegazioni riguardo le varie sezioni. In tal modo sarà più facile rivedere il file in un secondo momento.
Durante l'installazione del pacchetto viene creato un file /etc/smb.conf. Lo utilizzeremo come modello.
Ci sono tre sezioni speciali: [global], [printers], e [homes].
Qui sono indicate le impostazioni che si applicano al server nel suo complesso, o che vengono utilizzate come parametri predefiniti per le altre sezioni.
[global] netbios name = Zeus netbios aliases = creation # se mancano queste due voci, viene utilizzata # la prima parte del nome DNS workgroup = DESIGN # Samba può far parte di un solo gruppo di lavoro # per volta server string = File server [%v] # questa voce indica il nome e il numero di versione # che devono essere mostrati deadtime = 15 # durata massima del tempo di inattività auto services = mario # questo servizio, sebbene presente nella lista di # esplorazione, non è disponibile prima che mario si # sia connesso al server security = user # permette la stampa con cups printing = cups printcap name = lpstat load printers = yes security = user |
In questa modalità il client invia una password quando richiede una connessione, ma non specifica un nome utente. Questa è la modalità di accesso a file e stampanti predefinita in Windows 95. Può essere cambiata sotto Windows 95 nella scheda Rete del Pannello di controllo, agendo sulla voce Utenti.
Questa è la modalità di sicurezza raccomandata. Se la scegliete, alla richiesta di una connessione dovrete immettere un nome utente valido e la password relativa.
Questa modalità deriva da quella user. Il server Samba invia una richiesta di apertura di una sessione a un server delle password.
password server = NT_passerv # dove NT_passerv rappresenta il nome del server NT delle # password. Possono essere elencati più server. |
Questa modalità è quasi identica a quella precedente.
Per usare le ultime tre modalità è necessario "creare" l'utente sul server Samba.
hosts allow = mario.design.org 192.168.2. |
Grazie a questa riga, tutti gli utenti che accedono dalla macchina mario.design.org e dalla rete IP 192.168.2. saranno autorizzati a connettersi.
hosts deny = 192.168.2.5 |
guest account = pcguest # se volete aggiungere un account per ospiti ('guest'); deve # essere inserito in /etc/passwd |
Prima di tutto, create una directory utilizzando il comando mkdir /home/shared, e assegnatele i permessi appropriati con chmod e chown. Ad esempio, chmod 0777 assegna tutti i diritti su questa directory dal lato del filesystem Unix. A questo punto, tuttavia, bisogna assegnare i permessi anche all'interno di Samba.
[share] comment = accesso condiviso garantito a tutti path = /home/shared browsable = yes writable = yes create mask = 0750 # significa che il creatore del file ha diritti rwx # su di esso, il gruppo r-x e tutti gli altri r-- directory mask = 0750 # stesso significato, ma per le directory mangled names = yes # converte i nomi secondo il formato DOS/Windows, # cioè otto caratteri per il nome e tre per # l'estensione. preserve case = no # non conservare maiuscole/minuscole. |
[zip] comment = monta e 'smonta' automaticamente il lettore zip browsable = yes path = /mnt/zip root preexec = /bin/mount /dev/sda4 /mnt/zip root postexec = /bin/unmount /mnt/zip |
Impostando questa sezione potete rendere le home directory di tutti gli utenti definiti sul sistema GNU/Linux raggiungibili da una macchina Windows, usando il proprio nome utente e la password. Questo è un tipo particolare di condivisione.
[homes] comment = directory home (le cartelle personali degli utenti) browseable = no writable = yes path = /export/homes/%U valid users = %S |
Anche questo è un tipo particolare di condivisione.
[printers] comment = Tutte le stampanti browseable = yes printable = yes public = yes writable = no create mode = 0700 print command = lpr-cups -P 0 lpq command = lpstat -o 0 lprm command = cancel 0-%j |
Ci sono molti altri parametri di configurazione, per maggiori informazioni consultate la pagina di manuale relativa (man smb.conf).
Un file di esempio smb.conf:
[global] workgroup = IlMioGruppoDiLavoro server string = (Samba %v) #server string = Samba Server browseable = yes printing = bsd printcap name = /etc/printcap load printers = yes log file = /var/log/samba/log.%m max log size = 100 lock directory = /var/lock/samba locking = no strict locking = no share modes = yes security = user null passwords = yes socket options = TCP_NODELAY # Permette al server Samba di diventare il server # principale del dominio #os level = 33 #domain master = yes # Facilita il riconoscimento dei nomi lunghi preserve case = no short preserve case = no character set = iso8859-1 [homes] comment = directory home (le cartelle personali degli utenti) preexec = /bin/sh -c 'echo /usr/bin/smbclient -M %m -I %I'& browseable = yes readonfiltered= no writable = yes create mode = 0750 public = yes ["public"] comment = "Public" path = /public/ browseable = yes hide dot files = yes readonfiltered= no public = yes printable = yes #create mode = 0775 printable = no ["printers"] comment = tutte le stampanti browseable = yes printable = yes public = yes writable = no create mode = 0700 print command = lpr-cups -P 0 lpq command = lpstat -o 0 lprm command = cancel 0-%j |