Domande relative alle autorizzazioni, in particolare tra le macchine

2

Ho un paio di HDD esterni e ho notato che le autorizzazioni su di essi sono diverse, il che mi ha fatto pensare a come funzionano alcune cose.

Sul disco rigido che sembra essere normale, ha le seguenti autorizzazioni sulla macchina 1 (come si vede nel pannello delle informazioni):

myuser1 (Me) - Read & Write
staff        - Read & Write
everyone     - Read only

Ora quando lo collego al mio secondo computer, l'utente che ho effettuato l'accesso ha ancora permessi di scrittura. Quando visualizzo nuovamente i permessi, vedo:

myuser2 (Me) - Read & Write
staff        - Read & Write
everyone     - Read only

1) I il motivo per cui questo secondo computer ha le autorizzazioni R & W perché myuser2 è anche un membro di staff ?

2) In caso affermativo, in che modo il gruppo staff su una macchina è determinato per essere logicamente uguale a un gruppo denominato staff su un'altra macchina? Cioè sicurezza, come è sicuro?

In che modo utenti e gruppi fanno riferimento alle autorizzazioni del file, in un modo che è "sicuro", eppure funzionano in qualche modo su 2 macchine completamente separate? È fatto per nome? uid? gid (per gruppi)? In entrambi i casi, poiché questi non sono UUID, come può essere classificato sicuro? Si potrebbe semplicemente garantire che un utente sia creato con lo stesso uid necessario per visualizzare un file che non dovrebbero vedere, e avranno accesso!

    
posta Sencha 02.02.2016 - 11:53
fonte

2 risposte

5

In primo luogo alcuni importanti comandi da sapere:

ls -laO mostra molto:

drwxrwxr-x+ 19 myuser1  staff   714  2 Feb 10:31 My Passport

ls -elaO include ACL:

drwxrwxr-x+ 19 myuser1  staff   714  2 Feb 10:31 My Passport
  0: user:_spotlight inherited allow list,search,file_inherit,directory_inherit

Il seguente comando mostra tutti i membri di un gruppo (il gruppo di esempio qui è personale):

members () { dscl . -list /Users | while read user; do printf "$user "; dsmemberutil checkmembership -U "$user" -G "$*"; done | grep "is a member" | cut -d " " -f 1; }; members staff

Il seguente comando mostra l'UID, il GID e le appartenenze ai gruppi di user_name

id user_name

Controlla i tuoi vari utenti / gruppi con gli ultimi due comandi per ottenere una panoramica.

Le autorizzazioni standard nel file system vengono applicate utilizzando UID e GID anziché i nomi. Quindi

drwxrwxr-x+ 19 myuser1  staff   714  2 Feb 10:31 My Passport

dovrebbe essere letto come (assumendo UID di myuser1 = 501):

drwxrwxr-x+ 19 UID=501  GID=20   714  2 Feb 10:31 My Passport
 |  |  |
 |  |  |Others (Members of GID=12 (Everyone)?) can read and execute
 |  |Members of GID=20 can read, write and execute
 |UID=501 can read, write and execute (owner)

Allegando Il mio passaporto a un altro Mac (Mac2) - l'UID / GID non sarà cambiato - rivelerà quanto segue:

  • Nel caso in cui l'UID di myuser2 = 501 e GID = 20 (GID = 20 (personale) è un gruppo standard su ogni Mac e ogni utente (standard o admin) creato con le Preferenze di Sistema ne è membro)

    drwxrwxr-x+ 19 UID=501  GID=20   714  2 Feb 10:31 My Passport
    

    che si ritrasforma in:

    drwxrwxr-x+ 19 myuser2  staff  714  2 Feb 10:31 My Passport
    

    e myuser2 su Mac2 ha gli stessi diritti di myuser1 su Mac1

  • Nel caso in cui UID di myuser2 = 502 e UID di myuser3 = 501 ed entrambi siano membri di staff :

    drwxrwxr-x+ 19 myuser3  staff  714  2 Feb 10:31 My Passport
    

    myuser2 come membro di staff non è più proprietario ma può ancora rwx.

  • Nel caso in cui UID di myuser2 = 502 e sia membro di staff e myuser3 con UID = 501 sia stato eliminato :

    drwxrwxr-x+ 19 (unknown user)  staff  714  2 Feb 10:31 My Passport
    

    myuser2 come membro di staff non è più proprietario ma può ancora rwx.

  • Nel caso in cui UID di myuser2 = 503 ed è non membro di staff e UID = 501 è cancellato

    drwxrwxr-x+ 19 (unknown user)  staff  714  2 Feb 10:31 My Passport
    

    myuser2 come altri (membro di tutti ?) può rx.

Quindi per rispondere alle tue domande: il motivo per cui myuser2 su Mac2 ha gli stessi diritti di myuser1 su Mac1 sono le stesse appartenenze UID e GID / gruppo di entrambi i rispettivi host. Lo staff è un gruppo predefinito su ogni Mac.

Nel tuo ambiente corrente (macchine singole / diritti di amministratore per gli utenti principali) che utilizzano unità esterne non è "sicuro / salva", solo utilizzando le autorizzazioni per determinare l'accesso. E non è mai stato pensato per essere.

In un'unità organizzativa (l'utente comune di una workstation è no admin) con una gestione centralizzata degli utenti (OD ecc.) è possibile utilizzare i punti di montaggio applicati ei gruppi speciali gestiscono le unità esterne:

Proprietario speciale e un nuovo gruppo per l'unità / punto di montaggio:

drwxrwx--- 19 UID=501  GID=512   714  2 Feb 10:31 My Passport

o

drwxrwx--- 19 UID=501  GID=512   714  2 Feb 10:31 My Passport/share_folder

e tutti gli utenti non amministratori che richiedono l'accesso alle unità esterne sono membri di GID = 512 ("Utenti di unità esterne")

Tuttavia, quando l'unità esterna viene persa, chiunque può accedervi. Per renderlo sicuro devi crittografare il contenuto dei dischi esterni.

    
risposta data 02.02.2016 - 16:20
fonte
1

Stai chiedendo molte informazioni sul modello di sicurezza di Unix che sospetto sia troppo per una risposta qui.

Il pezzo di informazione che stai cercando sono User id (UID) e group id (GID) Questo valore numerico corrisponde ai nomi di utenti e gruppi.

Puoi vedere cosa sono di id <username> , ad es. sul mio computer

~/D/c/TV $ id mark
uid=502(mark) gid=20(staff) groups=20(staff),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),399(com.apple.access_ssh),33(_appstore),100(_lpoperator),204(_developer),395(com.apple.access_ftp),398(com.apple.access_screensharing)

Questo dimostra che il mio id utente è 502 il mio gruppo principale è staff * 20 (ed elenca gli altri gruppi in cui mi trovo.

Attraverso le macchine, l'utente e il gruppo sono uguali, hanno lo stesso numero che è la risposta a 2. Hai ragione di non essere sicuro ma in una rete gestita gli accessi saranno controllati centralmente in modo che solo gli utenti autorizzati possano connetti in questo modo.

Come per 3) il volume è montato su una directory sul computer client e le autorizzazioni mostrate sono per quel collegamento. Quindi, come un collegamento simbolico, le informazioni sul nome che usi per accedere all'altra cosa possono differire dall'autorizzazione sulla fonte.

Per 4) ogni file / directory è di proprietà di un utente e ha le autorizzazioni per un gruppo e anche per tutti gli utenti

    
risposta data 02.02.2016 - 18:55
fonte

Leggi altre domande sui tag