il protocollo SAMBA é come per il CIFS utile per poter condividere o montare sul proprio PC risorse in una rete Windows
é possibile utilizzare anche shares-admin per gestire le condivisioni di rete ed installare Samba server


client

per poter montare sul proprio pc risorse di un PC windows in rete

va prima installato smbfs se non già presente:
sudo apt-get install smbfs
se non funziona allora vuol dire che la reporistory non ce l'ha, va quindi usato il protocollo CIFS

sintassi:
sudo smbmount //IP_server/directory /directory_montaggio/
sudo smbmount //IP_server/directory /directory_montaggio/ -o user=xxx, password=xxx, rw affinché non chieda la password
sudo smbmount //IP_server/directory /directory_montaggio/ -o password=xxx, rw se l'utente é lo stesso


mentre per smontarle si usa il comando normale umount, con l'opzione -f se bloccato
umount /directory_montaggio/

gestione client

  • smbclient

  • programma molto simile a client ftp da terminale, serve per visualizzare o connettersi a condivisioni SAMBA presenti su server.
    uno dei comandi più utilizzati é:

    sintassi:
    sudo smbclient opzioni //IP_server/condivisione

    esempio:
    sudo smbclient -L IP_server
    che permette di vedere tutte le cartelle condivise su un dato server




    server

    per poter condividere risorse del proprio pc in una rete windows

    va prima installato smbfs se non già presente:
    sudo apt-get install samba

    avvio, arresto e riavvio servizio SAMBA
    dopo l'installazione e dopo le varie modifiche del file di configurazione potrebbe servire avviare, riavviare o fermare il servizio:

    sudo /etc/init.d/samba start
    sudo /etc/init.d/samba restart
    sudo /etc/init.d/samba stop

    se non trova il comando allora vuol dire che non serve e il servizio si aggiorna automaticamente.
    non devi fare nulla

    configurazione

    il file di configurazione principale di samba é /etc/samba/smb.conf
    sudo gedit /etc/samba/smb.conf

    il file é diviso in sezioni, con molti parametri diversi a seconda delle versioni
    alcuni parametri divisi per sezione:

    [global]
    allow hosts = 192.168.1.0/24 range di IP che possono accedere al server
    workgroup = .... nome del gruppo di lavoro (ex. WORKGROUP)
    netbios = .... nome della macchina nel gruppo di lavoro
    server string = XXXX descrizione della macchina

    security = .... livello di sicurezza delle condivisioni


    usershare owner only = false limitazione nella condivisione al solo proprietario della risorsa (in caso di errore nel condividere una risorsa montata con il tasto destro)


    condivisione directory in modalità security share:
    [....] nome della condivisione esempio: Scaricati
    comment = cartella condivisa commento sulla condivisione
    path = /cartella/da/condividere percorso della condivisione
    available = yes|no consente di attivare (yes) o disattivare (no) la condivisione
    browseable = yes|no rende visibile la condivisione

    writable = yes|no descrive la possibilità di scrittura all’interno della condivisione. Se impostata a no non sarà consentita alcuna modifica a files o cartelle, anche se il nostro utente o i permessi lo consentono; al contrario yes indicherà che Samba consentirà la modifica del contenuto, a patto che l’utente abbia i permessi necessari
    read only = yes|no esatto opposto all’istruzione writable, se viene assegnato yes, la condivisione sarà sempre in sola lettura mentre su no Samba consentirà la modifica del contenuto. Utilizzare a scelta writable o read only
    create mask = XXXX permessi dei file dopo la creazione esempio: 0755
    directory mask = XXXX permessi dei file dopo la creazione esempio: 0777

    guest ok = yes|no permette una connessione da parte di utenti anonimi senza password, altrimeti serve la creazione di un utente samba
    public = yes|no sinonimo dell’istruzione guest ok

    opzioni facoltative sugli utenti
    guest account = utente consente di specificare l’utente che verrà usato per le connessioni anonime. Se qualcuno tenta di connettersi alla condivisione e non possiede espliciti accessi verrà collegato come anonimo e svolgerà le operazioni con l’utente indicato in questa istruzione. Generalmente viene utilizzato l’utente nobody
    guest only = yes|no forza l’utilizzo dell’utente anonimo anche se chi accede possiede una connessione con un utente autorizzato. Richiede la presenza di guest ok = yes
    valid users = elenco utenti permette di specificare un esplicito elenco di utenti che potranno accedere alla condivisione
    invalid users = elenco utenti consente di specificare un esplicito elenco di utenti ai quali sarà sempre vietato di accedere alla condivisione
    force user = utente forza l’utilizzo di un particolare utente per le operazioni sui files e cartelle. Non riguarda in alcun modo l’autenticazione che richiede comunque un utente autorizzato o che sia abilitato l’accesso anonimo
    force group = gruppo forza l’utilizzo di un particolare gruppo per le operazioni sui files e cartelle


  • condivisione directory home:

  • [homes]
    comment = Home condivisa commento sulla condivisione
    browseable = yes rende visibile la condivisione
    valid users = %S utente che vi può accedere
    create mask = 0700 permessi dei file
    directory mask = 0700 permessi della home


  • condivisione lettore DVD:

  • [dvd]
    comment = Lettore DVD+R commento sulla condivisione
    preexec = mount /media/cdrom azione compiuta dopo la connessione alla condivisione
    postexec = umount /media/cdrom azione compiuta dopo la disconnessione alla condivisione
    path = /media/cdrom percorso della condivisione
    writable = no se la condivisione è modificabile

    utente samba
    se non é stato isnerito nella condivisione con il tasto destro, o manuale nella sezione [share] con gesto ok = yes, bisgona creare un utente che possa acceder alla risorsa condivisa:
    sudo smbpasswd -a nome_utente

    con smbpasswd si gestiscono gli utenti samba, creazione, modifica ed eliminiazione.