En la web existen numerosos tutoriales sobre cómo crear volúmenes cifrados, las distintas opciones, elegir el algoritmo de cifrado,... Además el apartado de documentación de la web oficial es muy completo y extenso. En este artículo lo que quiero contar es cómo compilar truecrypt en linux utilizando un kernel superior a 2.6.23.
Lo primero de todo es descargarlo. Existen binarios compilados para unas cuantas distribuciones (OpenSuSE 10.2, OpenSuSE 10.3 y algunas versiones de Ubuntu), pero en mi caso no me servían porque están pensados para el kernel estándar y yo trabajo con una versión compilada por mi del kernel. Así, me descargué el código fuente y me dispuse a compilarlo e instalarlo. Enseguida encontré el primer problema porque nada más empezar la compilación aparecía un error:
ivan@doraemon:~$ tar zxf truecrypt-4.3a-source-code.tar.gz
ivan@doraemon:~$ cd truecrypt-4.3a-source-code/Linux
ivan@doraemon:~/truecrypt-4.3a-source-code/Linux$ sudo ./build.sh
Checking build requirements...
Building kernel module... /home/ivan/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.c: In function `dm_truecrypt_init´:
/home/ivan/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.c:659: error: too many arguments to function `kmem_cache_create´
make[2]: *** [/home/ivan/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.o] Error 1
make[1]: *** [_module_/home/ivan/truecrypt-4.3a-source-code/Linux/Kernel] Error 2
make: *** [truecrypt] Error 2
Error: Failed to build kernel module
Buscando un poco de información por la red encontré este post en un foro de Fedora en el que cuentan una solución. Todo pasa por editar el archivo Dm-target.c y en la línea 659 quitar el último NULL.
//bio_ctx_cache = kmem_cache_create ("truecrypt-bioctx", sizeof (struct bio_ctx), 0, 0, NULL, NULL);
bio_ctx_cache = kmem_cache_create ("truecrypt-bioctx", sizeof (struct bio_ctx), 0, 0, NULL);
Ahora, compilando de nuevo:
ivan@doraemon:~/truecrypt-4.3a-source-code/Linux$ sudo ./build.sh
Checking build requirements...
Building kernel module... Done.
Building truecrypt... Done.
Instalamos
ivan@doraemon:~/truecrypt-4.3a-source-code/Linux$ sudo ./install.sh
Checking installation requirements...
Testing truecrypt... Done.
Install binaries to [/usr/bin]:
Install man page to [/usr/share/man]:
Install user guide and kernel module to [/usr/share/truecrypt]:
Installing kernel module...
Done.
Installing truecrypt to /usr/bin... Done.
Installing man page to /usr/share/man/man1... Done.
Installing user guide to /usr/share/truecrypt/doc... Done.
Installing backup kernel module to /usr/share/truecrypt/kernel... Done.
Espero que le pueda servir a alguien porque yo estuve un buen rato buscando hasta que encontré la solución. Ahora ya podemos utilizar esta magnífica herramienta para cifrar toda nuestra información sensible tanto en linux como en windows en nuestro pendrive.
Como nota final diré que hace unos días han publicado en HowtoForge un artículo con una GUI para el Truecrypt de Linux y unos sencillos pasos para configurarlo y dejarlo todo a punto.
6 comentarios:
Muy interesante y útil.
Yo también me encontré con ese problema y llegué a la misma solución en algún foro o lista de correo, aunque creo que no es el mismo sitio que apuntas tú...
Gracias
Hola Super coco, me alegro que de que haya gustado.
Muchas gracias por el comentario.
Saludos, Iván.
Ostras, esto está muy bien.
Ya se acerca el fin de semana y hay que probarlo.
Muy buena.
Ya té contaré que tal me va.
Gracias :)
Bytecoders, pruébalo y verás que no te defrauda. Es muy potente y tiene muchas posibilidades a parte del disco virtual para la información más sensible.
Ya nos dirás qué tal todo...
Saludos, Iván.
Bueno, ya lo tengo funcionando :)
Tan solo siguiendo las instrucciones, funcionó a la primera. La verdad es que ha dado de sí el fin de semana.
Saludos y gracias
Gracias a ti bytecoders por contárnoslo a todos. De todas formas creo que con la versión 5.0 de truecrypt ya no hay estos problemas de cambiar el kernel y tener que recompilar el truecrypt.
A mi no me ha dado tanto de sí el finde y no lo he podido probar.
Saludos, Iván.
Publicar un comentario