11/01/2007


Como usar Md5sum en Linux!

Bueno hace rato que no posteaba nada =P, estoy bastante vago jeje. Voy a explicar como utilizar md5sum en linux para crear copias de seguridad de nuestros archivos importantes y luego comprobarlos si no se modificaron, de esta manera podemos estar seguros que no fueron tocados por nadie ajeno a nuestra persona =).
Primero algo de teoria como siempre para saber que es lo que hacemos:

Md5sum es un comando de los sistemas Unix que permite identificar la integridad de un fichero mediante de la suma de comprobación del hash MD5 de un archivo.

Realmente es muy utilizado por su sencilléz de uso, potencia y popularidad, siendo relativamente sencillo el comprobar si un determinado archivo se ha descargado correctamente o por el contrario ha ocurrido algun problema y el programa o imagen ISO es inutilizable (es ideal para comprobar las imagenes ISO de CD's, antes de tostarlas). En el mundo Linux, es muy habitual encontrar las sumas de control MD5 de todos los paquetes que componen una distribución.

Se suele utilizar para comprobar la integridad de los archivos descargados de Internet.(Wikipedia.org)

Comencemos:
Supongamos que queremos hacer una copia de seguridad de nuestro archivo /etc/passwd que contiene todos los usuarios del sistema, asi tenemos un control de que nadie creó un nuevo usuario.Entonces hacemos:


debian:~# mkdir CopiaSegu
debian:~# cp /etc/passwd CopiaSegu/passwdbackup

#Lo que hicimos fué crear una carpeta llama CopiaSegu en el directorio /root, xq somos root claro y copiar el #archivo passwd con el nombre passwdbackup

debian:~# cd CopiaSegu/
debian:~/CopiaSegu# md5sum passwdbackup > HashPasswdBackup

#Con el comando md5sum obtenemos la hash y luego dirigimos la salida al archivo HashPasswdBackup.

debian:~/CopiaSegu# cat HashPasswdBackup
e9b5763326ff6630824bf8c07249ae35 passwdbackup

#Vemos la hash que conseguimos.Listo ya esta. =). Ahora agregaremos un nuevo usuario para ver que pasaría...

debian:~# adduser hash
Adding user `hash' ...
Adding new group `hash' (1008) ...
Adding new user `hash' (1006) with group `hash' ...
Creating home directory `/home/hash' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: contraseña actualizada correctamente
Cambiando la información de usuario para hash
Introduzca el nuevo valor, o presione ENTER para el predeterminado
Nombre completo []:
Número de habitación []:
Teléfono del trabajo []:
Teléfono de casa []:
Otro []:
¿Es correcta la información? [y/N] y
debian:~#

#Verificamos si el nuevo archivo passwd tiene la misma hash. Pero primero modificamos el nombre del antiguo backup #con el comando mv para que no se reescriba y luego lo reemplazamos.

debian:~/CopiaSegu# mv passwdbackup passwdbackup.viejo
debian:~/CopiaSegu# cp /etc/passwd passwdbackup

#Ahora comprobaremos si el nuevo hash conside con el guardado en HashPasswdBackup

debian:~/CopiaSegu# md5sum -c HashPasswdBackup
passwdbackup: La suma no coincide
md5sum: WARNING: 1 of 1 computed checksum did NOT match

#Nos aparecio un cartel de advertencia diciendo que no coincide obviamente ya que agregamos un nuevo usuario. Aún modificando solamente una letra del antiguo archivo daria resultados totalmente distintos en la comprobacion.
utilizamos el parametro -c para decirle que lea la suma md5 de un archivo en este caso HashPasswdBackup.
Este procedimiento lo podemos aplicar claramente a los cds, ya que generalmente nos dan para descargar las imagenes isos con sus correspondientes hashes. Tenemos que guardarlos en la misma carpeta y luego utilizar el comando:

# md5sum -c ArchivoConSumaHash

Y despues de un momento nos informaria si coinciden. Espero que les halla servido como me sirvio a mi =).
Mi blog esta en etapa de remodelacion, no se preocupen si se ve horrible a causa de algunas plantillas. Saludos!

1 comentarios:

Antoni2k6 said...

Gracias Braian, tu post me ha servido muchisimo...
Salu2 y exitos
Antonio