Introducción.
Acerca del comando chattr.
El comando chattr se utiliza para cambiar los atributos de los sistemas de ficheros ext2 y ext3. Desde cierto punto de vista, es análogo al comando chmod, pero con diferente sintaxis y opciones. Utilizado adecuadamente, dificulta las acciones en el sistema de ficheros por parte de un intruso que haya logrado suficientes privilegios en un sistema.
En la mayoría de los casos, cuando un intruso consigue suficientes privilegios en un sistema, lo primero que hará será eliminar los registros de sus actividades modificando estructuras de los ficheros de bitácoras del sistema y otros componentes. Utilizar el comando chattr ciertamente no es obstáculo para un usuario experto, pero, afortunadamente, la gran mayoría de los intrusos potenciales no suelen ser expertos en GNU/Linux o Unix, dependiendo enormemente de diversos programas o guiones (los denominados rootkits y zappers) para eliminar aquello que permita descubrir sus actividades.
Utilizar el comando chattr, incluido en el paquete e2fsprogs, que se instala de forma predeterminada en todas las distribuciones de GNU/Linux por tratarse de un componente esencial, hace más difícil borrar o alterar bitácoras, ficheros de configuración y componentes del sistema. Theodore Ts’o es el desarrollador y quien se encarga de mantener e2fsprogs, mismo que se distribuye bajo los términos de la licencia GNU/GPL, e incluye otras herramientas como e2fsck, e2label, fsck.ext2, fsck.ext3, mkfs.ext2, mkfs.ext3, tune2fs y dumpe2fs, entre otras.
Opciones:
- -R Cambia recursivamente los atributos de directorios y sus contenidos. Los enlaces simbólicos que se encuentren, son ignorado
- -V Salida de charttr más descriptiva, mostrando además la versión del programa.
- -v Ver el número de versión del programa.
- + Hace que se añadan los atributos especificados a los atributos existentes de un fichero.
- - Hace que se eliminen los atributos especificados de los atributos existentes de un fichero
- = Hace que solamente haya los atributos especificados.
Atributos:
- A Establece que la fecha del último acceso (atime) no se modifica.
- a Establece que el fichero solo se puede abrir en modo de adjuntar para escritura.
- c Establece que el fichero es comprimido automáticamente en el disco por el núcleo del sistema operativo. Al realizar lectura de este fichero, se descomprimen los datos. La escritura de dicho fichero comprime los datos antes de almacenarlos en el disco.
- D Cuando se trata de un directorio, establece que los datos se escriben de forma sincrónica en el disco. Es decir, los datos se escriben inmediatamente en lugar de esperar la operación correspondiente del sistema operativo. Es equivalente a la opción dirsync del comando mount, pero aplicada a un subconjunto de ficheros.
- d Establece que el fichero no sea candidato para respaldo al utilizar la herramienta dump.
- i Establece que el fichero será inmutable. Es decir, no puede ser eliminado, ni renombrado, no se pueden apuntar enlaces simbólicos, ni escribir datos en el fichero.
- j En los sistemas de ficheros ext3, cuando se montan con las opciones data=ordered o data=writeback, se establece que el fichero será escrito en el registro por diario (Journal). Si el sistema de ficheros se monta con la opción data=journal (opción predeterminada), todo el sistema de ficheros se escribe en el registro por diario y por lo tanto el atributo no tiene efecto.
- s Cuando un fichero tiene este atributo, los bloques utilizados en el disco duro son escritos con ceros, de modo que los datos no se puedan recuperar por medio alguno. Es la forma más segura de eliminar datos.
- S Cuando el fichero tiene este atributo, sus cambios son escritos de forma sincrónica en el disco duro. Es decir, los datos se escriben inmediatamente en lugar de esperar la operación correspondiente del sistema operativo. Es equivalente a la opción sync del comando mount.
- u Cuando un fichero con este atributo es eliminado, sus contenidos son guardados permitiendo recuperar el fichero con herramientas para tal fin.
Utilización:
chattr [-RV] +-=[AacDdijsSu] [-v versión] ficheros
Ejemplos:
El siguiente comando agrega el atributo inmutable al fichero archivo.txt..
chattr +i archivo.txt
El siguiente comando elimina el atributo inmutable al fichero archivo.txt.
chattr -i archivo.txt
El siguiente comando agrega el modo de solo adjuntar para escritura al fichero archivo.txt.
chattr +a archivo.txt
El siguiente comando elimina el modo de solo adjuntar para escritura al fichero archivo.txt.
chattr -a archivo.txt
El siguiente comando establece que el fichero archivo.txt solo tendrá los atributos a, A, s y S.
chattr =aAsS archivo.txt
El siguiente comando lista los atributos del fichero archivo.txt.
lsattr archivo.txt
Vía | linuxparatodos
