2 votos

Preguntas sobre los permisos, específicamente entre máquinas

Tengo un par de discos duros externos y me he dado cuenta de que los permisos en ellos son diferentes, lo que me ha hecho preguntarme cómo funcionan algunas cosas.

En el disco duro que parece ser normal, tiene los siguientes permisos en la máquina 1 (como se ve en el panel de información):

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

Ahora, al conectarlo a mi segundo ordenador, el usuario con el que estoy conectado sigue teniendo permisos de escritura. Al ver los permisos de nuevo veo:

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

1) Yo la razón por la que este segundo ordenador tiene permisos R&W porque myuser2 también es miembro de staff ?

2) Si es así, ¿cómo es el staff grupo en una máquina determinada para ser lógicamente el mismo que un grupo llamado staff en otra máquina? Es decir, en cuanto a la seguridad, ¿cómo es esto seguro?

¿Cómo se referencian los usuarios y grupos en los permisos del archivo, de una manera que sea "segura", pero que de alguna manera funcione a través de 2 máquinas completamente separadas? ¿Se hace por nombre? ¿Uid? ¿Gid (para grupos)? En cualquier caso, como no se trata de UUIDs, ¿cómo se puede clasificar esto como seguro? Uno podría simplemente asegurarse de que un usuario creado tiene el mismo uid que se requiere para ver un archivo que se supone que no puede ver, ¡y tendrá acceso!

5voto

klanomath Puntos 19587

En primer lugar, hay que conocer algunos comandos importantes:

ls -laO muestra mucho:

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

ls -elaO incluye las ACL:

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

El siguiente comando muestra todos los miembros de un grupo (el grupo de ejemplo aquí es el personal):

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

El siguiente comando muestra el UID, el GID y la pertenencia a grupos de nombre_usuario

id user_name

Por favor, compruebe sus diferentes usuarios/grupos con los dos últimos comandos para obtener una visión general.


Los permisos estándar en el sistema de archivos se aplican utilizando UID y GID en lugar de nombres. Así que

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

debe leerse como (suponiendo que el UID de 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)

Adjuntando Mi pasaporte a otro Mac (Mac2) - el UID/GID no se cambiará - revelará lo siguiente:

  • En el caso de que el UID=501 de myuser2 y el GID=20 (GID=20 (staff) es un grupo estándar en todos los Mac y todos los usuarios (estándar o admin) creados con las Preferencias del Sistema son miembros de él)

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

    que se traduce en:

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

    y miusuario2 en Mac2 tiene los mismos derechos que miusuario1 en Mac1

  • En caso de que el UID de myuser2=502 y el UID de myuser3=501 y ambos sean miembros de personal :

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

    miusuario2 como miembro de personal ya no es propietario pero todavía puede rwx.

  • En caso de que el UID de myuser2=502 y sea miembro de personal y myuser3 con UID=501 ha sido eliminado :

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

    miusuario2 como miembro de personal ya no es propietario pero todavía puede rwx.

  • En caso de que el UID de myuser2=503 y sea no miembro de personal y el UID=501 se elimina

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

    miusuario2 como otros (miembro de todo el mundo ?) puede rx.


Así que para responder a tus preguntas: la razón por la que miusuario2 en Mac2 tiene los mismos derechos que miusuario1 en Mac1 son los mismos UID y GID/membresías de grupo de ambos en sus respectivos host. Personal es un grupo por defecto en todos los Mac.

En su entorno actual (máquinas individuales/derechos de administrador para el/los usuario(s) principal(es)), el uso de unidades externas no es "seguro/guardado", sólo se utilizan los permisos para determinar el acceso. Y nunca se pretendió que lo fuera.

En una unidad organizativa (el usuario común de un puesto de trabajo es no admin) con una gestión de usuarios centralizada (OD, etc.) puede utilizar puntos de montaje aplicados y grupos especiales para tratar las unidades externas:

Propietario especial y un nuevo grupo para la unidad/punto de montaje:

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

y todos los usuarios que no sean administradores y que necesiten acceder a la(s) unidad(es) externa(s) son miembros de GID=512 ("Usuarios de la unidad externa")


Aun así, cuando el disco externo se pierde, cualquiera puede tener acceso a él. Para hacerlo seguro hay que cifrar el contenido de los discos externos.

1voto

yoliho Puntos 340

Pides mucha información sobre el modelo de seguridad de Unix que sospecho que es demasiado para una sola respuesta aquí.

Los datos que busca son los identificadores de usuario (UID) y los identificadores de grupo (GID), valores numéricos que corresponden a los nombres de usuario y de grupo.

Puede ver cuáles son id <username> por ejemplo, en mi ordenador

~/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)

Esto muestra que mi identificación de usuario es 502 mi grupo principal es staff*20( y lista los otros grupos en los que estoy.

A través de las máquinas el usuario y el grupo son iguales es que tienen el mismo número que es la respuesta a 2. Usted es más o menos correcto que no es tan seguro, pero en una red gestionada los inicios de sesión será controlado de forma centralizada por lo que sólo los usuarios autorizados pueden conectarse de esta manera.

En cuanto a la 3) el volumen está montado en un directorio del ordenador cliente y los permisos que se muestran son para ese enlace. Así que como un enlace simbólico la información sobre el nombre que se utiliza para acceder a la otra cosa puede diferir del permiso en la fuente.

Para 4) cada archivo/directorio es propiedad de un usuario, y tiene permisos para un grupo y también para todos los usuarios

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X