Nov
21
“Samba” e directory condivise
Oggi parliamo di Samba, un programma open source, multipiattaforma utile alla condivisione di directory e stampanti in una rete locale, permettendo così l’interoperabilità fra sistemi operativi quali Windows, Mac e GNU/Linux. Fin dal primo rilascio (nel lontano 1992), Samba ha riscosso un crescente successo ed è ancora oggi il software più utilizzato per questo scopo in ambito aziendale e non.
Di seguito elencherò qualche breve passaggio per effettuare correttamente il setup di una macchina GNU/Linux con Samba e condividere files e directory nella rete locale col gruppo “workgroup“.
Per iniziare installiamo “Samba“, vediamo come.
In ambiente Debian:
$ sudo apt-get install samba
In ambiente RedHat:
# yum -y install samba
Entrambi i comandi si installeranno con relative dipendenze. Ora vediamo più da vicino Samba. In realtà Samba è un pacchetto che “racchiude” due demoni, e ne regola l’utilizzo: “nmbd” e “smbd“.
Nmdb si occupa della risoluzione dei nomi (in ambiente Windows ad esempio “Workgroup”), gestisce il Master Browser List e Wins.
Smbd gestisce la condivisione delle risorse e le connessioni.
Samba è veramente ben strutturato, e come nella più classica configurazione GNU/Linux si configura tramite un file di testo. Il file in oggetto si trova in “/etc/samba” ed è chiamato “smb.conf“. Per “vedere” le macchine Windows all’interno della rete è necessario modificarlo.
Per capire meglio lo creeremo da zero, faremo in modo di condividere lo spazio di lavoro “Workgroup” di una rete Windows. Per prima cosa creiamo un backup di “smb.conf“:
# cd /etc/samba/ # mv smb.conf smb.conf.bak
Ed ora creiamo un nuovo “smb.conf” da zero con i seguenti parametri:
[global] //obbligatorio workgroup = WORKGROUP //gruppo di lavoro netbios name = DEBIAN //nome della macchina server string = FILE SERVER //descrizione della macchina security = USER //livello di sicurezza smb passwd file = /etc/samba/smbpasswd //dove salva le pwd encrypt passwords = YES //criptazione password log file = /var/log/samba/%m.log //dir di salvataggio log max log size = 100 //dimensione max file di log log level = 1 //livello di dettaglio dei log
Nella sezione “security = USER” è possibile inserire in alternativa SHARE in modo da creare condivisioni accessibili, anche se non è lo scopo di questa guida.
Nella sezione “log file = /var/log/samba/%m.log” usando la variabile “%m” per ogni macchina che accede a Samba verrà creato automaticamente un file di log con il nome macchina.
Nella sezione “log level = 1 3” è il valore massimo ma avendo un dettaglio molto elevato rischia di appesantire il sistema, e se ne sconsiglia l’ inserimento, così come per 2.
Come abbiamo dimostrato Samba permette la condivisione delle risorse fra pc, rendendo (se correttamente configurati) i pc “Samba enabled” dei file server pronti alla condivisione. Come già anticipato, però, Samba permette anche la condivisione della stampante, argomento di cui ci occuperemo nel prossimo futuro.