GNU/Linux >> Tutoriales Linux >  >> Linux

¿Ocultar datos en los sistemas de archivos?

Quiero ocultar algunos archivos para que ni siquiera ls -a puede encontrarlo No estoy hablando de agregar '.' delante del nombre del archivo.
Estaba pensando si podría crear llamadas al sistema separadas para acceder a esos archivos. La necesidad real es ocultar algunos archivos de registro del usuario. Estoy almacenando los datos MAC de algunos archivos y no quiero que el usuario vea esos archivos de registro. Actualmente, solo conozco una forma de ocultar datos, es decir, agregando '.' delante del nombre del archivo. Pero el usuario puede ver el archivo con la simple llamada ls -a . Entonces, quiero saber si hay alguna otra forma de ocultar esos datos de registro.

Respuesta aceptada:

Como han señalado otros, si el propósito de esto es dificultar el acceso a un archivo persistente, ocultarlo probablemente sea el enfoque incorrecto. En este caso, el uso de medidas adecuadas de control de acceso o incluso criptografía, si la aplicación lo amerita, podría ser una solución. Por otro lado, la creación de temporales "ocultos" archivos es un caso de uso perfectamente legítimo.

En Linux, desde la versión 3.11 del kernel, open() la llamada del sistema admite O_TMPFILE bandera, que se puede utilizar para crear archivos temporales sin nombre. Cuando se usa esta marca, el nombre de la ruta argumento para open() se usa para especificar un directorio, bajo el cual se crea un inodo sin nombre. Sin embargo, como caso de uso principal para O_TMPFILE es, como su nombre lo indica, la creación de temporales archivos, esto no es adecuado para el almacenamiento persistente ya que el archivo se perderá cuando se cierre el último descriptor del archivo, a menos que se le dé un nombre al archivo. El archivo puede recibir un nombre con linkat() llamada al sistema, a menos que O_EXCL se especificó el indicador además del O_TMPFILE , en cuyo caso se impide vincular el archivo al sistema de archivos.

El O_TMPFILE agregado recientemente La funcionalidad es importante porque se puede utilizar para proporcionar las siguientes propiedades a los archivos temporales:

  1. Creación libre de condiciones de carrera.
  2. Eliminación automática cuando se cierra.
  3. Inalcanzable a través de cualquier nombre de ruta.
  4. No está sujeto a ataques de enlaces simbólicos.
  5. No es necesario que la persona que llama idee nombres únicos.

Además, la funcionalidad se puede usar para crear archivos que inicialmente son invisibles, en cuyo momento se pueden ajustar los atributos del sistema de archivos apropiados en el archivo, antes de vincularlo al sistema de archivos en una operación atómica. Esto se puede usar para evitar ciertas condiciones de carrera TOCTOU.

Relacionado:¿Extraer datos CSV de la URL a la hoja de cálculo de Google?

Un inconveniente con el O_TMPFILE bandera es que solo un subconjunto de sistemas de archivos proporciona soporte para él. Inicialmente, se proporcionó soporte en los sistemas de archivos ext2, ext3,
ext4, UDF, Minix y shmem. Se agregó compatibilidad con XFS en Linux 3.15.


Linux
  1. Copiar archivos en la terminal de Linux

  2. Mover archivos en la terminal de Linux

  3. ¿Pseudoarchivos para datos temporales?

  4. Linux:¿recuperación de datos después de copiar el archivo al dispositivo de bloqueo?

  5. Contar líneas en archivos grandes

Cómo cambiar el nombre de un archivo (s) en Linux

Bash scripting:cómo leer datos de archivos de texto

¿Recuperación de datos ext4?

Administrador de archivos frente a FTP

Transferir archivos usando WinSCP

Cómo comprimir un archivo en Linux