Come funzionano local_umask e file_open_mode?


11

Ho avuto dei problemi con le autorizzazioni dei file quando gli utenti locali hanno caricato i loro file tramite vsftp su un server.

Volevo che i file avessero tutte le autorizzazioni 766. Dopo molte prove ed errori ho scoperto che dovevo configurare le impostazioni in questo modo:

local_umask=011
file_open_mode=0777

Ma non so perché ciò comporti 766 autorizzazioni. Qualcuno può spiegare questo?

Risposte:


13

Il demone vsftpd creerà le autorizzazioni per i file come 0777 . Da ciò, viene sottratto il local_umask( 0011 ). Umask essenzialmente rimuove le autorizzazioni che non si desidera che gli utenti dispongano. Ciò comporta che le autorizzazioni per i file dell'utente siano impostate su 0766 .

Per ulteriori informazioni, consulta questo articolo sulle autorizzazioni per i file .


2
Sì, l'ho capito, conosco il trucco. Ma come funziona? Perché non riesco a impostare solo 766?
OrangeTux,

1

Il valore umask viene sottratto dall'impostazione della modalità aperta. Se non si fornisce un valore umask personalizzato, viene utilizzato quello predefinito (077), portando a un risultato non desiderato.


-1

Stai ricevendo questa autorizzazione perché:

1) Impostando local_umask = 011 dici allo vsftp di impostare:

0: leggi, scrivi ed esegui 1: leggi e scrivi 1: leggi e scrivi

Ciò equivale a chmod 766.

2) Il valore di file_open_mode = 0777 non viene analizzato,

Qui puoi trovare un'ottima spiegazione di cosa sono umask e come usarlo: https://www.cyberciti.biz/tips/understanding-linux-unix-umask-value-usage.html


Questa non è una risposta alla domanda. (1) L'OP vuole proteggere i file 766, non 666, quindi stai affrontando lo scenario sbagliato. (2) L'OP ha una configurazione che funziona. La domanda è: perché funziona. Non hai affrontato questo.
Scott,

Ok, @Scott, ha modificato la risposta.
Fernando Kosh,
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.