Samba-3.0.11

Introduzione a Samba

Il pacchetto Samba fornisce servizi file e stampa a client SMB/CIFS e connessione a reti Windows a client Linux. Samba può anche essere configurato come un sostituto del controller di dominio Windows NT 4.0 (con avvisi funzionanti con PDC e BDC di NT), un server file/stampa che agisce come membro di un dominio Windows NT 4.0 o Active Directory e un nameserver NetBIOS (rfc1001/1002) (che, tra le altre cose, fornisce supporto alla navigazione LAN).

Informazioni sul pacchetto

Installazione di Samba

Installare Samba eseguendo i seguenti comandi:

cd source &&
install -d /var/cache/samba &&
./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var \
    --with-piddir=/var/run \
    --with-fhs \
    --with-smbmount &&
make

Ora, come utente root:

make install &&
mv /usr/lib/samba/libsmbclient.so /usr/lib &&
ln -sf ../libsmbclient.so /usr/lib/samba &&
chmod 644 /usr/include/libsmbclient.h \
          /usr/lib/samba/libsmbclient.a &&
install -m755 nsswitch/libnss_win{s,bind}.so /lib &&
ln -sf libnss_winbind.so /lib/libnss_winbind.so.2 &&
ln -sf libnss_wins.so /lib/libnss_wins.so.2 &&
cp ../examples/smb.conf.default /etc/samba &&
install -m644 ../docs/*.pdf /usr/share/samba &&
if [ -f nsswitch/pam_winbind.so ]; then
    install -m755 nsswitch/pam_winbind.so /lib/security
fi
[Nota]

Nota

Si può eseguire configure con il parametro --help. Possono essere necessari altri parametri per trarre vantaggio dalle dipendenze opzionali.

Spiegazioni dei comandi

install -d /var/cache/samba: questa directory è necessaria per operazioni corrette dei demoni smbd e nmbd.

--sysconfdir=/etc: setta la configurazione della directory dei file per evitare il default di /usr/etc.

--localstatedir=/var: setta la configurazione della directory dei dati per evitare il default di /usr/var.

--with-fhs: assegna tutti gli altri percorsi file in un modo conforme al Filesystem Hierarchy Standard (FHS).

--with-smbmount: ordina la creazione di un binario extra per l'uso da parte del comando mount così che montare condivisioni SMB remote (Windows) diventi non più complesso che montare condivisioni NFS remote.

--with-pam: usare questo parametro per collegare Linux-PAM nella costruzione. Questo inoltre costruisce il modulo PAM pam_winbind.so. Si possono trovare istruzioni su come configurare ed usare il modulo eseguendo man winbindd.

mv /usr/lib/samba/libsmbclient.so ...; ln -sf ../libsmbclient.so ...: la libreria libsmbclient.so è richiesta da altri pacchetti. Questo comando la sposta in una locazione dove altri pacchetti possano trovarla.

install -m755 nsswitch/libnss_win{s,bind}.so /lib: le librerie nss non sono installate per default. Se si vuole usare winbindd per autenticazione di dominio, e/o risoluzione nomi WINS, sono necessarie queste librerie.

ln -sf libnss_winbind.so /lib/libnss_winbind.so.2 e ln -sf libnss_wins.so /lib/libnss_wins.so.2: questi symlink sono richiesti da glibc per usare le librerie nss.

cp ../examples/smb.conf.default /etc/samba: questo copia un default smb.conf in /etc/samba. Questa configurazione di esempio non funzionerà fino a quando non verrà editata per il proprio sito, e rinominata smb.conf.

Configurazione di Samba

File di configurazione

/etc/samba/smb.conf

Panorama della configurazione e documentazione disponibile

A causa della complessità e dei molti vari usi di Samba la configurazione completa è molto oltre lo scopo del libro BLFS. Configurazioni avanzate che includono l'impostazione dei controller di dominio primario e di Backup sono argomenti avanzati e non possono essere adeguatamente spiegate in BLFS (è bene notare, tuttavia, che un BDC Samba non può essere usato come fallback per un PDC Windows, e, viceversa, un BDC Windows non può essere usato come fallback per un PDC Samba). Solo su questi argomenti sono stati scritti molti libri completi.

C'è abbastanza poca documentazione disponibile che discute molto di queste configurazioni avanzate. Puntare il proprio web browser ai link sottostanti per vedere un po' della documentazione inclusa nel pacchetto Samba:

Configurazione di SWAT

L'utilità SWAT inclusa (Samba Web Administration Tool) può essere usata per una configurazione di base dell'installazione Samba, ma poiché potrebbe essere non conveniente, indesiderabile o forse anche impossibile avere accesso alla console BLFS raccomanda di settare l'accesso a SWAT usando Stunnel.

Prima bisogna aggiungere voci a /etc/services e modificare la configurazione di inetd/xinetd.

Aggiungere le voci swat e swat_tunnel a /etc/services con i seguenti comandi digitati come utente root:

echo "swat            901/tcp" >> /etc/services &&
echo "swat_tunnel     902/tcp" >> /etc/services

Se si usa inetd il seguente comando aggiungerà la voce swat_tunnel a /etc/inetd.conf (come utente root):

echo "swat_tunnel stream tcp nowait.400 root /usr/sbin/swat swat" \
    >> /etc/inetd.conf

Digitare killall -HUP inetd per rileggere il file inetd.conf modificato.

Se si usa xinetd il seguente comando digitato come utente root aggiungerà la voce swat_tunnel entry a /etc/xinetd.conf (potrebbe essere necessario modificare o rimuovere la linea “only_from” per includere il/gli host desiderati):

cat >> /etc/xinetd.conf << "EOF"
service swat_tunnel
{
    port            = 902
    socket_type     = stream
    wait            = no
    only_from       = 127.0.0.1
    user            = root
    server          = /usr/sbin/swat
    log_on_failure  += USERID
}
EOF

Digitare killall -HUP xinetd per rileggere il file xinetd.conf modificato.

Successivamente bisogna aggiungere una voce per il servizio swat al file /etc/stunnel/stunnel.conf (come utente root):

cat >> /etc/stunnel/stunnel.conf << "EOF"
[swat]
accept  = 901
connect = 902

EOF

Riavviare il demone stunnel usando il seguente comando come utente root:

/etc/rc.d/init.d/stunnel restart

SWAT può essere lanciato puntando il proprio web browser a https://[CA_DN_field]:901. Sostituire l'hostname elencato nel campo DN del certificato CA usato con Stunnel per [CA_DN_field].

[Nota]

Nota

Se si è collegato Linux-PAM nella costruzione di Samba bisognerà creare un file /etc/pam.d/samba.

Stampa su client SMB

Se si usa CUPS per i servizi di stampa e si vuole stampare su una stampante collegata a un client SMB bisogna creare un dispositivo SMB backend. Per creare il dispositivo digitare il seguente comando come utente root:

ln -sf /usr/bin/smbspool /usr/lib/cups/backend/smb

Installazione dei bootscript

Per vostra comodità nei bootscript è stato incluso Samba. Ce ne sono due inclusi nel pacchetto blfs-bootscripts-6.0. Il primo, samba, avvierà i demoni smbd e nmbd necessari per fornire i servizi SMB/CIFS. Il secondo script, winbind, avvia il demone winbindd usato per fornire servizi di domini Windows a client Linux.

Installare lo script samba con il seguente comando digitato come utente root:

make install-samba

Se serve anche lo script winbind:

make install-winbind

Contenuti

Programmi installati: findsmb, mount.smbfs, net, nmbd, nmblookup, ntlm_auth, pdbedit, profiles, rpcclient, smbcacls, smbclient, smbcontrol, smbcquotas, smbd, smbmnt, smbmount, smbpasswd, smbspool, smbstatus, smbtar, smbtree, smbumount, swat, tdbbackup, tdbdump, tdbtool, testparm, testprns, wbinfo and winbindd
Librerie installate: libnss_winbind.so, libnss_wins.so, libsmbclient.[so,a], la libreria PAM pam_winbind.so e set caratteri assortiti, filesystem e moduli di supporto.
Directory installate: /etc/samba, /usr/lib/samba, /usr/share/samba, /var/cache/samba e /var/lib/samba

Brevi descrizioni

findsmb

elenca informazioni su macchine che rispondono a interrogazioni di nome SMB su una sottorete.

mount.smbfs

è un symlink a mountsmb che fornisce a /bin/mount un modo per montare condivisioni di file Windows (o Samba).

net

è un tool per l'amministrazione di Samba e di server remoti CIFS, simile all'utilità net per DOS/Windows.

nmbd

è il name server Samba NetBIOS.

nmblookup

è usato per interrogare nomi NetBIOS e mapparli su indirizzi IP.

ntlm_auth

è un tool che permette accesso esterno a funzioni di autenticazione NTLM di Winbind.

pdbedit

è un tool usato per gestire il database SAM.

profiles

è un'utilità che riporta e cambia file registro SID in Windows. Attualmente suporta solo Windows NT.

rpcclient

è usato per eseguire funzioni MS-RPC lato client.

smbcacls

è usato per manipolare liste di controllo accesso di Windows NT.

smbclient

è un'utilità di accesso di SMB/CIFS simile a FTP.

smbcontrol

è usato per controllare demoni smbd, nmbd e winbindd in funzione.

smbcquotas

è usato per manipolare quote Windows NT su condivisioni di file SMB.

smbd

è il demone Samba principale, che fornisce servizi SMB/CIFS a client.

smbmnt

è un'applicazione helper usata dal programma smbmount per montare le condivisioni SMB. Può essere installato setuid root se si vuole che i normali utenti possano montare le loro condivisioni SMB.

smbmount

è normalmente invocato come mount.smbfs dal comando mount quando si usa l'opzione -t smbfs, monta un filesystem Linux SMB.

smbpasswd

cambia la password di un utente Samba.

smbspool

invia un lavoro di stampa a una stampante SMB.

smbstatus

riporta le connessioni correnti Samba.

smbtar

è uno shell script usato per fare il back up di condivisioni SMB/CIFS dirtettamente su tape drive Linux o un file.

smbtree

è un browser di rete SMB testuale.

smbumount

è usato da utenti normali per smontare filesystem SMB, supposto che siano setuid root.

swat

è il Samba Web Administration Tool.

tdbbackup

è un tool per fare il back up o validare l'integrità di file Samba .tdb.

tdbdump

è un tool usato per stampare i contenuti di un file Samba .tdb.

tdbtool

è un tool che permette una semplice manipolazione di database da linea di comando.

testparm

verifica la corretta sintassi di un file smb.conf.

testprns

testa i nomi delle stampanti.

wbinfo

interroga un demone winbindd funzionante.

winbindd

risolve nomi da server Windows NT.

Last updated on