Samba, opening windows to a wider world
Simo Sorce -- idra@samba.org, simo.sorce@xsec.it
Samba Team --
http://www.samba.org
(page 1)
Cosa è Samba?
E` un progetto fondato nel 1991 da Andrew Tridgell
Samba è l'implementazione di un Server SMB/CIFS.
SMB (o CIFS) è il protocollo di condivisione delle risorse usato dai
client Microsoft e permette di condividere file e stampanti tra più
computer collegati in rete.
Samba è Software Libero distribuito con licenza GPL
Funziona bene su molte piattaforme (GNU/Linux, Solaris, HP-UX, AIX,
True64, *BSD, e altre ancora
(page 2)
Perchè Samba in una rete Windows?
Beh innanzitutto perchè è software libero. :)
Ma ci sono ragioni squisitamente tecniche per farlo.
Quindi quali sono i punti di forza di samba?
- Integrazione:
- permette la convivenza "dei 2 mondi"
- Costo:
- Si azzera il costo delle licenze per l'accesso \
- dei client che invece devono essere acquistate \
- con i server Microsoft Windows.
- Consolidazione:
- Samba è più robusto e veloce di un server \
- Microsfot Windows, può girare su macchine di \
- taglia grande tipo server a 32 processori, o \
- scatolotti embedded.
- Flessibilità:
- Samba è ricco di opzioni, permette una grande \
- flessibilità. (le direttive exec, moduli VFS, \
- autenticazione, moduli passdb).
(page 3)
Integrazione
Molti utilizzano ambienti eterogenei con server e client di diversa \
natura. E spesso è necessario far dialogare questi sistemi. Molto \
spesso inoltre i client sono macchine Windows, mentre i server \
magari sono di differenti tipologie tipo Unix, Novell, NT eccetera.
Samba permette di integrare server GNU/Linux, BSD, o Unix (e altri) \
in una rete in cui si deve convivere con client MS Windows senza dover \
installare software aggiuntivo sui client. Il server samba viene visto \
come un server MS Windows NT e consente di condividere file e stampanti \
su una rete MS senza troppi sforzi.
Dalla serie 2.2.x inoltre samba implementa l'opportunistic locking e su \
kernel linux recenti permette di condividere files in modo che il lock \
sia consistente anche quando si utilizzano contemporaneamente NFS e CIFS \
per condividere i file.
Samba è inoltre ottimo come server di stampa, accopiato a CUPS permette \
anche un sistema flessibile e avanzato di accounting delle stampe.
(page 4)
Costo
Samba viene utilizzato spesso per permettere di vedere i file su sistemi \
tipo Unix e permettere in questo modo alle piattaforme Windows di \
interoperare con le piattaforme server.
Samba viene però anche sempre più utilizzato in sostituzione di File \
Server NT o Novell in quanto permette di ridurre sensibilmente i costi \
di licenza per l'accesso dei client e ottenere un'alta affidabilità del \
servizio.
Infatti molti sistemi file server/print server/domain controller \
proprietari richiedono oltre al pagamento di una licenza d'uso per il \
server in sè, anche di licenze di connessione per ogni client che deve \
utilizzare tale server.
Per questo Samba viene anche sempre più utilizzato come Domain Controller, \
il cui supporto è maturo ed è stato ufficializzato nella v. 2.2.x \
Unico neo rimane l'impossibilità per ora di utilizzare contemporaneamente \
DC sia samba che NT, ma è possibile utilizzare configurazioni PDC+BDC solo \
samba.
(page 5)
Consolidazione e Flessibilità
Samba facilita le operazioni di consolidazione di più servizi su un \
singolo server. E' possibile anche configurare più istanze di samba su \
un server che abbia più interfacce di rete.
Non solo, samba è già predisposto per il failover, ed è estremamente \
flessibile e dotato di un numero eccezionale di opzioni con cui \
ottimizzare il proprio server e configurarlo per fare le cose come più \
ci aggradano.
Grazie alla possibilità di usare script alla connessione o alla \
disconnessione di un client o alla possibilità di utilizzare moduli VFS \
si apre la possibilità di customizzare il proprio server al massimo.
Inoltre già dalla versione 2.2 samba supporta differenti sistemi di \
autenticazione e salvataggio dei dati degli utenti. Si possono mantenere \
gli account degli utenti sul classico file smbpasswd, o su nisplus ma \
anche sul più modermo ldap o tdbsam. Non dimentichiamo inoltre winbind \
un demone che permette di utilizzare sulla macchina *nix gli utenti \
"leggendoli" direttamente da un domino NT.
(page 6)
Funzionalità che contraddistinguono la serie 2.2.x
- Supporto per le RPC di stampa di Windows NT 4.0
- Supporto per le ACL e la loro manipolazione
- Semantica interna del locking riscritta
- Supporto ufficiale come controller di domini
- Winbind (dalla versione 2.2.2)
- Supporto per funzionare come MS-DFS server
- Nuovo VFS layer
- Molti database interni ora in formato TDB
- Supporto PAM migliorato
(page 7)
Verso Samba 3.0 (1)
- Active Directory / Kerberos - Supporto per l'utilizzo di \
- samba in un dominio AD Nativo come server di dominio.
- Internazionalizzazione - Il supporto per la comunicazione \
- UNICODE è pronto. Gradualmente ci sarà anche una trasformazione \
- del codice interno a samba.
- Pieno supporto Windows NT 4.0 PDC - peremetterà sostituzione \
- completa e la migrazione da Domain Controllers NT 4.0
- Trust relationships
- Replicazione Database Utenti
(page 8)
Verso Samba 3.0 (2)
- NTLMv2 & Sign/Seal di pacchetti RPC - NTLMv2 è ok, il supporto \
- sign/seal è da completare.
- Winbind idmap storage & repository centrale idmap (per clusters, \
- coerenza nfs, etc...).
- Winbind funzionante con un DC Samba. (OK)
- Supporto per il Group Mapping.
- Supporto moduli passdb. (OK)
(page 9)
Verso Samba 3.0 (3) - Possibili ulteriori sviluppi
Probabilmente in release intermedie:
- Update in backround delle cache delle code di stampa
- Supporto, tramite librerie dinamiche, per named pipes
- Implementazione non bloccante di winbind
- Pubblicazione attributi stampanti attraverso smbd
- Nuovo VFS layer per supportare file system con semantiche \
- più avanzate di quelle posix
(page 10)
Chi sviluppa Samba?
Il Team Samba è un gruppo di circa 20 persone (6-8 attive) sparse per
tutto il mondo che contribuiscono allo sviluppo di Samba, a queste si
devono aggiungere moltissimi sviluppatori professionisti e aziende
private che contribuiscono codice e testano samba per l'inclusione nei
propri prodotti.
Lo sviluppo viene coordinato tramite la mailing list
samba-technical@samba.org aperta a chiunque e ultimamente anche
attraverso IRC sul canale #samba-technical della rete Openprojects.Net.
Se desiderate contribuire al progetto, il primo passo è l'iscrizione a
alla lista tecnica samba-technical@samba.org. (
http://lists.samba.org
per l'iscrizione)
Qui potete trovare la lista aggiornata dei membri attuali:
http://www.samba.org/samba/team.html
(page 11)
Dove trovo Samba?
All'indirizzo
http://www.samba.org si trova una lista di mirrors
da cui scaricare l'ultima versione.
Scegliete il mirror a voi più vicino.
Sono disponibili anche pacchetti binari per alcune distribuzioni
GNU/Linux.
La migliore fonte di documentazione è:
http://www.samba.org/samba/docs/index.html
- Samba-HOWTO-Collection.pdf
- sottodirectory /docs nell'archivio col codice sorgente
Per trovare aiuto in caso di difficoltà:
(page 12)
Risorse
- TODO list e progetti aperti
- Risorse per gli sviluppatori
(page 13)