GNU/Linux >> Linux Esercitazione >  >> Linux

Un grande cambiamento per Samba in Ubuntu 22.04 e come aggirarlo

Se hai problemi a condividere la tua directory ~Public in Ubuntu 22.04, Jack Wallen ha la soluzione per te.

Con il rilascio di Ubuntu 22.04, sono avvenute diverse modifiche nascoste per rendere questa ultima versione LTS una delle migliori nella storia della distribuzione Linux supportata da Canonical. Ma c'è un cambiamento che ha suscitato un po' di scalpore. Quel problema sono le autorizzazioni predefinite delle home directory dell'utente.

In precedenza, l'autorizzazione alla directory home dell'utente era impostata su 755, il che consentiva ad altri utenti di visualizzare la directory, nonché i file e le sottodirectory contenenti. Per evitare un tale problema di sicurezza, gli sviluppatori hanno impostato l'autorizzazione per le home directory su 750, il che significa che solo il proprietario della home directory può visualizzare i contenuti.

Se tendi a condividere la tua cartella ~/Public, questo causa un grosso problema con Samba, in quanto il proprietario della home directory è l'unico che può accedere o attraversare la cartella localmente o attraverso la tua LAN. Questa modifica è stata apportata esclusivamente per motivi di sicurezza e credo che sia stata la strada giusta da percorrere, poiché non vi è alcun motivo per cui altri utenti dovrebbero essere in grado di visualizzare il contenuto della directory home dell'altro.

Con Samba, anche se usi public = yes , solo il proprietario di quella home directory può vedere la condivisione. Ciò significa anche se consenti specificamente ad altri di creare ed eliminare file in questa cartella tramite la finestra delle proprietà pubbliche di Nautilus (Figura A ), non funzionerà.

Figura A

cosa fai? Ho due possibili soluzioni per questo. Acquistiamoci.

Di cosa avrai bisogno

Le uniche cose che devi seguire sono un'istanza in esecuzione di Ubuntu Linux 22.04 e un utente con privilegi sudo. Con queste due cose a portata di mano, diamo il nostro Samba.

Copertura per sviluppatori da leggere

La soluzione più semplice ma meno sicura

Questa particolare correzione è il metodo più semplice per aggirare il problema. Tuttavia, e questo è un grosso problema, utilizzando questa opzione, stai eludendo la sicurezza aggiunta privando gli altri del diritto di visualizzare la tua home directory.

Se sei d'accordo, puoi aggirare l'aggiornamento riportando i permessi della tua home directory su 755 con il comando:

chmod o+rx /home/USER

Dove USER è il tuo nome utente.

Questo da solo dovrebbe risolvere il tuo problema, ma non è esattamente la soluzione più sicura.

La soluzione meno facile ma più sicura

Se questa non fosse un'opzione, potresti sempre usare la direttiva force user di Samba, che costringe l'utente guest a mascherarsi da te. Ciò mantiene la misura di sicurezza ma consente ad altri utenti di sfogliare i contenuti della tua directory ~/Public.

Per utilizzare questo metodo, apri il file di configurazione di Samba con:

sudo nano /etc/samba/smb.conf

Dovresti trovare in fondo a quel file la voce per la tua condivisione pubblica, che potrebbe assomigliare a questa:

[Public]
path = /home/jack/Public
public = yes
guest only = yes
browsable = yes
writable = no
read only = no
force create mode = 0666
force directory mode = 0777

In fondo a quella sezione, aggiungi la seguente riga:

force user = USER

Dove USER è il tuo nome utente. Salva e chiudi il file. Riavvia Samba con:

sudo systemctl restart smbd

A questo punto, qualsiasi utente sul tuo sistema Linux sarà in grado di visualizzare il contenuto della condivisione ~/Public utilizzando le proprie credenziali di accesso quando si connette a Samba.

La soluzione impegnativa ma più sicura

L'opzione migliore sarebbe condividere una directory al di fuori della tua casa perché evita l'intero problema delle autorizzazioni. Creiamo una nuova directory con il comando:

sudo mkdir /data

Modifica l'autorizzazione di quella directory con:

sudo chmod -R ugo+rw /data

Ora creiamo la condivisione. Apri la configurazione di Samba con:

sudo nano /etc/samba/smbd.conf

In fondo a quel file, incolla quanto segue:

[data]
path = /data
guest only = yes
browsable = yes
writable = no
read only = no
force create mode = 0666
force directory mode = 0777

Salva e chiudi il file. Riavvia Samba con:

sudo systemctl restart smbd

Ora dovresti vedere la nuova condivisione di dati, a cui qualsiasi utente con un account sul sistema dovrebbe essere in grado di accedere. Puoi anche aggiungere public =yes per dare accesso anonimo alla condivisione.

E questo è tutto ciò che serve per aiutare Samba a aggirare i nuovi permessi della home directory in Ubuntu Linux 22.04. Se non sei sicuro di quale soluzione utilizzare, sceglierei l'ultima opzione, poiché è più sicura. In ogni caso, sarai in grado di fornire a quegli utenti l'accesso al contenuto delle tue condivisioni Samba, indipendentemente dal fatto che si trovino nella tua home directory o meno.


Linux
  1. Per modificare l'autorizzazione per directory e file

  2. Come installare e configurare samba su Ubuntu Linux?

  3. Come impostare o modificare il fuso orario su Ubuntu 20.04 e 21.04

  4. Perché ottieni cp:omettere l'errore di directory in Linux e come risolverlo

  5. Scopri come modificare le autorizzazioni per file e cartelle

Come installare e configurare Samba su Ubuntu 18.04

Come installare e configurare Samba su Ubuntu

Come installare e configurare Samba su Ubuntu 20.04

Come iniziare e installare Wine per Ubuntu

Suggerimenti per Ubuntu:come modificare la data e l'ora su laptop o desktop

Come modificare la password su Ubuntu