Encriptando un disco duro externo con LUKS en Linux
Por tuxtor - Aqui en el abismo se usa gentoo., FOSS - enero 9, 2012
Mis necesidades de espacio en disco me han hecho prescindir por varios meses de un backup completo con lo cual he vivido al limite tecnológicamente hablando. Antes de que el cataclismo maya acabe con mis datos acabo de adquirir un disco Buffalo Technology MiniStation Stealth que se veía bastante prometedor y con buenos comentarios.
Todo informático que se respete encripta sus discos duros removibles y pendrives cuando transporta información sensible y en un país como Guatemala esto tiene más sentido ya que en cualquier momento te asaltan con tortilla tiesa o patadas voladoras acompañadas de desarmadores y revolvers.
0.- Preeliminares
El tema de encripción es por demás un tema bastante amplio y complicado
donde tenemos mil opciones para asegurar nuestros datos, por tal motivo presento un método que va con mis necesidades las cuales se limitan a una partición encriptada y que Gnome reconozca automáticamente al montarla. Algunos conceptos antes de empezar
- Dm-crypt un device mapper que hace la encripción de datos transparente, en otras palabras lo que hará que nuestra partición encriptada termine como un dispositivo transparente /dev/mapper/foo
- LUKS uno de los muchos estandares de encripción disponibles para Linux, es ideal para discos duros externos porque guarda la configuración de encripción en la partición (algoritmo, modo de trabajo, etc.) y no en archivos externos lo cual nos asegura portabilidad entre distribuciones o incluso Windows. LUKS basicamente generará y encriptará mediante una clave maestra que a su vez se encriptará con una clave que el usuario proporciona, si deseamos cambiar nuestra clave o utilizar más de una clave, solo se reencriptara la clave maestra y nos evitara reencriptar todos nuestros datos ¿interesante no?.
- AES y SHA256 algoritmos seguros de encripción y hashing respectivamente que no explicare en este documento, pero son bastante seguros
(Tanto que se AES esta aprobado por la NSA).
- Todos los comandos en este mini-tutorial se ejecutan con privilegios de root.
1.- Particionando
Como un paso previo podemos llenar el disco duro entero con datos random y de esta forma agregamos un poco más de dificultad al intentar crackear el disco. Ya que estamos trabajando sobre un disco duro externo, haremos de cuenta que el dispositivo esta ubicado en /dev/sdb
dd if=/dev/urandom of=/dev/sdb bs=4K
Antes de comenzar debemos de instalar el paquete cryptsetup disponible en nuestra distribución favorita, por ejemplo en Gentoo
emerge cryptsetup
Luego de esto debemos preparar el disco con LUKS, el metodo más facil es utilizar una partición sin formatear.
En mi caso el disco duro externo tendrá dos particiones, una partición /dev/sdb1 convenientemente formateada bajo NTFS para compartir las ultimas peliculas pr0n independientes con mis amigos usuarios de Windows con un maximo de 50 GB y otra particion /dev/sdb2 que tendrá todos mis datos encriptados bajo el esquema dm-crypt/LUKS de aproximadamente 950 GB las particiones las podemos crear con fdisk, cfdisk o incluso gparted.
Como primer paso preparamos la partición para soportar LUKS, cryptsetup hara este trabajo y nos preguntara una clave que no debemos olvidar:
cryptsetup --verify-passphrase luksFormat /dev/sdb2 -c aes -s 256 -h sha256
Las opciones fueron las siguientes
- –verify-passphrase – verifica el password que introducimos
- -c aes -s 256 – configuramos una encripción AES de 256 bits
- -h sha256 – y tambien configuramos el algoritmo de hashing SHA de 256 bits
Una vez configuramos la partición es momento de desbloquearla para trabajar con ella y poder formatearla
cryptsetup luksOpen /dev/sdb2 discoseguro
El nombre en el parametro final sera el que utilizara dm-crypt para poder trabajar con la partición la cual encontraremos en /dev/mapper/discoseguro y procedemos a formatear, en mi caso con ext4.
mkfs -t ext4 /dev/mapper/discoseguro
Y con esto tenemos lista nuestra partición encriptada, ya podemos montarla de manera transparente con nuestro siempre confiable comando mount
mount /dev/mapper/discoseguro /media/disk
Hasta el momento el dueño de los datos aun es root, lo cual podemos cambiar con
chown tuxtor:users /media/disk
En mi caso quiero que el dueño sea el usuario tuxtor y que el grupo sea users. La próxima vez que conectemos nuestro disco Gnome nos preguntara por nuestra clave para utilizar la partición encriptada.
¿Cómo se reparte la oferta de empleos relacionados con Linux?
Esta entrada fue publicada en muylinux: http://www.muylinux.com/2011/12/15/%C2%BFcomo-se-reparte-la-oferta-de-empleos-relacionados-con-linux/
—-
Hace unos días el portal de la Linux Foundation publicó un interesante análisis acerca de las oportunidades de trabajo que han pasado por su plataforma de reclutamiento. Estos datos fueron analizados desde inicios de Septiembre hasta Noviembre de este año.
El panorama es bastante prometedor para desarrolladores que trabajamos bajo plataformas libres y las oportunidades como desarrollador están bastante parejas con las oportunidades de trabajo como administrador de sistemas Linux. Además de esto el análisis presenta los países con más trabajos en Linux donde Estados Unidos domina con amplia ventaja.
Otro dato interesante es el hecho de que en el ambiente laboral Linux sigue dominando el uso de Java Enterprise Edition y Android ha tomado auge como plataforma de desarrollo. La infografía publicada es la siguiente:
Parafraseando el articulo ¿Están preparados para el ambiente laboral en Linux?
Convivio GuateJUG 2011
Por tuxtor - FOSS, Tips estupidos de java - diciembre 8, 2011
Bueno un año de JUG se ha acabado y entre los altibajos luego del Java Day queremos finalizarlo en grande, habra pizza, bebidas, licencias (Intelli J IDEA, Structure 101), playeras y compartamos un rato con la comunidad Java Guatemala.
Más información en http://www.guate-jug.net/2011/12/convivio-reunion-guatejug-13-administracion-de-tareas-con-jtrac/
Lectores electrónicos Linuxeros
Este articulo fue publicado en MuyLinux: http://www.muylinux.com/2011/11/21/lectores-electronicos-linuxeros/
–
Aunque seguimos esperando el año de Linux en el escritorio, nuestro kernel preferido ha llegado a rincones que jamas hubiéramos imaginado: tostadores, satélites, teléfonos, televisores, el pingüino y su inseparable compañero ñu pueden estar donde menos lo esperamos.
En algunos lugares Linux existe sin que sus usuarios siquiera lo sepan y el día de hoy revisaremos algunos de los más famosos lectores electrónicos basados en Linux y daremos algunos enlaces útiles para liberar sus prestaciones ocultas y aumentar su potencial, aunque muchos de estos tienen primos a color más avanzados, no debemos de tomar a la ligera los beneficios de la tinta electrónica y que la mayoría de estos lectores están por debajo de los 150 dólares. Como advertencia final la mayoría de estos hacks podría eliminar la garantía del lector, pero todo es parte de la diversión ¿o no?.
Amazon Kindle
Hablar del Kindle es como hablar de las estrellas de cine: nunca dirás algo que otros no sepan ya. Aunque ha recibido duras criticas por su poco flexible administración de DRM, hoy por hoy es el líder de los lectores electrónicos apoyado por una de las tiendas más grandes de libros a nivel mundial.
Datos técnicos:
- Basado en: BusyBox
- Método de liberación: obtener acceso root
- Características destacables a liberar:Screensaver timeout, nuevas fuentes, remover publicidad, instalar mplayer, cliente de correo mutt, acceso a shell, instalación de interprete Java
- Ultimo modelo: Kindle Touch/Kindle Touch 3G
- Más información: http://wiki.mobileread.com/
wiki/Kindle_Hacks_Information (en ingles)
B&N Nook
Mi favorito, se caracteriza por ser más abierto que Kindle y soportar formatos estándar (includo .epub), aun así tiene prestaciones ocultas que podemos aprovechar.
Datos técnicos:
- Basado en: Android
- Método de liberación: obtener acceso root
- Características destacables a liberar: Sideload de aplicaciones (Kindle Reader, AWD Launcher, Amazon AppStore), acceso a shell, navegador web funcional
- Ultimo modelo: Nook Simple Touch
- Más información: http://nookdevs.com/Rooting(en ingles)
Kobo
El Kobo reader es un caso particular, su primer oferta contra el Kindle fue ofrecerse como un lector barato y con buenas prestaciones, las nuevas versiones guardan cierta similitud con dispositivos Nook y aunque su catalogo de ebooks no es tan amplio como el de un Nook o un Kindle, es una opción a tomar en cuenta. Los hacks disponibles tampoco son tan avanzados, pero por pequeño que sea un hack siempre es bienvenido.
Datos técnicos:
- Basado en: Busybox
- Método de liberación: obtener acceso root/ROM personalizada
- Características destacables a liberar: Ejecutar comandos arbitrarios, habilitar telnet y ftp, capturar screenshots
- Ultimo modelo: Kobo Touch
- Más información: http://www.
chauveau-central.net/pub/ (en ingles)KoboTouch/
Sony Digital Reader
Aunque llevan años en el mercado Sony ha sido relegado sobre todo en el mercado americano. Al igual que los Nook los lectores de Sony también están basados en Android y eso abre la posibilidad a hacks interesantes.
Datos técnicos:
- Basado en: Android
- Método de liberación: obtener acceso root
- Características destacables a liberar: Sideload de aplicaciones (Kindle Reader, AWD Launcher, Amazon AppStore), acceso a shell, web browser funcional, reemplazo total de la ROM
- Ultimo modelo: PRS-T1
- Más información: http://blog.the-ebook-reader.
com/2011/10/23/rooting- (en ingles), ROM personalizada con bastantes prestaciones:http://www.mobileread.com/directions-for-sony-reader- prs-t1-video/ forums/showthread.php?t=64510 (en ingles)
¿Cual eligen ustedes?
El espiritu de Gentoo
Por tuxtor - Aqui en el abismo se usa gentoo., FOSS - noviembre 5, 2011
Han pasado varios años desde que inicie mi camino por las distribuciones Linux (aproximadamente en el año 2004) recuerdo que Ubuntu apenas se asomaba a la distancia y Mandrake hacia fuegos artificiales prometiendo que este año seria el año de Linux en el escritorio.
Despues de saltar por Mandrake, Suse, Mandriva y Fedora me llamo mucho la atención Gentoo, una distribución que siempre ha sido catalogada como una distribución para usuarios avanzados. Aunque en Distrowatch tenemos más de 100 distribuciones para elegir pocos son los usuarios que tienen a Gentoo como primera opción a la hora de instalar.
A mi opinión Gentoo sigue siendo la opción más viable para distribuciones basadas en código fuente y aunque muchos lo declaren muerto revisaremos varias opciones donde se hace presente el espiritu de Gentoo:
El favorito de los que quieren lo mejor de dos mundos, Sabayon Linux promete entregar su propia experiencia de usuario y además de ofrecer su propio administrador de paquetes denominado equo, Sabayon es totalmente compatible con el portage de Gentoo. Altamente recomendable para los que quieran una distribución confiable, con software actualizado y que la administración sea flexible.
El equipo de Sabayon ofrece varios sabores: SpinBase diseñada como un entorno minimalista para construir tu propio sistema, ServerBase que no es más que SpinBase con un kernel optimizado para servidores, CoreCDX que es un SpinBase con un servidor grafico y fluxbox, y por supuesto los sabores más tradicionales KDE, Gnome y XFCE.
Funtoo es una distribución con una propuesta más simple, devolver la diversión y la innovación a Gentoo. Por este motivo en 2008 Daniel Robbins inicio el proyecto Funtoo haciendo un derivado de Gentoo sin que este derivado se desprenda totalmente de Gentoo. Entre sus caracteristicas destacables tenemos:
- Codificación UTF-8 por defecto
- Sincronización cada 12 horas con el portage original de Gentoo
- Su propio overlay para paquetes especificos para Funtoo
- Administración de Grub basada en plantillas
- Mejoras en la configuración de red
- Disponibilidad de los kernels de Ubuntu, Debian, RHEL y Fedora
Ututo XS nace con el objetivo de ser una distribución live para demostraciones y dio su salto a la fama al convertirse en la primer distribución totalmente libre reconocida por la FSF. Ututo presenta su propio administrador de paquetes denominado UTUTO-Get que es compatible con su propio repositorio de paquetes binarios y al igual que Sabayon también es totalmente compatible con portage.
La navaja suiza de la recuperación, SystemRescueCD es una distribución diseñada como un disco de recuperación. Esta disponible para utilizarla como CD Live o desde nuestro pendrive.
SystemRescueCD viene cargado con un conjunto interesante de paquetes, como herramientas de administración de discos (parted, partimage, fstools), editores de texto, un entorno grafico basado en fluxbox y todas las herramientas de red disponibles en Gentoo. Además de esto soporta los sistemas de archivos más importantes (ext4,reiser4,btrfs,xfs,ntfx,vfat) y es posible utilizar sistemas de archivos en red via samba o nfs.
Directamente desde Cuba, Nova Linux nace como un proyecto para facilitar la migración hacia Software Libre en Cuba, su objetivo principal es desarrollar una distribución amigable al usuario y desarrollar sus propias herramientas para la administración del sistema, entre las cuales destacan:
- Guano, un entorno de escritorio alternativo ligero
- Summon, instalador de aplicaciones
- Serere, instalador de Nova
- Panel de control personalizado
- Capoeira un administrador de recursos compartidos en red
- Ecumenix un administrador para integración con dominios de active directory
Por ultimo vale la pena mencionar que Gentoo aun sigue creciendo solo que a un ritmo más lento como lo reflejan las estadisticas de Ohloh, asi que siempre queda la opción de utilizar Gentoo en todo su esplendor
.
Ubuntu 12.04 una apuesta interesante de canonical
Como se ha comentado anteriormente, la versión 12.04 de Ubuntu (Precise Pangolin) esta aun entrando al horno, sin embargo repasaremos algunas de las nuevas características que podrían llegar a nuestras computadoras a partir del 26 de abril del 2012 (antes del cataclismo Maya).
Soporte aun más extendido para el escritorio:
Hasta ahora las versiones LTS de Ubuntu han tenido soporte para actualizaciones por 3 años para la edición escritorio y 5 años para la edición servidor, la próxima versión de Ubuntu, sera la primera en dar soporte por 5 años para versiones de escritorio a partir de su fecha de lanzamiento, decisión motivada por el uso de Ubuntu en entornos empresariales.
¿Rhytmbox de vuelta?:
Según lo que se ha hablado en el Ubuntu Developer Summit que se esta llevando a cabo en Orlando florida hay altas probabilidades que volvamos a tener Rhytmbox como reproductor de audio por defecto, según se comenta en OMG Ubuntu algunos de los motivos para esta decisión son regresar a las actualizaciones estilo LTS-a-LTS (recordemos que Rhytmbox es el reproductor por defecto en Ubuntu 10.04), y además de esto que podemos tener una experiencia completa GTK3 ya que el port de Banshee aun esta en proceso. La decisión también depende de las apuestas de Canonical con su Ubuntu One Music Store ya que también se necesitaría terminar el port en GTK3.
Initrd opcionales.
Las imágenes Initrd son imágenes de disco temporales en RAM para hacer arreglos antes de montar el sistema raíz, lo que se pretende es volver opcionales las imagenes Initrd en Ram para mejorar el tiempo de arranque de Ubuntu, el cual ha sido catalogado como lento.
Mejoras para desarrolladores
Para contrarrestar la poca uniformidad que se da al desarrollar aplicaciones de escritorio también se planea definir un API estable como lineamientos para las aplicaciones y la elaboración de la documentación. Entre las mejoras planteadas estaría incluir ejemplos de código en la documentación de las APIs de Ubuntu, revisar el código que este pendiente de documentación, tener un esquema claro de APIs oficiales de Ubuntu mantenerlas estables (pensando en desarrolladores profesionales).
Mientras tanto estaremos a la expectativa de lo que se mencione en el Developer Summit. Para los más arriesgados siempre esta la opción de descargar un Daily Build y ver con sus propios ojos como se ira formando la nueva versión de Ubuntu.
Congreso Guatemalteco de Software Libre 2011
Despues de tomar mi asiento en tribuna y seguir en directo la batalla por conseguir la sede de CGSOL amenazas de fork comerial y fork taliban, por fin CGSOL 2011 esta en camino. Recomendado para los que quieran aprender de Software Libre y Libertad en materia de Software
.
Más info en http://cgsol.slgt.org
Nimbus look and feel+looks globales para swing
Por tuxtor - FOSS, Tips estupidos de java - octubre 23, 2011
En mi que hacer laboral con Java casi no tengo contacto con aplicaciones de escritorio Java, sin embargo con mi presentación de Java 7 en el Java Day Guatemala hubo algo que me llamo la atención, el look and feel Nimbus.
Nimbus es un look and feel que me recuerda a las aplicaciones de configuración de Oracle RDBMS. Se encuentra disponible desde Java 6u10 y con el lanzamiento de Java 7 paso a ser parte del JDK estandar y dejo de ser una extensión (no más com.sun, ahora sera parte de javax), la característica que más me llama la atención es que no se encuentra basado en bitmaps como Metal sino que se basa en gráficos Vectoriales lo que significa que vamos a tener mejor precisión en el renderizado de componentes incluso en resoluciones enormes
.
Por ejemplo en un monitor HD utilizando netbeans-7.0.1 nimbus tiene la siguiente apariencia (convenientemente redimensionado para mostrar a Duke):

En java 6 lo encontraremos en:
com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel
Y en Java 7 en
javax.swing.plaf.nimbus.NimbusLookAndFeel
¿Como lo utilizo en mi aplicación?
Basta con agregar el siguiente codigo a nuestro metodo Main, noten que en lugar de establecerlo directo hago una busqueda del look and feel porque estoy seguro que esta instalado en la JVM (Hotspot), solo que prevengo que mi aplicación sea compatible hacia atras con Java 6
1 2 3 4 5 6 7 | for(UIManager.LookAndFeelInfo laf:UIManager.getInstalledLookAndFeels()){ if("Nimbus".equals(laf.getName())) try { UIManager.setLookAndFeel(laf.getClassName()); } catch (Exception ex) { } } |
¿Como lo vuelvo mi look and feel predeterminado?
Si les gusto como a mi
y no quieren editar uno por uno los archivos de configuración de sus aplicaciones, basta con añadir al archivo (o crear el archivo) $JAVA_HOME/lib/swing.properties la siguiente linea, dependiendo de la versión de Java que tenga su sistema, por ejemplo para Java 6
swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel
[QuickTip] Quickpkg – Generacion de binarios en Gentoo
Por tuxtor - Aqui en el abismo se usa gentoo., FOSS - octubre 22, 2011
Supongamos que uds. tienen un sistema Gentoo con más de 3 años sin dar formato al disco
y supongamos que en determinado momento uds. deciden saltar a la version inestable de un paquete vital por ejemplo dev-libs/glib y quieren conservar la version que tienen por si algo sale mal y no pueden compilarlo nuevamente.
Para esto Gentoo dispone de la herramienta la cual ejecutamos asi:
quickpkg dev-libs/glibY luego instalamos con la opcion usepkg
emerge --usepkg dev-libs/glib
Por defecto los paquetes seran almacenados en /usr/portage/packages/ pero puede ser alterado con la variable PKGDIR en nuestro archivo /etc/make.conf
Cosas que siempre olvido al utilizar fluxbox
Por tuxtor - Aqui en el abismo se usa gentoo., FOSS - septiembre 30, 2011
Aunque soy usuario de Gnome al 99.99% desde hace muchos años, de vez en cuando es bueno regresar a mis escritorios alternativos, sobre todo si Gnome 3 no permite que las aplicaciones hechas en Java funcionen. Y mi escritorio alternativo por excelencia es fluxbox, la dificultad en fluxbox es la misma que se le atribuye a Gentoo, hay que configurar todo desde 0 y a veces se me olvidan cosas básicas para el funcionamiento de fluxbox, así que acá pongo algunas para tener un registro personal y tal vez le sirven a alguien:
0) Como saber el código exacto de una tecla
El 99% de informáticos que conozco no sabe que el equivalente a presionar la tecla multimedia para aumentar volumen en el teclado en formato X Windows es XF86AudioRaiseVolume, para obtener estos códigos podemos utilizar xev, comando cuya única utilidad es capturar los eventos que se producen en el X Windows Server e imprimirlos en consola, por ejemplo:
Hay que poner especial atención a la salida de los eventos KeyPress y KeyRelease, en el ejemplo anterior encontramos la salida de subir volumen XF86AudioRaiseVolume, dentro de el registro del evento:
1) Las teclas más comunes para shortcuts
Mod1 = Alt Mod4 = Windows key Control = Ctrl Shift = Shift
2) Como tomar un screenshot
La tecla Print Scr tampoco funciona en fluxbox, o más especificamente no esta configurada para efectuar alguna funcion en particular, mi metodo favorito es utilizar scrot para capturar la pantalla.
Por ejemplo si queremos tomar una captura de la pantalla actual con un retraso de 2 segundos ejecutariamos scrot de la siguiente forma
$ scrot test.png -d 2
Y con esto grabariamos el archivo test.png en la carpeta donde ejecutamos scrot
3) Parametros que siempre agrego al archivo ~/.fluxbox/keys
#Imitar el comportamiento de gnome Control Mod1 Left :PrevWorkSpace Control Mod1 Right :NextWorkSpace Mod4 Down :ShowDesktop #Subir y bajar volumen XF86AudioRaiseVolume :Exec amixer set "Master Front",0 5%+ XF86AudioLowerVolume :Exec amixer set "Master Front",0 5%- #Capturar un screenshot con un archivo de nombre screen y el timestamp Print :Exec scrot ~/Screenshots/screen$(date +%m%d%H%M%S).png
Vale la pena resaltar que yo tengo una carpeta dentro de home llamada Screenshot y que “Master Front” es el nombre que el driver alsa asigno a mi control frontal de volumen (tengo una tarjeta de 7.1 canales) este nombre varia de acuerdo a la tarjeta y podemos revisarlo en la configuración de alsa
4) Como se ve un fluxbox bien configurado
















