X

Gestión de contraseñas compartida con TeamPass (Primera parte)

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

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

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

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

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

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

0 0 votos
Article Rating
david ochobits: Un informático de sistemas con mucho que contar.

Ver comentarios (10)

  • 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!!

    • Hola x-man, un placer leerte por aquí.

      Keepass en sus diferentes versiones es una gran herramienta, que de hecho suele tener siempre instalada en todos mi equipos, incluidos los móviles.

      TeamPass va más allá ya que permite compartir claves vía web con otros miembros de tu equipo de trabajo o departamento. De manera muy segura, además permite doble factor de autentificación, tal y como he explicado en el artículo.

      Espero tener acabada la segunda parte para la semana que viene, esperemos! :-)

      Un saludo colega!

  • 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.

    • Pues vaya! Creo que no es la primera vez que oigo un comentario similar. ¿Has probado con otro navegador? ¿Tienes algún complemento activado que pueda detener javascript? ¿Y has probado desde un celular? Ya nos dices.

      Un saludo

      • Cierto, desde el teléfono móvil con Android y Mozilla Firefox actualizado al día de la fecha se ve todo el texto correctamente tanto en el cuerpo del artículo como en los comentarios.
        No así en el portátil con Slackware 14.2 y Mozilla Firefox ESR (permitida la Web con NoScript y uBlock desactivado, únicos complementos activados serían HTTPS Everywhere y Greasemonkey) o Konqueror (sin complemento alguno).
        Saludos.

        • Hola serloz. Sí, hemos tenido casos de problemas como el tuyo. A nosotros nos ha servido eliminar un momento el renderizado de las tipografías del sistema y volverlo a poner. ¿Cómo se hace esto?

          Sencillo. Ve a donde se cambian las tipografías y desmarca la opción donde te piden que elijas el tipo de renderizado (RGB, BGR...) y también, si se puede en tu entorno, deshabilita las opciones de "suave, medio, completo". Lo quitas todo, cargas la página y, si ves que se ha solucionado, vuelves a poner todo como a ti te guste. A todas las personas que han probado el método les ha valido hasta el momento. Esperemos que a ti también se sirva.

          Una cosa rara, no lo habíamos visto ninguno antes y no hemos encontrado que haya un lugar en la configuración del tema donde se pueda eliminar esta situación. Debe ser un bug del tema, suponemos. Estamos en conversaciones con elllos, a ver si damos con "el quid de la cuestión".

          (Si no lo solucionas, por favor, dínoslo y coméntanos también el tipo de entorno que tienes, para darte instrucciones más precisas si hiciera falta).

          • Todo correcto ahora siguiendo vuestras indicaciones para el entorno de escritorio KDE, ¡muchas gracias por vuestra ayuda!

            La ruta completa para otro usuario con el mismo problema sería: Preferencias del Sistema/Apariencia de las aplicaciones/Tipos de letra/Usar el suavizado de bordes/ Habilitado (Botón a la derecha "Configurar las preferencias del suavizado" de Media a Suave) y Aplicar/volviendo a dejar predeterminado a Preferencias del Sistema en el menú de selección.

            Abriendo el navegador, y anotando la dirección de este mismo artículo ya se puede ver todo el texto correctamente junto a las imágenes.

            Saludos!!!

    • Lo cierto es que seahorse no lo he probado mucho, pero no sé si puede cumplir con las funciones de TeamPass, para que se pueda acceder de manera remota vía servidor web. Imagino que lo debes comparar con keepass.

  • 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 :P

Artículos relacionados

Este sitio utiliza cookies