Sistema de gerenciamento de senhas LAPS (Local Administrator Password Solution).
O Gerenciador de Senhas LAPS é uma aplicação web desenvolvida para centralizar e gerenciar as senhas de administrador local de todos os computadores da rede. O sistema integra-se ao Active Directory (LDAP) para sincronizar automaticamente as senhas LAPS e fornece uma interface intuitiva para visualização, gerenciamento e monitoramento.
- GrĆ”ficos Visuais: GrĆ”ficos de linha, barras, pizza e doughnut com estatĆsticas em tempo real
- Cards de MƩtricas: 8 cards clicƔveis com informaƧƵes importantes:
- Total de computadores
- Senhas que expiram hoje
- Senhas expiradas
- Senhas antigas (6+ meses e 1+ ano)
- Senhas manuais
- Senhas alteradas hoje
- Computadores sem senha
- Sistema de Alertas: NotificaƧƵes visuais para situaƧƵes crĆticas
- Navegação Intuitiva: Cards clicÔveis abrem visualizações filtradas
- Tabela Principal: Lista completa de senhas LAPS com todas as informaƧƵes
- Filtros AvanƧados:
- Senhas ativas (padrão)
- Senhas nulas (computadores sem senha)
- Senhas antigas (histórico)
- Senhas que expiram hoje
- Senhas alteradas hoje
- Busca Inteligente: Pesquisa por nome do computador
- Ordenação: Ordenação por qualquer coluna da tabela
- Senhas AutomÔticas: Sincronização automÔtica com o Active Directory
- Senhas Manuais: Adição, edição e exclusão de senhas manuais
- Cópia RÔpida: Botão para copiar senhas para clipboard
- Validação: Verificação de integridade dos dados
- Integração LDAP: Conexão direta com o Active Directory
- Atualização em Tempo Real: Botão "Atualizar" para sincronizar dados
- Processamento Inteligente: Sincroniza apenas computadores com alteraƧƵes
- Feedback Visual: Status em tempo real do processo de atualização
- Autenticação: Sistema de login seguro
- Sessões Protegidas: Controle de acesso por sessão
- Tokens CSRF: Proteção contra ataques cross-site
- Sanitização: Tratamento seguro de dados de entrada
- Logout Seguro: Destruição completa de sessões
- URL: Acesse a aplicação através do navegador
ā ļø Importante: Configure o usuĆ”rio e senha no arquivoinit.sqlantes do primeiro deploy
- Acesso: Clique em "Dashboard" na pƔgina principal
- Navegação: Clique em qualquer card para ver dados especĆficos
- Tema: Use o botão de tema para alternar entre claro/escuro
- Atualização: Use o botão "Atualizar" para sincronizar dados
- Tabela Principal: Visualize todas as senhas LAPS
- Filtros: Use os checkboxes para filtrar por tipo de senha
- Busca: Digite o nome do computador na caixa de busca
- Ordenação: Clique nos cabeçalhos das colunas para ordenar
- Copiar Senha: Clique no Ćcone de cópia ao lado da senha
- Adicionar Manual: Clique no Ćcone "+" para adicionar senha manual
- Editar: Clique no Ćcone de edição para modificar senha manual
- Excluir: Clique no Ćcone "šļø" para remover senha manual
- Sincronização: Clique em "Atualizar" para sincronizar com o LDAP
- Status: Acompanhe o progresso em tempo real
- Conclusão: A pÔgina recarrega automaticamente com dados atualizados
laps/
āāā interface/ # Interface web principal
ā āāā PHP/ # Arquivos PHP da aplicação
ā āāā SCRIPTS/ # Scripts de sincronização
ā āāā nginx/ # Configuração do servidor web
āāā .env # ConfiguraƧƵes do ambiente
āāā docker-compose.yml # Orquestração de containers
āāā README.md # Este arquivo
- Backend: PHP 8.1
- Banco de Dados: MySQL 8.0
- Servidor Web: Nginx
- Containerização: Docker
- Frontend: HTML5, CSS3, JavaScript
- GrƔficos: Chart.js
- Ćcones: Font Awesome
- Active Directory: Sincronização automÔtica via LDAP
- GLPI: Integração para gestão de ativos (configurÔvel via GLPI_URL)
- Banco de Dados: Armazenamento seguro de senhas e histórico
O sistema utiliza um arquivo .env para todas as configuraƧƵes:
# ConfiguraƧƵes do Banco de Dados
DB_HOST=localhost
DB_NAME=laps_db
DB_USER=laps_user
DB_PASS=sua_senha
# ConfiguraƧƵes LDAP
LDAP_SERVER=ldap://seu-servidor
LDAP_BASE_DN=DC=exemplo,DC=com
LDAP_USER=usuario_ldap
LDAP_PASS=senha_ldap
# ConfiguraƧƵes GLPI
GLPI_URL=https://glpi.exemplo.com
# Grupos permitidos para acesso (separados por vĆrgula)
LDAP_ALLOWED_GROUPS=Domain AdminsO sistema integra-se ao GLPI para permitir visualização dos computadores no sistema de gestão de ativos. Para configurar:
- URL do GLPI: Configure a variƔvel
GLPI_URLno arquivo.env - Exemplo:
GLPI_URL=https://glpi.sua-empresa.com - Funcionalidade: O botão "Ver no GLPI" na tabela de senhas abrirÔ o computador correspondente no GLPI
O sistema verifica se o usuƔrio pertence aos grupos configurados no Active Directory. Para configurar:
- Grupos Permitidos: Configure a variƔvel
LDAP_ALLOWED_GROUPSno arquivo.env - Exemplo:
LDAP_ALLOWED_GROUPS=Domain Admins,Administradores,TI - Funcionalidade: Apenas usuÔrios dos grupos especificados poderão fazer login no sistema
O sistema utiliza autenticação local como fallback. Para configurar o usuÔrio e senha:
- Editar arquivo:
interface/init.sql - Localizar linha:
INSERT IGNORE INTO local_users (username, password_hash, email, full_name, role) VALUES - Alterar usuƔrio: Substituir
'admin'pelo nome de usuƔrio desejado - Gerar hash da senha: Use um gerador de hash bcrypt online ou execute:
<?php echo password_hash('sua_senha_aqui', PASSWORD_BCRYPT); ?>
- Substituir hash: Trocar o hash bcrypt existente pelo novo hash gerado
- Exemplo:
INSERT IGNORE INTO local_users (username, password_hash, email, full_name, role) VALUES ('seu_usuario', '$2a$12$novo_hash_aqui', 'usuario@empresa.com', 'Nome Completo', 'admin');
- Gere o hash:
<?php echo password_hash('MinhaSenha@2024', PASSWORD_BCRYPT); ?> - Resultado:
$2y$10$...(hash Ćŗnico) - Use no SQL:
INSERT IGNORE INTO local_users (username, password_hash, email, full_name, role) VALUES ('ti_admin', '$2y$10$hash_gerado_aqui', 'ti@empresa.com', 'Administrador TI', 'admin');
# Clone o repositório
git clone [url-do-repositorio]
# Configure o arquivo .env
cp exemplo.env .env
# Edite o arquivo .env com suas configuraƧƵes
# Execute com Docker Compose
docker-compose up -d- Total de Computadores: Contagem geral de registros
- Senhas por Status: Distribuição entre ativas, nulas e manuais
- Histórico de AlteraƧƵes: Senhas modificadas por perĆodo
- Alertas de Expiração: Senhas que expiram em breve
- Performance: Tempo de sincronização e processamento
- Logs de Sincronização: Arquivo
ldap-up.logcom detalhes do processo - Script de EstatĆsticas:
ldap-stats.shpara anƔlise detalhada - Monitoramento em Tempo Real: Status visual na interface
- Autenticação Segura: Sistema de login com validação
- Proteção CSRF: Tokens para prevenir ataques cross-site
- Sanitização de Dados: Tratamento seguro de entradas
- Sessões Protegidas: Controle de acesso por sessão
- Headers de SeguranƧa: CSP, XSS Protection, Frame Options
- Logout Seguro: Destruição completa de sessões e cookies
- Senhas Fortes: ExigĆŖncia de complexidade mĆnima
- Configuração Segura: Sempre altere o usuÔrio e senha padrão no
init.sql - Controle de Acesso: Verificação de autenticação em todas as pÔginas
- Auditoria: Registro de aƧƵes importantes
- Hash Seguro: Use sempre hash bcrypt para senhas locais
- Layout AdaptƔvel: Funciona em desktop, tablet e mobile
- Tema Claro/Escuro: Alternância automÔtica com persistência
- Ćcones Intuitivos: Font Awesome para melhor usabilidade
- Animações Suaves: Transições CSS para melhor experiência
- Feedback Visual: Estados de loading e confirmaƧƵes
- Navegação Clara: Estrutura intuitiva e fÔcil de usar
- Acessibilidade: Contraste adequado e navegação por teclado
- Performance: Carregamento rƔpido e operaƧƵes eficientes