27 de septiembre de 2013

Encriptar datos: instalando TrueCrypt

¿Qué es encriptar datos?

Imagínense que tenemos esta frase "Dábale arroz a la zorra el abad" y queremos que sea secreta, que nadie pueda verla. Entonces, aplicamos una serie de fórmulas matemáticas que contengan una contraseña ("micontraseña") y obtenemos lo siguiente "#jñ24320d%9f@d42fjn".

Siendo más gráfico:

"Dábale arroz a la zorra el abad" -> a+b^3.14+log("micontraseña") -> Resultado: "#jñ24320d%9f@d42fjn".

Entonces es lógico que quien intenta leer "#jñ24320d%9f@d42fjn" no podrá comprender lo que realmente quisimos poner. El de arriba es un ejemplo bruto, meramente esquemático.

Eso hace un programa de encriptación: transforma algo normal en código secreto.

Para quienes les es familiar el término "encriptar", muchos ya deben conocer TrueCrypt. TrueCrypt es un programa que nos permite hacer varias cosas, entre ellas, crear un disco duro virtual encriptado. De esa manera, podemos guardar allí dentro nuestra información sin que nadie pueda acceder a ella.

En Debian, TrueCrypt no se encuentra en los repositorios. Para ello, hay que descargarlo desde http://www.truecrypt.org/downloads y seleccionar el paquete para la versión que necesitamos (en mi caso, elegí "Standard 64-bit(x64)").

Una vez descargado, el paquete tar.gz debe ser descomprimido. Una vez descomprimido, pasamos a ejecutar en la terminal:

./truecrypt-7.1a-setup-x64
Comenzará el proceso de instalación. Al final se abrirá la siguiente ventana:


Ahora viene una parte importante: arreglar asunto de permisos de usuario común. Para ello, lo primero que haremos será crear un grupo. Todo como root:
groupadd truecrypt
Luego, ejecutar visudo y agregar las siguientes líneas:
 # Users in the truecrypt group are allowed to run TrueCrypt as root.
%truecrypt ALL=(root) NOPASSWD:/usr/bin/truecrypt
 Luego, ejecutar el siguiente comando:
gpasswd -M USUARIO truecrypt
dónde cambiaremos USUARIO por nuestro nombre de usuario.

Para correrlo, si tienen instalado MATE Desktop Environment, van a Aplicaciones -> Accesorios -> TrueCrypt para abrir el programa.

Un video sobre cómo hacer un volumen encriptado para guardar nuestros archivos:

24 de septiembre de 2013

Usando Mednafen

En el post anterior expliqué cómo descargar e instalar Mednafen. Aquí explico algunas particularidades del emulador.

Generar una Configuración
Lo primero que debemos hacer es generar una configuración. Para ello, basta con ejecutar mednafen. Escribimos en una terminal "mednafen" y presionamos enter. El archivo de configuración generado se encontrará en:

/home/USUARIO/.mednafen/mednafen-09x.cfg

Habilitar Sonido
Yo tuve problemas para habilitar el sonido. Puede que no sea necesario modificar esta opción. En el archivo de configuración, buscar la siguiente opción:
sound.driver default
y cambiarla por
sound.driver sdl
Cambiar el driver de video
A mi se me ve mejor con el driver sdl. Las opociones pueden ser opengl, sdl y overlay.
video.driver sdl
Configurar los Joypads
Por ejemplo, para el joypad 1, presionar las siguientes teclas mientras el emulador está corriendo con un juego:
Alt + Shift + 1
para el control 2:
Alt + Shift + 2
Estiramiento de imagen
Muchas opciones dependen del sistema que se esté emulando, por ejemplo, para estirar la imagen hay varios modos, pero el que viene por defecto es el ideal. Si tenemos un monitor wide y queremos que la imagen de determinado sistema ("nes", en este caso) ocupe toda la pantalla, la opción que tenemos que modificar en el archivo de configuración es
nes.stretch full
Si quisiera aplicar lo mismo, pero a Mega Drive:
md.stretch full
Jugar un juego
Facilmente como ejecutar en una terminal:
mednafen /ruta/al/juego/nombre_rom.zip

Jugar ROMs de 8 y 16 bits con GNU/Linux


Aquellos que fuimos criados en los años 90, solemos tener nostalgia por los famosos juegos de "Family Game" o "La Sega" no podemos estar sin un emulador en nuestra PC. No soy muy afín a los juegos actuales, pero si de vez en cuando gusto de pasar un rato saltando con Super Mario Bros.

En Debian, los emuladores son un tanto precarios. Las mejores opciones que tenemos son Mess, MAME y Mednafen. Todos programas que se usan en línea de comandos.

Mess es un emulador multimáquina, similar a MAME (uno está basado en el otro). La diferencia que tiene Mess es que puede emular NES (Nintendo Entertainment System), SNES (Super Nintendo Entertainment System), SMD (Sega Mega Drive) y SMS (Sega Master System). Es un gran emulador y una opción recomendable para emular juegos. La versión actual de los repositorios de Debian 7 "Wheezy" no permite salvar ni recuperar estados. Por lo tanto, no podemos guardar la partida.

La tercer opción es la que más me parece apta para jugar los juegos de 8 y 16 bits: Mednafen. Mednafen está ampliamente documentado, compilarlo es sencillo y usarlo es simple. Además, soporta salvar y recuperar estados. En este emulador se basa el presente artículo: compilar Mednafen en Debian Wheezy.

Instalando Mednafen en Debian Wheezy

Información sobre Mednafen

Sitio web: http://mednafen.sourceforge.net/
Medanfen emula los siguientes sistemas:
  • Atari Lynx
  • Neo Geo Pocket (Color)
  • WonderSwan
  • GameBoy (Color)
  • GameBoy Advance
  • Nintendo Entertainment System
  • Super Nintendo Entertainment System/Super Famicom
  • Virtual Boy
  • PC Engine/TurboGrafx 16 (CD)
  • SuperGrafx
  • PC-FX
  • Sega Game Gear
  • Sega Genesis/Megadrive
  • Sega Master System
  • Sony PlayStation

Compilando e Instalando

Primero
Abrimos una terminal y lo primero que haremos será instalar dependencias. Como root ejecutamos:
apt-get install build-essential pkg-config libasound2-dev libcdio-dev libsdl1.2-dev libsndfile1-dev zlib1g-dev
Segundo
Descargamos Mednafen desde http://mednafen.sourceforge.net/releases/ en la sección "Sources" hacemos click en "Mednafen 0.9.32-WIP Source Code." Si hay una versión nueva, esto ultimo puede cambiar.
Descomprimimos:
tar -jxvf mednafen-0.9.32-wip.tar.bz2
Tercero
Entramos en el directorio creado ("mednafen") y dentro ejecutamos en orden:
./configure
make
make install
Make puede tardar un rato bastante largo. Si queremos crear un paquete deb y que se instale automáticamente, podemos reemplazar "make install" por "checkinstall" (hay que instalarlo primero). De esa manera, si queremos remover el paquete será más sencillo.

Llamar y enivar SMS con un teléfono conectado a la PC

¿Para qué puede ser útil? Para que una PC nos notifique ante un evento programado (por ejemplo, cada vez que se inicie sesión, la PC nos envíe un SMS).

Lo primero que haremos será instalar gammu y wammu:
apt-get install gammu y wammu
Luego, debermos configurar el teléfono ya enchufado:
dmesg|grep tty
y ahí obtenemos el puerto para configurar gammu:
gammu-config
y le especificamos el puerto. También podemos configurar otras opciones, de acuerdo al teléfono enchufado.

Para hacer llamdas:
gammu dialvoice NUMERODETELEFONO
para que la llamda se corte a la X cantidad de segundos:
gammu maketerminatedcall NUMERODETELEFONO SEGUNDOS
para enviar un SMS:
echo "Texto de nuestro mensaje" | gammu sendsms TEXT NUMERODETELEFONO
Ejemplo:
echo "Mensaje de prueba" | gammu sendsms TEXT +XX0541XX556