Visão Geral
A Autenticação Multifator (MFA) adiciona uma camada extra de segurança à sua instalação do AirysChat ao exigir que os usuários forneçam uma senha de uso único baseada em tempo (TOTP) além da senha regular. Este guia ajudará você a ativar a MFA para a sua instância do AirysChat auto-hospedado.Pré-requisitos
- AirysChat versão 4.6 ou superior
- Acesso às variáveis de ambiente do seu servidor
- Capacidade de reiniciar o seu aplicativo AirysChat
Passos de Configuração
Passo 1: Gerar Chaves de Criptografia
A MFA requer chaves de Criptografia do Active Record para armazenar com segurança os segredos dos usuários. Use o comando de inicialização de criptografia integrado do Rails:- Armazene estas chaves com segurança. Você precisará delas para o próximo passo e para quaisquer futuras migrações de servidor
- Use chaves diferentes para cada ambiente (desenvolvimento, staging, produção)
- Nunca compartilhe ou faça commit dessas chaves para o controle de versão
Passo 2: Configurar Variáveis de Ambiente
Adicione as seguintes variáveis ao seu arquivo.env usando as chaves geradas no Passo 1:
Guia de Configuração do Usuário
Assim que a MFA estiver configurada no seu servidor, os usuários poderão ativá-la para as suas contas:Para Usuários: Ativando a MFA
- Faça login na sua conta do AirysChat
- Navegue até Configurações de Perfil → Segurança
- Clique em Ativar Autenticação de Dois Fatores
- Escaneie o código QR com um aplicativo autenticador:
- Google Authenticator
- Microsoft Authenticator
- Authy
- 1Password
- Ou qualquer aplicativo compatível com TOTP
- Insira o código de 6 dígitos do seu aplicativo autenticador
- Salve os seus códigos de backup em um local seguro (10 códigos alfanuméricos de 8 caracteres)
- Clique em Verificar e Ativar
Para Usuários: Fazendo login com MFA
- Insira o seu email e senha como de costume
- Quando solicitado, insira o código de 6 dígitos do seu aplicativo autenticador
- Alternativamente, use um código de backup se não tiver acesso ao seu autenticador
Para Usuários: Desativando a MFA
- Vá para Configurações de Perfil → Segurança
- Clique em Desativar Autenticação de Dois Fatores
- Insira o seu código atual de 6 dígitos e a sua senha
- Confirme a ação
Solução de Problemas
MFA Indisponível
Se os usuários não virem opções de MFA:- Verifique se as chaves de criptografia estão definidas:
- Verifique se todas as três chaves estão configuradas:
- Certifique-se de que o aplicativo foi reiniciado após a configuração
Perda de Acesso ao Autenticador
Se um usuário perder o acesso ao seu autenticador:-
Usando códigos de backup:
- Os usuários podem fazer login com um dos seus códigos de backup salvos (alfanumérico de 8 caracteres)
- Cada código só pode ser usado uma vez
- Exemplo de formato:
A1B2C3D4
- Intervenção do Administrador (se os códigos de backup também forem perdidos):
Práticas Recomendadas de Segurança
Gerenciamento de Chaves
- Nunca faça commit das chaves de criptografia para o controle de versão
- Gere chaves separadas para cada ambiente usando
rails db:encryption:init - Use chaves diferentes para os ambientes de desenvolvimento, staging e produção
- Gire as chaves periodicamente (requer reinscrição de todos os usuários)
- Faça backup das chaves com segurança - perdê-las significa que os usuários não poderão autenticar
Segurança do Servidor
- Use apenas HTTPS - Os códigos da MFA podem ser interceptados por HTTP
- Ative a limitação de taxa - O AirysChat inclui limitação de taxa integrada para tentativas de login
- Atualizações regulares - Mantenha o AirysChat e as dependências atualizados
- Monitore tentativas falhas - Revise os logs em busca de atividades suspeitas
Migração e Recuperação de Desastres
Migrando para um Novo Servidor
- Exporte as variáveis de ambiente do servidor antigo (incluindo as chaves de criptografia)
- Faça backup do banco de dados com os dados da MFA
- Configure um novo servidor com as mesmas chaves de criptografia (NÃO gere novas)
- Restaure o banco de dados
- Teste o login com MFA com uma conta de teste
rails db:encryption:init, os segredos da MFA existentes ficarão ilegíveis.
Recuperação de Desastres
Se as chaves de criptografia forem perdidas:- Todos os usuários precisarão reativar a MFA
- Comunique o problema aos usuários o mais rápido possível