GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso cancellare l'autorizzazione s su una directory in Linux?

Soluzione 1:

setuid e setgid

setuid e setgid (abbreviazione di set user ID upon execution e set group ID upon execution, rispettivamente) sono flag dei diritti di accesso Unix che consentono agli utenti di eseguire un eseguibile con i permessi del proprietario o del gruppo dell'eseguibile. Sono spesso utilizzati per consentire agli utenti di un sistema informatico di eseguire programmi con privilegi temporaneamente elevati per eseguire un'attività specifica. Sebbene i presunti privilegi di ID utente o ID gruppo forniti non siano sempre elevati, come minimo sono specifici.

Per rimuovere numericamente i bit setuid e setgid, devi prefissare il bit-pattern con un 0 (es:0775 diventa 00775 ).

Esegui per eliminare setuid e setgid:

chmod 00775 path

o

chmod a-st path

Soluzione 2:

Le s che vedi nella posizione "execute" nella colonna utente e gruppo sono i bit SetUID (Set User ID on Execution) e SetGID (Set Group ID on execution).

I permessi dei file Unix sono in realtà un numero ottale di 4 cifre SUGO

  • S controlla i bit SetUID (4), SetGID (2) e "Sticky" (1)
  • U controlla i bit Read(4)/Write(2)/Execute(1) per il proprietario del file
  • G controlla i bit di lettura/scrittura/esecuzione per il gruppo del file
  • O controlla i bit di lettura/scrittura/esecuzione per tutti gli altri.

Puoi rimuovere i bit setuid dalla tua directory con chmod ug-s directory o chmod 0755 directory

Per maggiori informazioni vedere la pagina man di chmod e questa pagina di Wikipedia sul bit SetUID.

Soluzione 3:

Aggiungendo alla risposta di ooshro...

Se utilizzi i permessi suid o sgid su una directory, tutti i file creati all'interno di quella directory avranno lo stesso proprietario (se suid) o gruppo (sgid) della directory in questione.

Lo uso per la mia condivisione di Samba a casa. La directory di base è di proprietà dell'utente nessuno e del gruppo olympia, e le autorizzazioni sono 2770. Quindi devi essere nel gruppo olympia per leggere o scrivere qualsiasi cosa sotto quella directory, e si assicurerà che olympia sia il gruppo proprietario di tutto ciò che si trova sotto di essa . Ho anche Samba configurato per utilizzare un dirmask di 2770 e un filemask di 660 per mantenere i permessi corretti lungo tutto l'albero.


Linux
  1. Come Linux è arrivato al mainframe

  2. Come trovare il file più vecchio in un albero di directory in Linux

  3. Come cancellare la cache di memoria in Linux

  4. Linux:come combinare l'albero con la dimensione della directory?

  5. Come posso cancellare le statistiche dell'interfaccia su Linux

Come trovare la dimensione di una directory in Linux

Come elencare i membri di un gruppo in Linux

Come cancellare la memoria di scambio in Linux

Come trovare la dimensione totale di una directory in Linux

Come copiare la directory su Linux

Come migrare la directory HOME su Linux