miércoles, 26 de enero de 2011

Encriptar archivos y/o carpetas bajo linux y complicarlo poco a poco.

Pues tienes un ubuntu server 10.10 (todo consola) al cual le tienes que meter una carpeta encriptada en el home de un usuario. ¿Solucion? encfs. Vamos alla...

Instalamos encfs:

sudo apt-get install encfs

Creamos en el home dos carpetas, por ejemplo enc y noenc. El contenido encriptado se guardara en enc y se montara desencriptado en noenc:

mkdir ~/enc ~/noenc

Encriptamos el contenido de la carpeta enc y lo montamos en noenc:

encfs ~/enc ~/noenc

Nos preguntara que nivel de seguridad queremos, si le damos al enter pondra el "por defecto" y nos preguntara el password para la carpeta encriptada.

A partir de este punto ya tenemos la carpeta enc encriptada y su contenido montado en noenc. Si queremos desmontar la carpeta y dejar solo lo encriptado lo hacemos con:

fusermount -u ~/noenc

Y si queremos volver a montarla usariamos otra vez:

encfs ~/enc ~/noenc

¿El problema? Nos pide el pass. Si queremos que se monte tras el login del usuario, por ejemplo, metiendo una linea en el .bashrc tenemos que pasarle el pass a enfs. Hasta donde yo se no se puede pasar el pass como parametro, asi que lei a un tipo habilidoso que creo un programa en C que lo hacia, ya que si existe el parametro --extpass. El codigo del programa llamado, por ejemplo, pass.cc seria:



#include 

int main()
{
//Put your password retreival functions here
std::cout << "my password" <<>
return 0;
//PD: All cout will be interpreted as password.
}


Cambiando "my password" por el password que pusimos antes, y ojo, dejando las comillas.
Una vez creado el codigo lo compilamos con:

g++ pass.cc -o pass

Lo cual nos dara un ejecutable llamado pass que le podremos pasar como parametro al encfs con la sentencia:

encfs ~/enc ~/noenc --extpass=~/pass

Pondria las fuentes, pero ocuparian mas que el post, y tampoco recuerdo todo lo que he leido.

domingo, 23 de enero de 2011

Login, sudo y gksudo con autenticador biometrico en Lenovo (Ouyea!)

De como habilitar el "fingerprint" en Ubuntu con un Lenovo L512:

Añadimos los repositorios y actualizamos:

sudo add-apt-repository ppa:fingerprint/fingerprint-gui
sudo apt-get update

Instalamos los paquetes:

sudo apt-get install fingerprint-gui policykit-1-fingerprint-gui libbsapi

Una vez instalado, hacemos un logout y nos escaneamos las huellas en:

Sistema > Preferencias > Fingerprint GUI

Y a disfrutar de la vida que son dos dias.

Fuente: https://launchpad.net/~fingerprint/+archive/fingerprint-gui