#ToolTip - Teampass
TeamPass é um Gerenciador de Senhas opensource ideal para empresas e grupos de equipes, que possuam uma grande quantidade de senhas/acessos e necessitam de uma forma segura para colaboração de forma centralizada. Também é possível um gerenciamento granular baseado em niveis de permissão diferenciados a grupos de usuários. Para o pessoal mais antigo pode-se dizer que a ferramenta se assemelha a um “keepass web”, por causa da sua aparência:
Segue um How-To de como instalar e configurar o TeamPass num ambiente empresarial.
Passo1: Instalação da VM
Foi instalado usando CentOS7, funciona em outras versões, mas neste lab utilizei essa.
Para aumentar o nível de segurança deste serviço, foi utilizado o LUKS que é a ferramenta padrão de encriptação de disco utilizado pela RedHat. Ele é utilizado para encriptar discos virtuais ou físicos, lógicos ou não, através de uma senha informada na instalação do SO(pode ser habilitado após SO instalado). Quando o LUKS é habilitado, se faz necessário inserir essa senha a cada boot da máquina. Sem esta senha é impossível a máquina se inicie.
Passo2: Instalação dos pré-requisitos
- MySQL 5.1 or higher,
- PHP 5.5.0 or higher,
- PHP extensions:
- mcrypt
- openssl
- ldap (if used)
- mbstring
- bcmath
- iconv
- xml
- gd
- openssl
- curl
Comandos
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum -y install mysql-server mysql-client
yum install php php-mcrypt php-openssl php-ldap php-mbstring php-bcmath php-iconv php-xml php-gd php-openssl php-curl php-fpm php-mysqli
Alterar o max_exectution_time do php:
Criar Database conforme indicadosystemctl start mysqld
systemctl enable mysqld
mysql_secure_installation
- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y
mysql -u root -p
******
MariaDB [(none)]> create database teampassdb character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on teampassdb.* to 'teamuser'@'localhost' identified by '********';
MariaDB [(none)]> flush privileges;
Passo3: Instalação
Download do aplicativo e configuração de permissão e pastas.
[root@teampass ~]#
cd /var/www/html
[root@teampass html]# wget https://github.com/nilsteampassnet/TeamPass/archive/2.1.27.16.zip
[root@teampass html]# unzip 2.1.27.16.zip
[root@teampass html]# mv 2.1.27.16 teampass
[root@teampass html]#
[root@teampass html]# chmod -R 0777 teampass/includes/config
[root@teampass html]# chmod -R 0777 teampass/includes/avatars
[root@teampass html]# chmod -R 0777 teampass/includes/libraries/csrfp/libs
[root@teampass html]# chmod -R 0777 teampass/includes/libraries/csrfp/log
[root@teampass html]# chmod -R 0777 teampass/includes/libraries/csrfp/js
[root@teampass html]# chmod -R 0777 teampass/backups
[root@teampass html]# chmod -R 0777 teampass/files
[root@teampass html]# chmod -R 0777 teampass/install
[root@teampass html]# chmod -R 0777 teampass/upload
[root@teampass html]#
[root@teampass html]# chown -Rf apache.apache *
Configuração do apache e restart do serviço.
[root@teampass html]#
[root@teampass html]# cat /etc/httpd/conf.d/teampass.conf
<VirtualHost *:80>
DocumentRoot "/var/www/html/teampass"
ServerName teampass.cringerlabs.local
ErrorLog "/var/log/httpd/teampass-error.log"
CustomLog "/var/log/httpd/teampass-access.log" combined
</VirtualHost>
[root@teampass html]#
[root@teampass html]# systemctl restart httpd
[root@teampass html]#
Após o reinicio do serviço acesse o portal no endereço criado e preencha com o dados configurados.

Passo4: Configuração
-
Após login, para ir para as configurações basta clicar na ferramenta no topo da página.

-
Ao configurar o Email para este serviço você, e sua equipe, sempre serão notificados a cada alteração.

-
É possível que os usuários sejam criados localmente e através de uma base de usuários LDAP, segue abaixo um exemplo de configuração utilizando um servidor Active Directory.

Obs: Após inserir o usuário escolhido no grupo do AD “TeampassGroup”, o usuário não aparecerá automaticamente na lista de usuários existentes, se faz necessário que o mesmo tente realizar login na ferramenta. E ao tentar ele entrará automaticamente no grupo de acesso “commonuser”, que conforme configurado, não possui acesso a nada (apenas login).
-
Após isso se faz necessário criar uma árvore de diretórios de forma que fique organizado do jeito mais prático para seu uso.

-
Posteriormente na opção “Manage Roles”, é possivel adicionar grupos de acesso.
Conforme pode ver, o grupo “commonuser” não possui acesso a nada, apenas os outros grupos e de forma granular.

-
Por último, após a tentativa de login do usuário, ele aparecerá na lista de usuários existentes e é possivel gerenciar e indicar quais roles esse usuário possui.

E assim, finalizamos a instalação e configuração básica do TeamPass.
Bom uso e bom proveito.
Fonte: 1. https://teampass.net/
Bonus (em breve) A aplicação tambem suporta a utilização de API e Autenticação de 2 fatores. E para quem interessar a ferramenta já possui imagem em Docker.

