Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 42 del 25/03/2022 17.55.23

Nascondi questo messaggio


Guida verificata con Ubuntu: 20.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Samba è una suite di strumenti utilizzati per la condivisione tra reti miste windows linux, implementando il protocollo di rete SMB, il quale è il cuore del networking Windows.

Solitamente si avrà bisogno di samba per:

  • agire come un client con server Windows: accesso a file e stampanti remote condivisi,
  • agire da server per client Windows: condividere cartelle e stampanti, incluse pseudo-stampanti PDF,
  • agire da controllore di domini in una rete Windows (autenticazione degli utenti, etc.),
  • fare qualcosa di più complesso, come per esempio usare un controller Windows di domini per autenticare gli utenti di una macchina Linux.

Installazione

Installare i pacchetti samba e smbfs.

Configurazione

Tutti i parametri di configurazione di samba, sono presenti nel file /etc/samba/smb.conf, modificabile in un editor di testo con i privilegi di amministrazione.

Ogni volta che si apportano delle modifiche al file sopra citato è necessario riavviare il servizio di samba

Digitare in un terminale il seguente comando:

sudo systemctl restart smbd.service

oppure:

sudo systemctl restart nmbd.service

Sezione global

La sezione [global] si trova sempre all'inizio della configurazione del file /etc/samba/smb.conf e racchiude i principali parametri del server.

 [global]
     allow hosts = 192.168.1.0/24                 # Range di IP che possono accedere al server     
     workgroup = WORKGROUP                        # Nome del gruppo di lavoro
     netbios = SAMBA                              # Nome della macchina nel gruppo di lavoro
     security = USER                              # Livello di sicurezza delle condivisioni
     server string = FILE SERVER                  # Descrizione della macchina
     create mask = 0755                           # Permessi sulle cartelle

Nel parametro «security» si poteva utilizzare in alternativa il valore «SHARE» in modo da creare condivisioni liberamente accessibili, senza necessità di autenticazioni.

Montare condivisione

Per montare una condivisone samba presente su un altro file server, si utilizza il smbmount presente nel pacchetto:

smbmount //SERVER/condivisione  /punto/di/mount

Dove /punto/di/mount/ è una directory creata con privilegi di amministrazione solitamente in /media

Condivisioni dei dispositivi

Condividere cartella

Esistono sostanzialmente due metodi per condividere una cartella, il primo più rapido e veloce, mentre il secondo modificando il file di configurazione di samba

  1. Quello più rapido è tasto destro → condividi cartella ed in seguito impostare i permessi su di essa.

  2. Mentre il secondo metodo è quello di aggiungere la cartella nel file di configurazione di samba

 [shared]
     comment = Cartella condivisa        # Commento sulla condivisione
     path = /cartella/da/condividere     # Percorso della condivisione
     browseable = yes                    # Rende visibile la condivisione
     public = yes                        # Rende la cartella accessibile
     create mask = 0755                  # Permessi dei file

Condivisione Home

Anche se sconsigliato è possibile condividere per interno la home di un utente.

 [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 stampante tramite samba

Il sistema migliore per condividere una stampante è tramite IPP quello che è stato spiegato prima, però c'è anche la possibilità di condivisione tramite samba, con un editor di testo modificare il file /etc/samba/smb.conf ed aggiungere i seguenti parametri nella sezione [Global]

printing = cups         # Server di sampa utilizzato
load printers = yes     # Caricare le stampanti

Inoltre bisogna creare la sezione [Printers]

[printers]
    path = /var/spool/samba    # Percorso dello spool di stampa
    printable = yes            # Stampante disponibile

Poi creare la sezione per la specifica stampante

 [HP]
    comment = HP Printer       # Commento sulla condivisione
    path = /var/spool/samba    # Percorso dello spool di stampa
    browsable = yes            # Permette la visualizzazione della lista delle risorse condivise

Di default ubuntu non crea la cartella /var/spool/samba quindi la si deve creare a mano, ed impostando i permessi di accesso.

sudo mkdir /var/spool/samba
sudo chmod -R 755 /var/spool/samba

Condividere Dispositivi di lettura

È anche possibile condividere un supporto di lettura come il dvd oppure il cd:

 [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 

Autenticazione

Esistono due possibilità per accedere ad una condivisione samba, la prima è quella di creare un utente samba virtuale tramite in un terminale il seguente comando:

sudo smbpasswd -a utente

mentre il secondo è quello di accedere alle condivisioni tramite utente guest, aggiungendo alla sezione nel file smb.conf il parametro guest ok = yes

Gestione utenti samba

Tutta la gestione degli utenti samba viene fatta tramite il comando smbpasswd, da dove è possibile creare oppure eliminare utenti, per maggiori informazioni riguardo al comando:

man smbpasswd

Gestione client

smbclient è un programma molto simile a client ftp da terminale, serve per visualizzare o connettersi a condivisioni samba presenti su server.

uno dei comandi più utilizzati è:

sudo smbclient -L IPServer

che permette di vedere tutte le cartelle condivise su un dato server.

Connessione al server

per connettersi ad un server samba si usa:

smbclient //SERVER/condivisione

Come detto prima i comandi del prompt sono uguali a quelli utilizzatati dal ftp in più mette a disposizione utilissimi tool per la gestione dei file, tramite il comando help è possibile avere maggiori informazioni riguardo ai comandi.

Log di samba

Tutti i log di samba sono presenti nella cartella /var/log/samba, suddivisi in tre categorie, la prima è log.nmbd dove vengono annotate tutte le operazioni NETBIOS, il secondo è log.smbd dove vengono registrate tutte le operazioni sui protocolli SMB/CIFS e per finire per ogni connessione instaurata con client o server samba crea un file di log chiamati log.[IP_ADDRESS]

Interfaccia web

Samba dispone di anche un interfaccia web chiamata swat (Samba Web Administration Tool), il pacchetto è installabile dai repository ufficiali. Per accedere all'interfaccia web di samba inserire nella barra di navigazione di un Browser Web l'indirizzo:

localhost:901

Ulteriori risorse


CategoryServer CategoryInternet