Come posso configurare le condivisioni Samba a cui possono accedere solo determinati utenti?


31

Ho un array RAID10 montato su Ubuntu Server 12.04. Ho creato alcune cartelle all'interno del punto di montaggio e voglio la seguente funzionalità.

Ci saranno 4 utenti, 3 dei quali sono utenti Windows: 'uno' 'due' e 'tre'. 'quattro' è uno streamer multimediale che deve solo accedere alla condivisione MEDIA. Uno Due e Tre devono avere pieno accesso alla condivisione multimediale e alle proprie condivisioni personali (per i documenti) a cui nessun altro utente tranne loro può accedere.

Attualmente, l'utente quattro funziona perfettamente (ha pieno accesso alla cartella MEDIA e non può accedere alle cartelle di proprietà di altri utenti). Il problema è che, quando ho effettuato l'accesso come l'altro utente, non riesco ad accedere a nessuna delle due condivisioni; (ho provato ad usare validi utenti = e ad usare chmod per aggiungere permessi inutilmente).

TL; DR: Devo sapere come configurare correttamente Samba per limitare l'accesso a determinate condivisioni per determinati utenti e consentire a tutti loro di accedere a una cartella comune (tutti i file su un supporto RAID10).

Risposte:


45

Ogni utente di samba deve avere anche un normale account Linux.

  1. Assicurati che ogni utente possa accedere alla cartella media comune sul lato unix (senza samba); In alternativa, è possibile impostare force userinsmb.conf
  2. Assicurati che ogni utente abbia una password di samba impostata. Puoi impostarlo consudo smbpasswd -a your_user
  3. Guarda a /etc/samba/smb.conf : controlla se la linea security = userè impostata nella [GLOBAL]sezione
  4. Imposta le tue condivisioni /etc/samba/smb.conf, vedi esempio

Esempi di condivisione:

[allaccess]
    path = /media/common
    read only = no
    writeable = yes
    browseable = yes
    valid users = one, two, three, four
    create mask = 0644
    directory mask = 0755
    ; if you set this, all files get written as this user
    force user = one

Questo sarà accessibile tramite \\yourserver\allaccess

Una condivisione per singolo utente:

[special]
    path = /home/two/onlytwo
    read only = no
    writeable = yes
    browseable = yes
    valid users = one
    create mask = 0640
    directory mask = 0750

Riavvia il server samba dopo le modifiche con:

sudo service smbd restart

2
Signore, sei un dio, le maschere e l'utente della forza erano ciò di cui avevo bisogno da sempre, ma non capivo.
Liam,

4
Penso che "sola lettura" e "scrivibile" siano i cosiddetti "sinonimi invertiti" l'uno per l'altro. Non è necessario impostarli entrambi.
Mike Diehn,

1
Eccezionale! Avevo fatto tutto tranne il passaggio 2. Non l'ho mai visto menzionato altrove nell'impostazione di condivisioni di samba. Grazie!!
Patrick Steele,

Non specificare il nome della condivisione come temp se lo si desidera scrivere.
SergA,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.