Este guia consolida todas as boas práticas, comandos de manutenção, migração de dados e fluxos de trabalho para gerenciar o pass de forma segura no Linux, Windows (via navegador) e Android.
O pass é considerado um dos gerenciadores de senhas mais confiáveis do mundo porque segue a filosofia Unix (faz apenas uma coisa com perfeição) e utiliza ferramentas de criptografia de nível industrial:
- Criptografia GPG (OpenPGP): Delega a proteção dos dados ao padrão internacional do GNU Privacy Guard. Seus arquivos só abrem com sua chave privada e sua frase secreta (passphrase).
- Arquitetura Zero-Knowledge Real: Todo o armazenamento é estritamente local. Nenhuma empresa, servidor de terceiros ou nuvem comercial tem acesso ou conhecimento sobre os seus dados.
- Código Aberto e Auditável: O programa consiste em um script de shell extremamente enxuto. Isso elimina a possibilidade de códigos maliciosos ocultos, rastreadores ou portas dos fundos (backdoors).
- Isolamento de Processos: Diferente de gerenciadores pesados que rodam constantemente na memória, o pass executa, descriptografa o dado solicitado e encerra o processo imediatamente.
Para que o utilitário pass-otp, as extensões de navegador (como o Browserpass) e o aplicativo Android identifiquem e gerem os códigos de segundo fator automaticamente, o arquivo de texto criptografado deve seguir uma estrutura padronizada.
SUA_SENHA_AQUI user: seu_usuario_ou_email url: https://site.com otpauth://totp/IssuerName:YourEmail?secret=YOURSECRETKEYHERE
Substitua IssuerName (ex: Google), YourEmail (ex: nome@gmail.com) e YOURSECRETKEYHERE (sua chave secreta de letras e números fornecida pelo site) pelos dados reais da sua conta.
Para migrar suas senhas antigas do Google Chrome diretamente para dentro de uma subpasta organizada no pass (evitando que elas fiquem misturadas na raiz), utiliza-se a extensão oficial pass-import.
- No navegador, acesse chrome://password-manager/settings.
- Em Exportar senhas, clique em Fazer o download do arquivo (formato .csv).
- Ubuntu/Debian: sudo apt install pass-import
- Fedora: sudo dnf install pass-import
- Arch Linux: sudo pacman -S pass-import
Execute o comando abaixo utilizando a flag -d (ou --destination) para criar e agrupar tudo em uma pasta específica (ex: google-import): Comando: pass import chrome -d google-import /caminho/para/seu/arquivo_do_chrome.csv
(No WSL, o caminho do arquivo baixado no Windows costuma ser /mnt/c/Users/SeuUsuario/Downloads/Chrome Passwords.csv).
A extensão Browserpass permite que o navegador no Windows se comunique de forma segura com o seu repositório pass dentro do Linux/WSL, preenchendo logins, senhas e códigos OTP com um clique. A extensão é mantida de forma ativa pela comunidade no GitHub.
Instale o complemento oficial Browserpass CE na loja do seu navegador de preferência:
- Browserpass para Firefox: https://mozilla.org
- Browserpass para Chrome / Edge / Brave: https://google.com
O navegador precisa de um intermediário binário para conseguir ler os arquivos do Windows/WSL.
- Acesse o repositório oficial de lançamentos: https://github.com.
- Baixe o instalador mais recente para Windows (arquivo com extensão .msi).
- Execute o instalador para registrar as chaves necessárias no sistema.
Se o seu ~/.password-store e suas chaves GPG estão dentro do ambiente Linux/WSL:
- Abra as opções da extensão Browserpass no seu navegador.
- Na seção de configuração de caminhos, altere o executável do comando pass para apontar para o subsistema digitando: wsl pass
- Certifique-se de configurar o cache do gpg-agent (ver seção 8) para que a extensão consiga descriptografar as senhas em segundo plano sem travar a tela pedindo a senha mestre a todo momento.
As versões recentes do GnuPG no Linux (v2.4+) introduziram a criptografia AEAD por padrão. A biblioteca do aplicativo Android (OpenKeychain) ainda não suporta essa modificação, gerando erros ao tentar abrir os arquivos no celular.
Execute o comando de inspeção de pacotes apontando para qualquer senha do seu repositório: Comando: gpg --list-packets ~/.password-store/email/gmail.gpg
- Cenário Incompatível: Se a saída exibir termos como "aead:" ou "aead (OCB)", o arquivo causará erro no Android.
- Cenário Correto: Se exibir apenas "encrypted data packet" ou referências a "MDC" (Manipulation Detection Code), o arquivo abrirá perfeitamente no celular.
O ajuste deve ser feito diretamente nos metadados da sua chave privada através do terminal interativo:
- Abra o editor da sua chave executando: gpg --edit-key "seu.email@example.com"
- No prompt gpg>, cole exatamente o comando abaixo em uma única linha e pressione Enter: setpref SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES ZLIB BZIP2 ZIP Uncompressed
- O sistema perguntará se deseja confirmar a atualização das preferências. Digite y e pressione Enter.
- No prompt gpg>, salve e finalize digitando: save
Nota de Estabilidade: Atualizações futuras do sistema operacional (como as atualizações de pacotes do Debian) não vão quebrar ou reverter esta configuração. As preferências ficam seladas de forma permanente dentro do bloco da sua chave criptográfica do usuário, e o GnuPG sempre respeitará as regras da chave do destinatário ao criptografar novos dados.
Modificar as preferências da sua chave GPG não altera retroativamente os arquivos que já foram salvos anteriormente no formato AEAD. É necessário instruir o pass a reescrever e re-criptografar todo o seu repositório local seguindo as novas diretrizes de compatibilidade.
Rode o comando de inicialização apontando novamente para o e-mail da sua chave GPG: Comando: pass init "seu.email@example.com"
O utilitário abrirá de forma automatizada cada arquivo em segundo plano e salvará novamente usando o formato tradicional (MDC/AES) compatível com o ecossistema mobile. Assim que o processo terminar, envie as mudanças para o seu servidor remoto executando: pass git push
A versão antiga da Google Play Store foi descontinuada e não recebe updates devido a restrições de acesso ao sistema de arquivos introduzidas nas versões modernas do Android. O desenvolvimento ativo e seguro ocorre de forma independente no GitHub.
O fork oficial atualizado, auditado e reconhecido pela comunidade é mantido pelo desenvolvedor Alexander Grahn:
- Repositório: https://github.com
- Download Seguro: Acesse a aba Releases deste repositório específico e baixe o arquivo com a extensão .apk estável mais recente (geralmente otimizado para a arquitetura do seu celular, como arm64-v8a).
A assinatura criptográfica do APK do GitHub não vai bater com a assinatura do aplicativo que veio originalmente da Google Play Store. O Android bloqueia atualizações diretas de fontes com assinaturas divergentes para evitar ataques.
Como todos os seus dados originais estão salvos no Linux e em seu repositório Git, você pode realizar a substituição sem risco de perda de senhas:
- Certifique-se de que deu "pass git push" no Linux para salvar tudo na nuvem/servidor.
- Desinstale a versão antiga do Password Store que veio da Play Store no seu celular.
- Instale o novo arquivo .apk baixado do GitHub do agrahn.
- Abra o novo aplicativo, vincule-o ao gerenciador de chaves OpenKeychain (onde sua chave GPG deve estar importada) e refaça o clone do seu repositório Git (via SSH ou HTTPS).
Por padrão, quando você usa o modificador -c para copiar uma senha ou token OTP no Linux, o pass apaga o registro da sua área de transferência após 45 segundos. Você pode reduzir esse tempo para aumentar sua segurança contra spywares ou colagens acidentais.
Para alterar o tempo limite para 15 segundos, adicione a seguinte variável ao seu arquivo de perfil do terminal (~/.bashrc ou ~/.zshrc): Linha: export PASSWORD_STORE_CLIP_TIME=15
Após salvar o arquivo, recarregue as configurações com o comando: source ~/.bashrc
Para evitar que o terminal (no Linux) ou a extensão Browserpass (no Windows/WSL) peçam a sua frase secreta longa a cada clique ou comando, configure o agente do GPG para lembrar a sua credencial temporariamente na memória por algumas horas.
-
Crie ou edite o arquivo de configuração do agente rodando: nano ~/.gnupg/gpg-agent.conf
- Adicione as seguintes linhas exatas dentro do arquivo para definir o cache de 8 horas: default-cache-ttl 28800 max-cache-ttl 28800
- Salve o arquivo (Ctrl+O, Enter, Ctrl+X) e force o agente a reiniciar para aplicar as mudanças com o comando: gpgconf --kill gpg-agent