3 formas de eliminar archivos y directorios de forma permanente y segura en Linux


En la mayoría de los casos, los medios que usamos para eliminar un archivo de nuestras computadoras, como la tecla Delete , los archivos de la Papelera o el comando rm , que no eliminan el archivo de forma permanente y segura de el disco duro (o cualquier medio de almacenamiento).

El archivo simplemente está oculto para los usuarios y reside en algún lugar del disco duro. Puede ser recuperado por ladrones de datos, agentes de la ley u otras amenazas.

Suponiendo que un archivo contiene contenido clasificado o secreto, como nombres de usuario y contraseñas de un sistema de seguridad, un atacante con los conocimientos y habilidades necesarios puede recuperar fácilmente una copia eliminada del archivo y acceder a estas credenciales de usuario (y probablemente pueda adivinar las consecuencias de tal como escenario).

En este artículo, explicaremos una serie de herramientas de línea de comandos para eliminar archivos de forma permanente y segura en Linux.

1. Triturar: sobrescribir un archivo para ocultar contenido

shred sobrescribe un archivo para ocultar su contenido y, opcionalmente, también puede eliminarlo.

$ shred -zvu -n  5 passwords.list

En el siguiente comando, las opciones:

  1. -z : agrega una sobreescritura final con ceros para ocultar la trituración
  2. -v : habilita la visualización del progreso de la operación
  3. -u : trunca y elimina el archivo después de sobrescribirlo
  4. -n : especifica el número de veces que se sobrescribe el contenido del archivo (el valor predeterminado es 3)

Puede encontrar más opciones de uso e información en la página de manual de shred:

$ man shred

2. Wipe: borre archivos de forma segura en Linux

Un comando de limpieza de Linux borra de forma segura los archivos de la memoria magnética y, por lo tanto, hace que sea imposible recuperar los archivos eliminados o el contenido del directorio.

Primero, debe instalar la herramienta de limpieza para poder ejecutar el comando apropiado a continuación:

$ sudo apt-get install wipe   [On Debian and its derivatives]
$ sudo yum install wipe       [On RedHat based systems]

El siguiente comando destruirá todo lo que se encuentre en el directorio privado.

$ wipe -rfi private/*

donde las banderas usaban:

  1. -r - le dice a wipe que se repita en subdirectorios
  2. -f : habilita la eliminación forzada y deshabilita la consulta de confirmación
  3. -i : muestra el progreso del proceso de eliminación

Nota: Limpiar solo funciona de manera confiable en la memoria magnética, por lo tanto, use los otros métodos para discos de estado sólido (memoria).

Lea la página de manual de wipe para obtener instrucciones y opciones de uso adicionales:

$ man wipe

3. Kit de herramientas de eliminación segura para Linux

Secure-delete es una colección de herramientas de eliminación segura de archivos, que contiene la herramienta srm (secure_deletion), que se utiliza para eliminar archivos de forma segura.

Primero debe instalarlo usando el comando correspondiente a continuación:

$ sudo apt-get install secure-delete   [On Debian and its derivatives]
$ sudo yum install secure-delete       [On RedHat based systems]

Una vez instalada, puede usar la herramienta srm para eliminar archivos o directorios de forma segura en un sistema Linux de la siguiente manera.

$ srm -vz private/*

donde las opciones utilizadas:

  1. -v : habilita el modo detallado
  2. -z : limpia la última escritura con ceros en lugar de datos aleatorios

Lea la página de manual de srm para obtener más opciones de uso e información:

$ man srm

4. Sfill -Secure Free Disk/Inode Space Wiper

sfill es una parte del kit de herramientas de eliminación segura, es un limpiador seguro de espacio libre de inodos y disco libre, elimina archivos en el espacio libre en disco en un método seguro. sfill comprueba el espacio libre en la partición especificada y lo llena con datos aleatorios de/dev/urandom.

El siguiente comando ejecutará sfill en mi partición raíz, con el interruptor -v habilitando el modo detallado:

$ sudo sfill -v /home/aaronkilik/tmp/

Suponiendo que creó una partición separada, /home para almacenar los directorios de inicio de los usuarios normales del sistema, puede especificar un directorio en esa partición para aplicarle sfill:

$ sudo sfill -v /home/username

Hay algunas limitaciones de sfill sobre las que puede leer en la página de manual, donde también puede encontrar indicadores de uso e instrucciones adicionales:

$ man sfill

Nota: Estas dos herramientas siguientes (sswap y sdmem) en el kit de herramientas de eliminación segura no son directamente relevantes para el alcance de esta guía, sin embargo, las explicaremos con fines de conocimiento y uso futuro.

5. sswap - Limpiador de intercambio seguro

Es un limpiador de particiones seguro, sswap elimina los datos presentes en su partición de intercambio de manera segura.

Precaución: recuerde desmontar su partición de intercambio antes de usar sswap. De lo contrario, su sistema podría fallar.

Simplemente determine su partición de intercambio (y verifique si la paginación y el intercambio de dispositivos/archivos están activados usando el comando swapon), luego, desactive la paginación y el intercambio de dispositivos/archivos con el comando swapoff (deja la partición de intercambio inutilizable).

Luego ejecute el comando sswap en la partición de intercambio:

$ cat /proc/swaps 
$ swapon
$ sudo swapoff /dev/sda6
$ sudo sswap /dev/sda6    #this command may take some time to complete with 38 default passes

Haga un esfuerzo por leer la página del manual de sswap para obtener más opciones de uso e información:

$ man sswap

6. sdmem - Limpiador de memoria seguro

sdmem es un limpiador de memoria seguro, está diseñado para eliminar los datos presentes en su memoria (RAM) de manera segura.

Originalmente se llamaba smem: informe del consumo de memoria por proceso y por usuario, el desarrollador decidió cambiarle el nombre a sdmem.

$ sudo sdmem -f -v

Para obtener más información sobre el uso, lea la página de manual de sdmem:

$ man sdmem 

¡Eso es! En este artículo, revisamos varias herramientas de línea de comandos para eliminar archivos de forma permanente y segura en Linux. Como de costumbre, ofrezca sus pensamientos o sugerencias sobre la publicación a través del formulario de comentarios a continuación.