Come configurare una cartella condivisa di rete su Ubuntu con Samba

Se hai mai desiderato condividere facilmente i file sulla tua rete domestica su più sistemi operativi, non cercare oltre Samba.

Questa guida ti mostrerà come configurare una cartella condivisa di rete su Ubuntu Linux usando Samba. Con il server Samba, puoi condividere facilmente file sulla tua rete, indipendentemente dal fatto che tu stia utilizzando Windows, macOS o Linux.

Cos’è la samba?

Samba è un servizio di condivisione file che implementa versioni open source della suite di protocolli SMB, originariamente sviluppata da Microsoft e IBM. Samba contiene programmi che gli consentono di interagire con i protocolli di condivisione file di Microsoft Windows.

Samba consente inoltre di comunicare facilmente con altri client utilizzando la rete TCP/IP standard.

Passaggio 1: installazione di Samba

Questa guida utilizzerà Ubuntu Linux 20.04 LTS, ma i passaggi dovrebbero funzionare anche se utilizzi Ubuntu 16.04 o versioni successive. Inizia aggiornando le informazioni sull’origine del pacchetto.

sudo apt update

Quindi, installa Samba usando il comando seguente:

sudo apt install samba

Per verificare se Samba è stato installato correttamente, esegui il seguente comando:

smbd --version

L’output dovrebbe essere simile a quello riportato di seguito.

Passaggio 2: configurazione di Samba

Per poter condividere file in modo sicuro con altri dispositivi di rete, devi configurare il server Samba. Il file di configurazione principale per Samba si trova in /etc/samba/smb.conf sul tuo PC. Questa guida usa l’editor di testo Vim per modificare il file di configurazione di Samba, ma sentiti libero di usare qualsiasi altro editor di testo di tua scelta.

Nota: è necessario disporre dei privilegi di amministratore per modificare il file di configurazione.

sudo vim /etc/samba/smb.conf

Aggiungi le seguenti righe in fondo al file di configurazione.

[sambashare]
 comment= Network Shared Folder by Samba Server on Ubuntu
 path = /home/your_username/sambashare
 force user = smbuser
 force group = smbgroup
 create mask = 0664
 force create mode = 0664
 directory mask = 0775
 force directory mode = 0775
 public = yes
 read only = no

Ricordati di aggiornare il parametro del percorso con il tuo nome utente. Puoi ottenere il tuo nome utente eseguendo il seguente comando:

echo $USER

Per uscire dall’editor Vim dopo aver apportato le modifiche, digita semplicemente :wq e premi il tasto Invio .

Capire le configurazioni

Ecco una breve descrizione delle righe di configurazione appena aggiunte.

  • Sezione : Una nuova sezione nel file di configurazione è rappresentata da parentesi quadre ( [ ] ). In questo caso, la sezione è [sambashare] .
  • Commento : questa riga di codice fornisce una breve descrizione dell’argomento di questa sezione. In particolare, è utile se hai diverse sezioni di directory condivise nel file di configurazione.
  • Percorso : questo è il percorso della directory della cartella condivisa di rete designata.
  • Forza utente : l’utente di sistema che il server Samba utilizzerà per condividere i file.
  • Forza gruppo : Il nome del gruppo a cui apparterrà l’utente del sistema Samba.
  • Crea maschera : questo parametro imposterà i permessi per i file appena creati nella cartella condivisa. In questo caso, il valore è 0664 che significa che il proprietario del file e il gruppo avranno i permessi di lettura e scrittura mentre gli altri utenti avranno solo i permessi di lettura.
  • Modalità di creazione forzata : funziona insieme al parametro di creazione della maschera per impostare i permessi file corretti.
  • Maschera directory : questo parametro determina i permessi per le cartelle nella cartella condivisa. Permessi di 0775, significa che il proprietario e il gruppo hanno i permessi di lettura, scrittura ed esecuzione, mentre altri hanno solo i permessi di lettura ed esecuzione.
  • Force directory mode : questo parametro funziona in collaborazione con la maschera della directory per assicurarsi che sia impostata l’autorizzazione alla directory corretta.
  • Public : questo parametro specifica che questa è una cartella pubblica sulla rete e che altri dispositivi possono accedervi.
  • Sola lettura : specifica i permessi per la modifica dei file all’interno della cartella condivisa.

Passaggio 3: creazione di risorse Samba

Dopo aver configurato il server Samba, ora devi creare le risorse necessarie come l’utente Samba e la directory da condividere. Queste risorse faciliteranno il processo di condivisione di una cartella in rete.

1. Cartella condivisa

Devi creare la cartella condivisa nel percorso specificato nel file di configurazione di Samba sopra. Questa guida utilizza una cartella condivisa denominata sambashare situata nella tua home directory.

Passa alla tua home directory usando il comando cd .

cd ~

Quindi crea la directory condivisa usando il comando seguente:

mkdir -p sambashare

2. Utente e gruppo Samba

Il passaggio successivo consiste nel creare l’utente e il gruppo del sistema Samba specificati nel file di configurazione.

Puoi creare il gruppo di sistema Samba usando il seguente comando:

sudo groupadd --system smbgroup

Quindi, crea l’utente del sistema Samba usando useradd .

sudo useradd --system --no-create-home --group smbgroup -s /bin/false smbuser

Il comando sopra crea un utente di sistema e aggiunge l’utente al gruppo Samba creato sopra. Inoltre, poiché si tratta di un utente di sistema, non verrà creata alcuna directory home.

3. Modifica del proprietario della cartella condivisa

Una volta che l’utente e il gruppo Samba sono a posto, ora puoi cambiare il proprietario della cartella condivisa con il nuovo utente smbuser e il gruppo con smbgroup . Puoi ottenerlo usando il comando seguente:

sudo chown -R smbuser:smbgroup ~/sambashare

Infine, impartisci il comando seguente per concedere al gruppo l’accesso in scrittura alla cartella condivisa e al contenuto al suo interno.

sudo chmod -R g+w ~/sambashare

Passaggio 4: riavviare il servizio Samba

Dovresti riavviare il servizio Samba per rendere effettive le modifiche nel file di configurazione di Samba.

sudo systemctl restart smbd

Dopo il riavvio del servizio, puoi verificarne lo stato con il comando seguente:

sudo systemctl status smbd

Nota : se hai il firewall abilitato, dovresti anche aggiungere Samba alle regole abilitate usando il comando ufw .

sudo ufw enable samba

Passaggio 5: accesso alla cartella condivisa

La tua cartella condivisa è ora accessibile dai dispositivi sulla tua rete.

Su Windows

In Windows, puoi accedere alla cartella condivisa utilizzando Windows Explorer. Puoi avviare Esplora file utilizzando la scorciatoia da tastiera Windows + E.

Nella barra degli indirizzi, digita ip_address_of_pc_with_shared_foldersambashare .

Ricorda di sostituire con l’indirizzo IP corretto e il nome della cartella condivisa.

Il sistema ti chiederà anche di inserire il nome utente e la password dell’utente sul PC Linux.

Su Ubuntu

Su Ubuntu Linux, apri il file manager predefinito e fai clic sul pulsante Altre posizioni . Quindi, nell’input Connetti al server , inserisci un indirizzo IP nel seguente formato:

smb://ip_adresss_of_pc_with_shared_folder/sambashare

Puoi connetterti come utente registrato o anonimo. Tieni presente che se selezioni Utente registrato dal menu a discesa, dovrai specificare le credenziali dell’utente.

Su macOS

Anche gli utenti Mac possono accedere facilmente alla cartella condivisa. Nel menu Finder, fai clic sulla scheda Rete e verrà elencato il computer con la cartella condivisa pubblica. Selezionalo e dovresti essere in grado di accedere ai file.

Condivisione efficiente di file tra più dispositivi

Questa guida ha esaminato come condividere file su una rete utilizzando Samba. Con Samba puoi condividere file in rete indipendentemente dal sistema operativo in esecuzione sui dispositivi.

Non solo Linux, ma puoi anche configurare una cartella di rete condivisa sul tuo computer Windows.