En este artículo se realizará la creación de un Servidor de Llave Pública utilizando PKS.
Como prueba de su funcionamiento, se realizará la creación, eliminación y exportación de una llave pública.
Los programas utilizados para la realización de esta tarea fueron:
- Vmware player 3.1 (descargado de www.vmware.com)
- Una versión ligera de Ubuntu 9.04 descargada de (http://gidati.upb.edu.co/descargas)
Se tomará como base el artículo mostrado en la página: http://www.scribd.com/doc/13741856/Instalacion-y-Configuracion-de-Servidor-de-Llaves-Publicas
Lo primero que se hace es descargar PKS, de la siguiente URL:
http://sourceforge.net/projects/pks
Luego de terminada la descarga, abrimos una Terminal.
Aquí nos ubicamos en la carpeta Alex, creada para este proyecto y que es la carpeta donde descargamos PKS y descomprimimos el paquete que descargamos.
Ahora, para poder instalarlo, necesitamos verificar que ya esté instalado GCC y MAKE, pero primero debemos quitar el proxy de esta versión de Ubuntu y actualizar el apt-get con los siguientes comandos:
export http_proxy=
apt-get update
GCC y MAKE son los programas que necesito para compilar el código fuente.
Si no están instalados lo podemos hacer con los comandos:
apt-get install gcc
apt-get install make
Ahora, nos disponemos a instalar el PKS.
Para ello, nos ubicamos en la carpeta donde descomprimimos el PKS, y ejecutamos el siguiente commando:
./configure
PERO, presentaba el siguiente error:
"bash: ./configure: No existe el fichero ó directorio"
Lo que hice, fue darle permisos de ejecución al comando configure, de la siguiente forma:
chmod +x configure
Sin embargo, seguía sin funcionar, porque luego de ingresar "./configure", presentaba el siguiente error:
C Compiler cannot create executables
Luego de buscar y buscar en diferentes fotos de Linux y Ubuntu, encontré una opción donde sugerían instalar g++ y así funcionó.
Con el comando:
apt-get install g++
Luego, se pudo configurar el archivo PKS para prepararlo para su instalación con ./configure
Luego, necesitamos instalar el PKS para que el sistema reconozca los comandos del servidor, con el siguiente comando:
make install
Para poder trabajar con llaves públicas es necesario trabajar con PGP. Utilizamos el siguiente comando:
apt-get install pgp
Se necesita crear una base de datos donde se almacenen las llaves, con el siguiente commando:
/usr/local/bin/pksclient /usr/local/var/db creat
Luego, hay que copiar el archivo de configuración "pksd.conf"al directorio /Alex/pks y nos ubicamos en éste con "cd ..".
Ahora, hay que editar este archivo de configuración para que el servidor pueda funcionar de manera correcta.
Estos son los renglones que hay que modificar:
www_port 82
mail_delivery_client /usr/sbin/sendmail -t -oi -fmailer-daemon
max_last -1
max_last_reply_keys -1
max_last_reply_keys -1
Ahora, vamos a iniciar el servidor de llaves públicas:
Después, abrimos otra terminal. Aquí generamos una llave pública con el commando:
gpg -gen-key
Como se puede observar, creamos una llave de 1024 bits (para ahorrar tiempo), aunque en la práctica es recomendada, mínimo, una de 2048 bits para más seguridad.
Para comprobar que la llave ha sido creada, la listamos con el commando:
gpg -list-keys
Luego, debemos exportar la llave para poder subirla al servidor. Y luego la visualizamos para poder copiarla y pegarla en el servidor Web que abriremos en el siguiente paso:
Ahora, abrimos el servidor web con el Puerto 82, que especificamos en el archive de configuración:
Luego, en la parte del servidor, donde nos pide ingresar todo lo que copiamos en Enter ASCII-armored PGP key here y así es como subimos una llave:
Y ahora para eliminar una llave, volvemos a listar las llaves creadas, PERO como tenemos una llave secreta, primero debemos eliminar ésta, con el siguiente commando:
gpg -delete-secret-key
Y luego si podemos eliminar la llave pública, así:
gpg -delete-key
Luego, podremos ver que ya no queda ninguna llave y ¡así termina este artículo!