1 / 20

Permisos Ficheros

Permisos Ficheros. Todo usuario tiene un UID (User IDentification) que es único. Dentro de /etc/passwd están definidos los usuarios. Todo usuario pertenece a un grupo GID (Group IDentification) que también es único. Dentro de /etc/group están definidos los grupos.

mei
Download Presentation

Permisos Ficheros

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Permisos Ficheros • Todo usuario tiene un UID (User IDentification) que es único. • Dentro de /etc/passwd están definidos los usuarios. • Todo usuario pertenece a un grupo GID (Group IDentification) que también es único. • Dentro de /etc/group están definidos los grupos. • Comando id usuario, permite visualizar información de UID y GID así como los grupos a los que pertenece el usuario. • El sistema trabaja internamente con UID y con GID y no con los nombres. • Se asocia un UID y GID a cada fichero, es decir a cada inodo, que define su propietario y su grupo con derechos

  2. Permisos Ficheros • Si el UID del usuario es el mismo que el UID del fichero quiere decir esto que el usuario es el propietario. • Si los UID son diferentes, se comprueba si el GID del usuario es el mismo que el GID del fichero, si es así, el usuario pertenece al grupo con privilegios del fichero. • Para el resto de los casos, ni es el propietario, ni es un miembro del grupo con privilegios, se trata del resto de la gente.

  3. Permisos Ficheros • Ficheros: • r: se puede ver el contenido del fichero, cargarlo en memoria y copiar • w: se puede modificar el contenido del fichero, pero no se puede eliminar el fichero. • x: se puede ejecutar el fichero.

  4. Permisos Ficheros • Directorio: • r: se puede listar el contenido del directorio. Sin esta autorización el comando ls o find no podrán mostrar nada. Aún así si podremos acceder al fichero si conocemos su ruta. • w: se puede modificar los elementos del directorio (Catálogo), se puede crear, suprimir y nombrar ficheros dentro del directorio. Este permiso es el que controla la posibilidad de borrar ficheros. • x: se puede acceder al directorio por cd y se puede listar, sin esta autorización es imposible acceder al directorio.

  5. Permisos Ficheros • Modificación de permisos: • Cuando se crea un directorio o un fichero se crean con unos permisos por defecto. • rw-r--r-- (644) Para ficheros. • rwxr-xr-x (755) Para directorios. • Comando chmod permite cambiar los permisos de los ficheros. Existen dos formas: • Por medio de símbolos. • Por medio del sistema octal.

  6. Permisos Ficheros • Modificación de permisos por símbolos: • u: para propietario. • g: para grupo del propietario. • o: para el resto del mundo (others) • +: añade permiso. • -: retira permiso. • =: los permisos que tendrá. • r: lectura. • w: escritura. • x: ejecución.

  7. Permisos Ficheros • Modificación de permisos por símbolos: • chmod u+x,g+wx,o+wx fich1.txt • chmod ugo+rwx fich2.txt • chmod u=rwx,g=x,o=x fich3 • chmod o=fich suprime todos los derechos • Si queremos suprimir todos los derechos no especificaremos nada después de =

  8. usuario grupo otros r w x r w x r w x 1 1 0 1 0 0 1 0 0 6 4 4 Permisos Ficheros • Modificación de permisos por sist octal: • A cada permiso le asignaremos un valor en octal. • chmod 644 fich1 • 400+200+40+4 = 644 • No permite modificar un único permiso.

  9. Permisos Ficheros • Cambio de propietario y grupo: • Para cambiar de propietario a un fichero o ficheros: • chown usuario o UID fich1 [fich2 fcih3…] • Para cambiar el grupo de un fichero o ficheros: • chgrp grupo o GID fich1 [fich2 fich3 …..] • No se modificaran los permisos para los ficheros ni su ubicación. • El parámetro –R cambia la propiedad de forma recursiva. • chown usuario:grupo fich1 [fich2 fich3 …] • chown usuario.grupo fich1 [fich2 fich3 ….] • Sólo root puede cambiar el propietario de un fichero, un usuario puede cambiar el grupo de un fichero si pertenece al nuevo grupo.

  10. Permisos Ficheros • Mácara de permisos: • Por defecto todo fichero y directorio creado se le asocian una serie de permisos por defecto: • 644 para ficheros 755 para directorios • Esta forma predefinida se puede cambiar mediante el comando umask • umask (abreviatura de user mask, máscara de usuario) establece los permisos por defecto para los nuevos archivos y directorios creados por el proceso actual.

  11. Permisos Ficheros • Mácara de permisos: • umask 022 (- - - - w - - w -) • umask coge como parámetro un valor en octal del cual cada permiso individual será suprimido de los derechos de acceso del fichero o directorio. • Por defecto se crean: • Ficheros con permisos 666 (r w - r w - r w -) • Directorios con permisos 777 (r w x r w x r w x) • Se aplica la máscara 022 ( - - - - w - - w -) • La máscara se aplica al conjunto de ficheros. • La máscara no modifica el los permisos de los ficheros existentes, solo a los creados a partir de ese momento.

  12. Permisos Ficheros • Mácara de permisos: • Para un fichero: • r w - r w - r w - (666) • - - - - w - - w - (022) • r w - r - - r - - (644) • Para un directorio: • r w x r w x r w x (777) • - - - - w - - w - (022) • r w x r - x r - x (755) • No es sustraer o restar sino retirar • Ejemplo: ¿qué ocurre si la máscara fuera 027?

  13. Permisos Ficheros • Permisos especiales SUID, SGID: • Es posible otorgar permisos especiales para ficheros ejecutables. • Estos permisos de acceso extendidos aplicados a un comando permiten sustituir los permisos otorgados al usuario que lo inició por los permisos del propietario o del grupo de pertenencia del comando.

  14. Permisos Ficheros • Permisos especiales SUID, SGID: • Ejemplo comando passwd • usuario@debdelta:/$ ls -l /etc/passwd • -rw-r--r-- 1 root root 1619 dic 17 19:32 /etc/passwd • /etc/passwd pertenece a root, únicamente root puede escribir en él. • usuario@debdelta:/$ ls -l /usr/bin/passwd • -rwsr-xr-x 1 root root 34740 feb 15 2011 /usr/bin/passwd • Lleva un nuevo permiso s, para los permisos del usuario root, que permite ejecutar con los permisos del propietario del fichero o su grupo de pertenencia a un usuario. • chmod u+s comando chmod 4755 comando • chmod g+s comando chmod 2755 comando • Sólo el propietario o root pueden activar esta propiedad. La propiedad tiene sentido sólo si está si se han establecido los permisos de ejecución previamente, atributo x en el propietario o grupo). Si estos no están presentes se sustituye s por S

  15. Permisos Ficheros • Permisos especiales SUID, SGID: • Ejemplo: • #include <stdio.h> • #include <unistd.h> • main(){ • char a; • printf("UID:%d,EUID: %d\n",getuid(),geteuid()); • scanf("%c",&a); • }

  16. Permisos Ficheros • Permisos especiales SUID, SGID: • Como root, creamos el fichero testsuid.c y lo compilaremos. • cc –o testsuid testsuid.c • Cambiamos sus permisos: chmod u+s testsuid ó chmod 4755 testsuid. • Comprobamos sus permisos: ls –l testsuid • Cambiamos a otro usuario, su – usuario • Comprobamos los identificadores con id. • Ejecutamos la aplicación ./testsuid & • UID:1000, EUID:0 CTRL+Z Paramos • La aplicación la ejecuta usuario con UID:1000 , ¡pero el usuario efectivo, es root ! • ps ax –o pid,ruser,ruid,euser,euid,comm

  17. Permisos Ficheros • Permisos especiales SUID, SGID: • Ejemplo: • Ejecutemos como usuario: • find /etc 2>error.txt • Modifica los permisos pertinentes para que no se produzcan errores, posteriormente establece los permisos iniciales.

  18. Permisos Ficheros • Permisos especiales SUID, SGID: • Ejemplo: • whereis find; cd /usr/bin ;ls –l find • --rwxr-xr-x 1 root root 136152 oct 26 2010 find • find /etc 2> error.txt • Contendrá líneas de error debido a falta de permisos. • su; chmod u+s /usr/bin/find • ls -l /usr/bin/find • -rwsr-xr-x 1 root root 136152 oct 26 2010 /usr/bin/find • su – usuario • find /etc 2>error1.txt Está vacío, no hay errores de acceso. • su; chmod 755 /usr/bin/find volvemos a dejar las cosas igual que en el origen.

  19. Permisos Ficheros • Permisos especiales SUID, SGID: • Para encontrar todos los ficheros con suid: • find / -perm 4000 –print • Para econtrar todos los ficheros con sgid: • Find / -perm 2000 –print

  20. Permisos Ficheros • Permisos especiales Sticky bit: • Este bit suele asignarse en directorios a los que todos los usuarios tienen acceso, y permite evitar que un usuario pueda borrar ficheros/directorios de otro usuario dentro de ese directorio, ya que todos tienen permiso de escritura. • ls –ld /comun • drwxrwxrwt 10 root root 4096 ene 13 19:24 /tmp • su; chmod 1777 /tmp • drwxrwxrwt 10 root root 4096 ene 13 19:24 /tmp

More Related