Introduzione

Samba e' un software open source che permette la condivisione di risorse come directory, stampanti, masterizzatori ed altro, avvalendosi del protocollo netbios il quale, come noto, puo' permettere anche condivisioni fra macchine Linux e windows.

Configurazione del server

Configureremo il programma server, ovvero cio' che permettera' la condivisione. Installiamolo col comando:

# apt-get update && apt-get install samba smbfs

Rechiamoci nella dir /etc/samba per editare il file smb.conf.

Qui di seguito offro un modello che potrete (dovrete) personalizzarvi poi:

  
 [global]
     allow hosts = 192.168.1.0/24    
     workgroup = debianizzati
     server string = server@debianizzati.org
     browsable = yes
     create mask = 0755

Con la sezione “global” all'interno del file smb.conf abbiamo settato quei parametri che saranno il modello generale di tutte le eventuali sezioni che verranno.

Ad esempio se nella successiva sezione, non specificassimo il parametro “allow hosts”, verra' preso come riferimento “192.168.1.0/24".

ok, in breve:

  • allow hosts = range di ip ai quali e' permesso l'accesso alla risorsa
  • workgroup = nome del gruppo di lavoro
  • server string = stringa che identifica il server
  • browsable = rende visibile lo share
  • create mask = determina i permessi dei file in condivisione

Adesso sempre dentro il nostro smb.conf, creiamo la sezione specifica per la risorsa che vogliamo condividere. In questo esempio condivideremo una directory.

 [shared]
     comment = Directory Shared
     path = /dir/da/condividere
     browsable = yes 
     read only = yes
     public = yes
     create mask = 0755 

Altri parametri:

  • comment = commento per la directory
  • path = percorso della dir condivisa
  • public = rende la dir di libero accesso
  • read only = setta i files della dir condivisa in sola lettura.

Ok, a questo punto il file puo' considerarsi configurato. Tuttavia questi sono solo pochissimi parametri. Potrete trovarli tutti a questa pag. tratta dal sito ufficiale di Samba.

Preoccupiamoci ora dell'accesso vero e proprio alla directory messa in condivisione. Possiamo creare un utente samba con smbpasswd, tenendo presente che un utente samba deve anche essere un utente presente sulla macchina.

# smbpasswd -a utente
New SMB password: ****
Retype new SMB password: ****

Questi sono user e pass coi quali ci loggheremo nel momento in cui monteremo dai client la dir condivisa.

Se volessimo inoltre consentire l'accesso a tutti gli utenti indistintamente, basterebbe inserire il parametro “guest ok = yes” nelle sezioni desiderate. Ad es. nella sezione shared:

[shared]
     comment = Directory Shared
     path = /dir/da/condividere
     browsable = yes 
     read only = yes
     public = yes
     create mask = 0755
     guest ok = yes

Cosi' facendo potremo loggarci come ospiti digitando solo “invio” come password.

Bene, riavviamo il server:

# /etc/init.d/samba restart

Adesso testiamo la validita' del file /etc/samba/smb.conf col comando:

# testparm

Dovra' restituirvi fra le altre questa stringa:

Loaded services file OK.

Lato client

Spostiamoci sul client e installiamo smbfs:

# apt-get install smbfs

montiamo quindi la risorsa shared col comando:

$ smbmount //ip_del_server/shared  /path/del/mountpoint

al momento che ci verra' chiesta la password, possiamo scegliere (in questo nostro caso) di digitare la pass assegnata all'utente samba, o digitare semplicemente “invio” per la presenza, nella sezione shared, del parametro guest ok = yes.

adesso possiamo listiare il contenuto della dir condivisa:

$ ls /path/del/mountpoint



Autore: zmo