La seguridad y el trabajo en equipo son dos pilares fundamentales de cualquier departamento que se precie, no sólo de sistemas informáticos. En el mercado existen varias alternativas para la gestión de contraseñas. En su día os hablé de KeePass, en mi blog personal, quizá el programa más popular y fiable en lo que a gestor de contraseñas se refiere. Vamos a ir un paso más allá y os voy a hablar de TeamPass, una herramienta colaborativa con un intuitivo y sencillo panel web para gestionar contraseñas de grupos.

Vamos al lío

Primero de todo veamos en qué consiste. TeamPass es una herramienta colaborativa de gestión de contraseñas.  Su objetivo es proporcionar la posibilidad de compartir contraseñas a través de un entorno seguro y administrado. Utiliza una licencia de software libre, concretamente la GNU AFFERO GPL 3.

Entre sus características encontramos: acceso único de usuario; roles predefinidos, como: administrador, manager, usuario o usuario de sólo lectura. También se pueden crear grupos de usuarios, con sus roles definidos. Se nos garantiza un acceso seguro; además de la contraseña, podemos utilizar el segundo factor de autentificación de Google, de DUO Security o bien de AGSES. Incorpora un conector LDAP.  Todas las contraseñas gestionadas están cifradas utilizando el algoritmo AES-256 Además podemos importar ficheros de datos de contraseñas desde Keepass XML  o CSV

Soporta diferentes idiomas, entre los que podemos encontrar, además del inglés, el castellano, catalán, alemán, holandés, italiano, francés, ruso, entre muchos otros.

Es un producto desarrollado por Nils Laumaillé, para su desarrollo se ha utilizado PHPStorm/strong>, creado por JetBrains, y actualmente está afincado en Github.

Instalación

Para probarlo nuestro servidor GNU Linux debe cumplir con una serie de requisitos, los más importantes de los cuales son:

  • Apache v2.0 (o superior)
  • MySQL  v5.1 (o superior)
  • PHP v5.5.0 (o superior)

En lo que respecta a módulo PHP :

  • Mcrypt
  • Mbstring
  • Openssl
  • Gd
  • Bcmath
  • Iconv
  • Xml
  • LDAP (si usamos ese tiempo de identificación)

Para su instalación, al igual que en muchos otros casos, utilizaremos Debian, en concreto su versión 8 o “Jessie”. Vamos a utilizar su magnífica guía –sí, los pasos de instalación no me vienen por inspiración divina- que podemos encontrar en su web.

He creado un servidor privado virtual (VPS) en DigitalOcean para la ocasión, dejándolo con la configuración mínima, que es más que de sobra, consistente en un 1 núcleo, 512 MB de memoria y 20 GB de capacidad. También podéis probarlo de modo local, con VirtualBox o QEMU/KVM en vuestro propio equipo, creando una máquina virtual.

VPS creado con Debian Jessie
VPS creado con Debian Jessie

Si estáis interesados en utilizar el cloud de DigitalOcean podéis utilizar mi bono de descuento desde el siguiente enlace. No, no está patrocinado el artículo ni nada por el estilo, hace años que lo tengo. Solo es por si os queréis ahorrar un dinerillo…

Una vez hecho este paso nos llegará un correo a nuestra bandeja con toda la información de la creación, incluida la de acceso, y la IP pública correspondiente. Debemos acceder a ella vía SSH. En el primer acceso nos pedirá cambiar la contraseña. Para acceder debemos utilizar la terminal de comandos si usamos GNU Linux o FreeBSD; si accedemos desde Windows podemos utilizar programas como Putty.

Una vez dentro del sistema, con la contraseña recién cambiada, vamos acto seguido a la instalación. En las instrucciones oficiales nos indican que debemos instalar un servidor LAMP, esto es, un servidor web con los servicios Apache, PHP y el motor de base de datos MYSQL/MariaDB. Para ello nos recomienda utilizar el entorno XAMPP que, sinceramente, yo no suelo utilizar. Me gusta instalar todos los servicios por línea de comandos pero, para hacer más fácil la instalación, también comentaremos esa opción. Nos iremos a la web del proyecto, donde veremos las guías de instalación aquí. Si no os convence, siempre podéis realizar la instalación clásica. En ambos casos, antes de hacer nada, debemos actualizar el sistema escribiendo: apt update y apt upgrade.

Por cierto, si no queremos utilizar MariaDB como motor de base de datos podemos seguir las instrucciones de su web para Debian Jessie.

Una vez instalado todo creamos una base de datos que se llame “teampass“. XAMPP incorpora PhpMyAdmin, que es muy fácil de hacer funcionar. Si tenéis alguna duda en esta parte me lo hacéis saber en los comentarios. También podemos crear la base de datos de manera manual siguiendo un artículo que hice en su día en mi blog personal.

Al finalizar este paso iremos a nuestro gestor de dominio y DNS particular y añadiremos el registro “A” contra el servidor. De esta manera ya podemos acceder escribiendo en el navegador http://teampass.ochobitsunbyte.pw o el dominio que vosotros hayáis decidido. También podéis escribir un dominio ficticio y añadirlo al fichero /etc/hosts del sistema.

En esta parte ya podemos descargar el fichero del proyecto desde la página de GitHub. Si utilizáis la línea de comandos sería:

wget https://github.com/nilsteampassnet/TeamPass/archive/2.1.26-final-2.zip

Descomprimimos el fichero contra la ubicación, en el caso de XAMPP sería /etc/lampp/htdocs, en el caso de LAMP en /var/www/html/, escribiendo: “unzip 2.1.26-final-2.zip -d /var/www/html“, en el caso de LAMP Huelga decir que para hacer todo esto tenemos que tener instalado el paquete ‘zip

Cambiamos el nombre de la carpeta por teampass/ y modificamos los permisos de carpeta y ficheros, además del propietario, escribiendo :

chmod 775 /var/www/html/teampass -R
chown www-data:www-data /var/www/html/teampass -R

Ni se os ocurra seguir la recomendación de la web de Teampass, y utilizar “777” en los permisos.

Ahora sí, ya podemos ir a la web y escribir: http:/teampass.ochobitsunbyte.pw/teampass/

Página instalación teampass
Página instalación teampass

La siguiente ventana es muy importante, nos mostrará las rutas del proyecto y si el servidor cumple con todos los requisitos.

Rutas y requisitos instalación teampass
Rutas y requisitos instalación teampass

Si nos falta algo, ya sea instalar algún programa, módulo o modificar algún fichero, nos lo hará saber. Para muestra un botón:

Comprobación requisitos en el servidor
Comprobación requisitos en el servidor

En mi caso lo primero se soluciona instalando el paquete correspondiente con “apt install php5-mysqlnd” y el segundo punto modificando el fichero php.ini, afincado en /etc/php5/apache2/ y cambiar el parámetro de 30 a 60. Una vez hecho esto reiniciamos el servidor web.

Ahora ya podemos pasar a la siguiente parte, donde añadimos los datos de conexión a la base de datos. En el siguiente apartado creamos la ‘key‘ de cifrado, que podemos generar automáticamente mediante el panel. Es importante indicar una ruta para guardar el fichero de clave, fuera de /var/www, por motivos obvios de seguridad.

Una vez hechos todos los pasos se borrarán los ficheros de instalación y voilà, ya podemos acceder:

Vista primer acceso a teampass
Vista primer acceso a teampass

El artículo ha quedado algo extenso hasta aquí, así que haré una segunda parte donde veremos su funcionamiento interno y todas sus opciones. ¡Estad atentos! 😉

La imagen de portada es cortesía de Flickr y tiene derechos Creative Commons

avatar
6 Comment threads
6 Thread replies
1 Followers
 
Most reacted comment
Hottest comment thread
6 Comment authors
Gaspar FernándezGestión de contraseñas compartida con TeamPass (segunda parte)david ochobitsVariedades Linuxserloz Recent comment authors

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

  Subscribe  
más nuevo más antiguo más votado
Notificarme de
x-man
Lector
x-man

Esperando la segunda parte.

Siempre he usado Administradores de contraseñas, es mis tiempos en el lado del mal, usaba uno que era de Kaspersky, ya cuando salí de las sombras empecé con FPM (Figaro Password Manager) y desde entonces he probado muchos.

Ahora solo uso KeepassX, y aunque todavía carece de muchas de las funciones del original, lo prefiero por su adaptación al entorno KDE.

Gracias, …estos son temas que siempre se agradecen doblemente por su importancia.

Have a lot of Fun!!

serloz
Suscriptor
serloz

Me sucede algo raro con vuestros artículos, supongo que será en mi caso particular, pero no consigo ver texto alguno ni en el artículo ni tampoco en los “posibles” comentarios… ¿alguna sugerencia? Uso Mozilla Firefox ESR 45.5.1.

trackback

[…] Visitar la fuente original […]

Variedades Linux
Lector

A mi gusta más seahorse

trackback

[…] el artículo anterior sobre TeamPass pudimos ver de qué trataba y su instalación sobre un servidor GNU Linux. En […]

Gaspar Fernández
Lector

Ufff a mí me sigue dando reparo utilizar un software en servidor para almacenar las contraseñas. A ver, no tiene por qué pasar nada, están cifradas, aunque alguien pueda entrar y haga un dump de base de datos no va a poder sacar las claves fácilmente. Pero no sé, sigo pensando que las contraseñas no son cosas que deban viajar por la red. Llámame abuelete paranoico 😛