Configurazione di Samba

15 giugno 2017

I parametri di configurazione del server Samba sono contenuti in un file, smb.conf, che risiede nella directory /etc/samba. Esso è un semplice file di testo e pertanto può essere modificato anche da riga di comando utilizzando uno degli editor di testo già precedentemente incontrati.

Il file smb.conf

La struttura del file smb.conf ricorda quella dei file .ini, usati in ambiente Windows prima dell’avvento del registro di sistema. Esso è diviso in sezioni, ciascuna identificata da un marcatore iniziale racchiuso tra parentesi quadre. Ad esempio, la sezione principale chiamata global è identificata dalla riga [global]. Essa racchiude i parametri di configurazione che controllano il comportamento generale del server, quali ad esempio il nome del gruppo di lavoro, il percorso del file registro delle attività, i parametri di sicurezza, ed altro ancora.

Ogni parametro è impostato ricorrendo alla sintassi:

"nome parametro" = "valore"

Ad esempio, per impostare il nome del gruppo di lavoro a “WORKGROUP” (il valore predefinito per le reti Windows senza domain controller), si userà la riga:

[global]
    workgroup = WORKGROUP

Il file smb.conf contiene tre sezioni speciali: [global], [homes] e [printers]. Come già detto, global contiene i parametri globali che controllano il comportamento del server. Le sezioni [homes] e [printers] permettono di configurare rispettivamente le condivisioni delle directory utente e le stampanti connesse al sistema.

A seguire troviamo le sezioni che controllano le impostazioni sulle directory condivise. Ad ogni directory condivisa corrisponderà una relativa sezione nel file smb.conf, identificata appunto dal nome della condivisione. Ad esempio, se il server condivide una directory di nome “Backup”, il file smb.conf conterrà una sezione [Backup] con le relative opzioni.

La sezione [homes]

Samba permette di creare una directory condivisa per ogni utente del sistema. Questo meccanismo semplifica le operazioni di gestione e configurazione di un file server in una realtà con diverse centinaia di utenti. Si immagini il caso in cui sia frequente la necessità di attivare nuovi utenti o disabilitarne alcuni: grazie a questa opzione, è sufficiente aggiungere i nuovi utenti al sistema, senza dover specificare manualmente la directory condivisa.

Su Ubuntu, le impostazioni di default specificano la creazione di una cartella condivisa per ogni utente, il cui accesso è limitato all’utente stesso. Si tratta di una directory privata che l’utente può utilizzare ad esempio per effettuare il backup dei propri dati personali sul server.

La sezione [printers]

La sezione printers permette di condividere le stampanti connesse direttamente al server, ai client presenti sulla rete. Sebbene questa opzione sia sempre meno utile in pratica, vista la crescente disponibilità di stampanti di rete, essa è ancora largamente in uso. Spesso, infatti, una stampante di rete incorpora un piccolo server embeedded che tra i vari servizi fa girare anche Samba, opportunamente configurato per condividere se stessa.

Condividere una directory

Per condividere una directory con Samba, è sufficiente creare la relativa sezione nel file smb.conf. Per iniziare, apriamo il file con un editor di testo, ad esempio nano, con il comando:

# nano /etc/samba/smb.conf

Quindi spostiamo il cursore alla fine del file utilizzando i tasti freccia. Creiamo a questo punto la sezione di configurazione richiesta. Ad esempio, supponendo di voler condividere la directory /mnt/hdd/backups con il nome Backups, e di consentirne l’accesso solo agli utenti pippo e pluto, la sezione da creare sarà:

[Backups]
	path = /mnt/hdd/backups
	browseable = yes
	valid users = pippo, pluto

L’opzione browseable rende visibile la directory condivisa anche agli utenti che non vi hanno accesso (l’accesso verrà comunque negato nel caso in cui essi provino a collegarsi). Questa opzione può rivelarsi molto utile per configurare l’accesso da client Windows. A seconda della configurazione, è possibile che i client Windows accedano al server Samba come utenti generici (usando l’account guest) effettuando il login con delle credenziali valide solo quando l’utente abbia effettivamente fatto doppio click su una directory condivisa. In queste circostanze, una directory non browseable (e quindi invisibile anche all’utente generico guest) non verrebbe mostrata, impendendone di fatto l’accesso.

Gestione degli accessi

Samba supporta diversi backend di autenticazione. In altre parole, esistono diversi metodi con cui gestire la lista di utenti che possono accedere alle directory condivise da Samba e le relative credenziali di accesso: dal semplice file passwd all’integrazione con database di gestione utenti via LDAP, RADIUS ed altri.

In ambiente Ubuntu, il server Samba utilizza un file passwd per default. Esiste una utility che permette la gestione del file delle password di Samba, caratterizzata da una sintassi simile a quella del comando passwd. L’utility si chiama appunto smbpasswd.

Per aggiungere un utente alla lista, utilizzare il comando smbpasswd -a. Ad esempio, per aggiungere l’utente pippo, digitiamo:

# smbpasswd -a pippo

Il comando aggiungerà l’utente pippo e richiederà l’inserimento della relativa password.

Allo stesso modo, per cancellare un utente dal sistema, utilizzare il comando smbpasswd -x seguito dal nome dell’utente da cancellare.

Si può inoltre modificare la password di un utente esistente semplicemente con il comando smbpasswd seguito dal nome utente. Ad esempio, per reimpostare la password dell’utente pippo:

# smbpasswd pippo

La lista completa delle opzioni è consultabile con il comando smbpasswd -h.

Configurazione semplificata

Esistono diversi strumenti per l’amministrazione di un server Samba. Molti di essi richiedono l’installazione di uno stack grafico completo (server X, ambiente desktop, etc…), e pertanto sono sconsigliati per l’amministrazione di un server di piccole dimensioni. Esiste però un’alternativa: una comoda interfaccia web che permette di modificare i parametri di configurazione qui mostrati senza dover accedere al file smb.conf. Si tratta di Webmin, un’applicazione di amministrazione la cui installazione sarà oggetto delle lezioni successive.

Tutte le lezioni

1 ... 12 13 14 ... 31

Se vuoi aggiornamenti su Configurazione di Samba inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Configurazione di Samba

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy