27.9. Servizi di File e Stampa per client Microsoft® Windows® (Samba)

Grazie al contributo di Murray Stokely.

27.9.1. Uno sguardo d'insieme

Samba è un popolare pacchetto software open source che fornisce servizi di file e stampa per client Microsoft® Windows®. Tali client possono connettersi ed usare un file system FreeBSD come se fosse un disco locale, o stampanti FreeBSD come se fossero stampanti locali.

Il pacchetto software Samba dovrebbe essere incluso nel tuo media di installazione FreeBSD. Se non hai installato Samba quando hai installato per la prima volta FreeBSD, puoi sempre installarlo dal port o pacchetto net/samba3.

27.9.2. Configurazione

Un file di configurazione di Samba di default è installato in /usr/local/share/examples/smb.conf.default. Questo file deve essere copiato in /usr/local/etc/smb.conf e personalizzato prima che Samba possa essere usato.

Il file smb.conf contiene informazione di configurazione runtime per Samba, come le definizioni delle stampanti e «share di file system» che vorresti condividere con Windows® client. Il pacchetto Samba include un tool basato sul web chiamato swat che fornisce un modo semplice di configurare il file smb.conf.

27.9.2.1. Usare il Samba Web Administration Tool (SWAT)

Il Samba Web Administration Tool (SWAT) viene eseguito come demone da inetd. Quindi, dovresti togliere i commenti alla seguente linea in /etc/inetd.conf prima che swat possa essere usato per configurare Samba:

swat   stream  tcp     nowait/400      root    /usr/local/sbin/swat    swat

Come spiegato in Esempio 27.1, «Ricaricare il file di configurazione di inetd », la configurazione di inetd deve essere ricaricata dopo che questo file di configurazione è stato cambiato.

Una volta che swat è stato abilitato in inetd.conf, puoi usare un browser per connetterti a http://localhost:901. Dovrai prima loggarti con l'account di sistema root.

Una volta che ti sei loggato con successo alla pagina principale di configurazione di Samba, puoi navigare la documentazione di sistema, o iniziare cliccando sul tab Globals. La sezione Globals corrisponde alle variabili che sono impostate nella sezione [global] di /usr/local/etc/smb.conf.

27.9.2.2. Impostazioni Globali

Sia che tu stia usando swat o che tu stia editando direttamente /usr/local/etc/smb.conf, le prime direttive che tu puoi incontrare quando configuri Samba sono:

workgroup

Nome dominio NT o nome Workgroup per i computer che accedono a questo server.

netbios name

Questo imposta il nome NetBIOS attraverso il quale un Samba è conosciuto. Di default è lo stesso della prima parte del nome host DNS.

server string

Questo imposta la stringa che sarà mostrata con il comando net view e con alcuni altri strumenti di rete che cercano di mostrare testo descrittivo sul server.

27.9.2.3. Impostazioni di Sicurezza

Due delle più importanti impostazioni in /usr/local/etc/smb.conf sono i modelli di sicurezza usati, ed il formato delle password di backend per utenti client. Le seguenti direttive controllano queste opzioni:

security

Le due più comuni opzioni in questo caso sono security = share e security = user. Se i tuoi client usano nomi utente che sono gli stessi dei nomi utenti sulla tua macchina FreeBSD, allora vorrai sicurezza di tipo user. Questa è la policy di sicurezza di default e richiede ai client prima di loggarsi prima che possano accedere a risorse condivise.

Nel modello di sicurezza di tipo share, i client non hanno bisogno di loggarsi al server con una valida coppia username e password prima che provino a connettersi a risorse condivise. Questo è il modello di sicurezza di default per versioni precedenti di Samba.

passdb backend

Samba ha molti modelli diversi di backend di autenticazione. Puoi autenticare i client con LDAP, NIS+, un database SQL, o un file di password modificato. Il metodo di autenticazione di default è smbpasswd, e questo sarà l'unico coperto qui.

Assumendo che il backend usato sia quello di default, smbpasswd, il file /usr/local/private/smbpasswd deve essere creato per permettere a Samba di autenticare i client. Se tu volessi dare ai tuoi account UNIX® accesso da client Windows®, usa il seguente comando:

# smbpasswd -a username

Per favore consulta l' Official Samba HOWTO HOWTO Ufficiale di Samba per informazioni addizionali sulle opzioni di configurazione. Con le basi delineate qui, dovresti avere tutto ciò di cui hai bisogno per avviare Samba.

27.9.3. Avviare Samba

Il port net/samba3 aggiunge un nuovo script di avvio, che può essere usato per controllare Samba. Per abilitare questo script, in modo tale da essere usato per esempio per avviare fermare o far ripartire Samba, aggiungi la riga seguente al file /etc/rc.conf:

samba_enable="YES"

Oppure, per un controllo più accurato:

nmbd_enable="YES"
smbd_enable="YES"

Nota:

In questo modo Samba viene avviato automaticamente ad ogni avvio del sistema.

Per avviare Samba digita:

# /usr/local/etc/rc.d/samba start
Starting SAMBA: removing stale tdbs :
Starting nmbd.
Starting smbd.

Fai riferimento alla Sezione 11.7, «Usare rc con FreeBSD» per ulteriori informazioni sull'uso degli script rc.

Samba attualmente consiste di tre demoni separati. Dovresti osservare che entrambi nmbd e smbd siano avviati dallo script samba. Se hai abilitato servizi di risoluzione di nomi winbind in smb.conf, allora osserverai che anche il demone winbindd è avviato.

Puoi anche fermare Samba in ogni istante digitando:

# /usr/local/etc/rc.d/samba stop

Samba è una suite complessa di software con funzionalità che permette una larga integrazione con reti Microsoft® Windows®. Per maggiori informazioni sulle funzionalità al di là dell'installazione di base descritta qui per favore consulta http://www.samba.org.

Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

Per domande su FreeBSD, leggi la documentazione prima di contattare <questions@FreeBSD.org>.

Per domande su questa documentazione, invia una e-mail a <doc@FreeBSD.org>.