Veja nesse post como instalar e configurar o sysPass com Ansible.
O sysPass é um gerenciador de senhas intuitivo, seguro e multiusuário. Sua interface de usuário é limpa e agradável, de fácil compreensão.
Há 3 pontos que podemos destacar do sysPass: confiável, seguro e gratuito, além de ser de código aberto.
- Confiável – Melhorado para o desempenho. Construído em cima das tecnologias HTML5 e PHP para oferecer um melhor UX.
- Seguro – Segurança importa. AES-256-CTR para uma criptografia de senha mais forte e RSA para enviar dados com segurança. Seus dados estarão seguros em qualquer lugar que você os armazene.
- Gratuito – Código aberto com a licença GPLv3. Mergulhe na auditoria de código ou melhore-a e tenha certeza de como ela se comporta.
O syPass é uma poderosa aplicação web que oferece gerenciamento de senhas de forma segura e colaborativa.
Ela possui muitas opções para facilitar e reforçar a segurança no compartilhamento de senhas entre equipes, departamentos ou clientes, incluindo ACLs, perfis, campos personalizados, valores predefinidos ou links públicos, entre muitos outros.
A configuração é gerenciada por meio de uma interface web intuitiva e permite definir opções como autenticação LDAP, correio, auditoria, backup, importação/exportação, etc.
Embora você possa usar a interface web para configurar o sysPass, os valores são armazenados no formato XML, portanto, uma maneira fácil de modificá-los sem qualquer interface do usuário.
Portanto, veja como instalar e configurar o sysPass com Ansible.
Como instalar e configurar o sysPass com Ansible
O sysPass pode ser instalado em sistema baseado em Debian ou CentOS.
Pode ser implantado também como uma arquitetura em container Docker, assim podendo ser portado para outros sistemas sem nenhum problema.
Para saber mais sobre a instalação e configuração do sysPass, veja a documentação do projeto.
Para podermos executar o gerenciador de configuração Ansible para instalação e configuração do sysPass, devemos ter o servidor já configurado para ter acesso ssh ao mesmo.
Caso queira um servidor local, pode fazer o clone do meu projeto do Github chamado terraform-libvirt-debian-syspass e assim fazer pequenas alterações setando os dados e os recursos de acordo com sua necessidade.
Se preferir ter um servidor provisionado em nuvem, pode seguir esse tutorial como criar um servidor na nuvem AWS com Terraform.
O Projeto Ansible sysPass
Para esse post, faça o clone do meu projeto ansible-syspass. O projeto tem 4 roles separados da seguinte forma:
- install-webserver – Instalar o Apache, MariaDB, PHP e configurar o php.ini
tasks:
Adicionando o nome do Server no /etc/hosts
Modificando o arquivo de configuração modt (Message Of The Day)
Inserindo configuração no ‘/etc/profile’ para o motd
Executando o ‘apt-get update’
Instalando os servidor web Apache, banco de dados MariaDB e o PHP
Editando alguns parâmetros no arquivo de configuração ‘php.ini’
Reiniciando o serviço Apache
- create-syspassdb – Proteger primeiro o MariaDB e criar o banco de dados para o sysPass
tasks:
Iniciando e habilitando o serviço MariaDB
Conectando ao servidor usando ‘login_unix_socket’
Removendo contas de usuários ‘anônimos’ para localhost
Removendo o MySQL ‘test database’
Privilégios de liberação para usuário ‘root’
Criando banco de dados com nome ‘syspassdb’
Criando usuário ‘syspassuser’ para o banco de dados ‘syspassdb’
- install-syspass – Clonar o projeto sysPass, executar as configurações e instalar o Composer
tasks:
Clonando a versão mais recente do sysPass do repositório no Github
Movendo o diretório ‘syspass’ para raiz do Apache (/var/www/html)
Definindo a propriedade de dono e group recursivamente para o diretório ‘syspass’
Definindo permissões para outros diretórios (config,backup)
Baixando o Composer
Movendo o Composer Globalmente
Setando permissões no Composer
Instalando/atualizando requerimentos do ‘composer.json’
- config-host-virtual – Criar a configuração https para o host virtual e ativar o mesmo.
tasks:
Criando configuração Host Virtual Apache para o sysPass
Ativando o Host Virtual Apache
Reiniciando o serviço Apache
Aplicar o projeto
Vale lembrar que deverá ter o Ansible instalado para aplicar o projeto. Assim, basta executar o comando ansible como a seguir.
Para checar ou executar uma role única, execute o Ansible com o parâmetro -t (–tags) seguido do nome da role e -C (–check) para apenas checar sem de fato executar.
ansible-playbook -i hosts main.yml -t install-webserver -C
Aplicar o projeto por completo sem checar.
ansible-playbook -i hosts main.yml
Acessar a interface Web do sysPass
Após a execução do Ansible, o sysPass já estará instalado e hospedado no servidor web Apache. Agora, abra seu navegador Web e acesse a interface do sysPass usando a URL que definiu, como por exemplo:
https://ec2-x-xxx-xx-xxx.compute-1.amazonaws.com/index.php
https://x-xxx-xx-xxx/index.php
Você será redirecionado para a página após aceitar o aviso de não confiável do Certificado de Segurança autoassinado, detectado pelo navegador, conforme print abaixo.
Forneça seu nome de usuário de administrador, senha e senha mestra. Não esqueça a senha mestra!
Continuando, informe as credenciais de banco de dados, escolha seu idioma, modo de hospedagem e clique no botão INSTALL.
Assim que a instalação for concluída, você será redirecionado para a página de login do sysPass.
Forneça seu nome de usuário de administrador, a senha e faça o login. Veja a página abaixo já com dados inseridos e executado uma busca por Amazon AWS no filtro Cliente.
Pronto! Vimos como instalar e configurar o sysPass com Ansible no Debian 11 com Apache. Fique a vontade para criar uma conta diferente, adicionar usuário, acessar privilégios e implantá-lo em seu ambiente de produção.