Cómo eliminar de forma segura (para que no puedan ser recuperados) archivos/ficheros/particiones en Linux usando el comando shred. Usaremos una distribución de Linux CentOS 7, aunque el comando sirve para otras distribuciones como Fedora, Red Hat, Ubuntu, Mint, etc. Eliminaremos de forma segura unidades de almacenamiento extraíbles, como pendrives, lápices de memoria USB o discos duros.
- Comando shred para elimación segura de archivos y particiones.
- Eliminar un archivo (o varios) de forma segura con shred.
- Eliminar un pendrive o partición completa de forma segura con shred.
Comando shred para elimación segura de archivos y particiones
Los comandos habituales de elimnación de archivos y carpetas, como rm NO eliminan todo el contenido de estos archivos, únicamente marca en la correspondiente tabla de asignación de ficheros la entrada asignada al fichero eliminado. El contenido del fichero queda en el disco duro, sin asignar y, por lo tanto, podría ser recuperado.
El comando shred permite eliminar archivos y unidades de disco de forma segura para que no puedan ser recuperados. Este comando reemplaza el contenido de los ficheros con ceros (si así se le indica), de forma que ya no podrán ser recuperados.
Los posibles parámetros que admite shred:
- f, –force: cambia los permisos del fichero, si fuera necesario, para permitir la escritura.
- n, –iterations=N: número de veces que se sobreescribirá el fichero. Por defecto, si no se indica este parámetro, serán tres. Cuantas más veces se sobreescriba menos posibilidades habrá de recuperarlo.
- s, –size=N: cambiar el tamaño de bloque a eliminar.
- u, –remove: trunca y elimina el fichero después de sobreeescribirlo.
- v, –verbose: muestra el progreso del proceso de eliminado seguro.
- x, –exact: no redondear los tamaños de los archivos al siguiente bloque completo.
- z, –zero: agregar, para más seguridad, una sobrescritura final con ceros para ocultar la eliminación y no dejar rastros.
Eliminar un archivo (o varios) de forma segura con shred
Haciendo un ls -lah para ver el contenido de una carpeta:
ls -lah
En nuestro caso queremos eliminar de forma segura el fichero «contraseñas.txt», ubicado en /tmp/confidencial. Queremos eliminarlo de forma segura porque el equipo pasará a otra organización y así impedimos que puedan recuperar este (y otros) ficheros confidenciales, con datos altamente sensibles, como pueden ser contraseñas de acceso a los sistemas.
Para eliminar de forma segura el fichero «contraseñas.txt», ejecutaremos el siguiente comando:
shred -n 20 -uvz contraseñas.txt
Lo que hace el comando anterior es eliminar el fichero «constraseñas.txt» y hacer hasta 20 pasadas, rellenando su espacio con ceros, para no dejar rastro y que no pueda ser recuperado.
Eliminar un pendrive o partición completa de forma segura con shred
Una de las utilidades importantes de shred es la eliminación segura de unidades de almacenamiento extraíbles (pendrives, lápices de memoria USB, discos duros extraíbles, etc.). Este tipo de dispositivos están mucho más expuestos a posibles hurtos y recuperación de información. Aunque hayamos eliminado o incluso formateado estos dispositivos, la información que contienen puede ser recuperada, como explicamos en los siguientes artículos:
Para eliminar el contenido completo de estas unidades de forma segura también se puede usar shred, que permite eliminar particiones completas.
Por supuesto, este procedimiento es muy delicado puesto que si se elimina una partición se eliminará de forma irrecuperable todo su contenido, por ello hemos de proceder con precaución.
Para mostrar las particiones (unidades) que tenemos actualmente en el sistema podemos ejecutar:
df -h
Supongamos que la partición correspondiente al pendrive (lápiz de memoria USB) conectada a nuestro equipo Linux es /dev/sda1. Esto es un ejemplo, no suele ser habitual que un pendrive tenga la asignación /dev/sda1 y menos aún para el punto de montaje /boot. Para eliminar todo su contenido de forma segura ejecutaremos el siguiente comando:
shred -vu /dev/sda1
De esta forma, cuando retiremos el dispositivo USB de almacenamiento, aunque lo perdamos y algún usuario malintencionado pueda acceder a él, no podrá recuperar la información que contenía.