GPG integrado con KDE en Slackware

Inicié a controlar mis gastos e ingresos por medio de KMyMoney, una herramienta que me la habían recomendado mucho, pero antes me encontré con muchas otras herramientas, como GnuCash, eqonomize, etc. pero lo primero que busqué fue que tuviera soporte para encriptar los datos.

Mi opción, conociendo sus características, fue KMyMoney, ya que se integra bastante bien con KDE, que es el escritorio que siempre me ha gustado utilizar en Slackware y utiliza GPG para encriptar los archivos.

El problema comienza con la configuración para que pueda abrir archivos encriptados, ya que GPG por defecto no se integra lo suficiente con los escritorios gráficos, es mas una herramienta de línea de comandos.

Para integrar correctamente cualquier aplicación que haga uso de GPG en un ambiente gráfico como KDE debe poder acceder a un agente que se encarga de intercambiar información entre la aplicación y el archivo cifrado por GPG.

Primero debe de asegurarse de tener configurado adecuadamente GPG, para ello vamos primero por el archivo de configuración de GPG ~/.gnupg/gpg.conf, el cual puede ser abierto con nano o vim:

$ cd ~
$ nano .gnupg/gpg.conf

y luego buscar si se tiene habilitada la opción use-agent

Ahora nos falta configurar el agente encargado de gestionar la información, en este caso pinentry que ya viene con slackware, para ello tenemos que crear o modificar el archivo ~/.gnupg/gpg-agent.conf verificando al menos tres líneas importantes:

pinentry-program /usr/bin/pinentry-qt4
no-grab
default-cache-ttl 300

La opción pintetry-program indica que programa utilizar, para kde es pinetry-qt4, existen para gtk y demás.
La opción no-grab para evitar que pinetry capture teclado y mouse, (no es algo que nos proteja de los keyloguers y demas)
La opción default-cache-ttl es el tiempo en segundos para mantener activa la contraseña.

Con ésto arreglado se puede proceder a realizar una prueba, para evaluar que todo vaya bien; en la línea de comandos ejecutamos lo siguiente:

$ gpg-agent --daemon

Nos debe devolver que se ha iniciado y nos dará unas variables para que los programas los utilicen, algo como:

GPG_AGENT_INFO=/tmp/....:7711:1

luego podemos matar el proceso con un simple killall

killall gpg-agent

Ahora es tiempo de configurar KDE

Solo resta agregar dos scripts, uno que se cargue antes de iniciar KDE para cargar las variables dadas por gpg-agent y otro para cerrar gpg-agent al terminar nuestra sesión. Los scripts se pueden crear en cualquier lado y con cualquier nombre, solo deben tener permiso de ejecución, y cargarlos desde el administrador de KDE en la sección Arranque y apagado.

Script de inicio, debe ser colocado con la opción Ejecutar en: Prenicio de KDE.

#!/bin/sh
# Inicio de gpg-agent para todo KDE

eval "$(gpg-agent --daemon)"

Script del final, se debe cargar con la opción Ejecutar en: Apagar

#!/bin/sh
# cierra toda instancia de gpg-agent que haya sido cargada con la sesión.

if [ -n "${GPG_AGENT_INFO}" ]; then
    kill $(echo ${GPG_AGENT_INFO} | cut -d':' -f 2) >/dev/null 2>&1
fi

Ahora solo falta salir de la sesión y reingresar.

Etiquetas: , , ,

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: