Skip to content

Instantly share code, notes, and snippets.

@arvati
Created May 30, 2026 13:50
Show Gist options
  • Select an option

  • Save arvati/3593fd563a2390ef8aed7758a3b231e5 to your computer and use it in GitHub Desktop.

Select an option

Save arvati/3593fd563a2390ef8aed7758a3b231e5 to your computer and use it in GitHub Desktop.
Configuração pass gerado por Gemini Google ia .

Manual Definitivo de Configuração, Segurança e Sincronização do pass

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.


1. A Segurança do Aplicativo pass

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.

2. Sintaxe para Escrita Manual de OTP (2FA)

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.

Padrão de Texto para Inserção Manual:

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.


3. Importação do Google Password Manager para Subpastas

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.

Passo A: Exportar do Chrome

  1. No navegador, acesse chrome://password-manager/settings.
  2. Em Exportar senhas, clique em Fazer o download do arquivo (formato .csv).

Passo B: Instalar a ferramenta de migração no Linux

  • Ubuntu/Debian: sudo apt install pass-import
  • Fedora: sudo dnf install pass-import
  • Arch Linux: sudo pacman -S pass-import

Passo C: Importar direcionando para uma subpasta

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).

⚠️ CRUCIAL POR SEGURANÇA: O arquivo .csv exportado contém suas senhas em texto limpo. Assim que validar a importação, exclua-o permanentemente do disco usando o comando: rm /caminho/para/seu/arquivo_do_chrome.csv


4. Configuração do Navegador no Windows (Browserpass)

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.

Passo A: Instalar a Extensão no Navegador

Instale o complemento oficial Browserpass CE na loja do seu navegador de preferência:

Passo B: Instalar o Host Nativo no Windows

O navegador precisa de um intermediário binário para conseguir ler os arquivos do Windows/WSL.

  1. Acesse o repositório oficial de lançamentos: https://github.com.
  2. Baixe o instalador mais recente para Windows (arquivo com extensão .msi).
  3. Execute o instalador para registrar as chaves necessárias no sistema.

Passo C: Apontar para o WSL (Linux)

Se o seu ~/.password-store e suas chaves GPG estão dentro do ambiente Linux/WSL:

  1. Abra as opções da extensão Browserpass no seu navegador.
  2. Na seção de configuração de caminhos, altere o executável do comando pass para apontar para o subsistema digitando: wsl pass
  3. 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.

5. Compatibilidade GPG (Evitando o problema do AEAD no Android)

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.

Como verificar se você tem este problema?

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.

Como tornar a sua chave GPG compatível de forma definitiva

O ajuste deve ser feito diretamente nos metadados da sua chave privada através do terminal interativo:

  1. Abra o editor da sua chave executando: gpg --edit-key "seu.email@example.com"
  2. 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
  3. O sistema perguntará se deseja confirmar a atualização das preferências. Digite y e pressione Enter.
  4. 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.


6. Como Reiniciar (Re-criptografar) o pass após trocar a Configuração GPG

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


7. Como Atualizar o Aplicativo Android pelo GitHub (O Fork Correto)

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.

Qual o repositório correto?

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).

Conflito de Assinatura Digital

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.

Fluxo Seguro de Migração:

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:

  1. Certifique-se de que deu "pass git push" no Linux para salvar tudo na nuvem/servidor.
  2. Desinstale a versão antiga do Password Store que veio da Play Store no seu celular.
  3. Instale o novo arquivo .apk baixado do GitHub do agrahn.
  4. 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).

8. Instruções Adicionais de Praticidade e Segurança

Configurando o Tempo Limite da Área de Transferência (Clipboard)

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

Configurando o gpg-agent (Evitando digitação repetitiva da senha mestre)

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.

  1. Crie ou edite o arquivo de configuração do agente rodando: nano ~/.gnupg/gpg-agent.conf

    1. Adicione as seguintes linhas exatas dentro do arquivo para definir o cache de 8 horas: default-cache-ttl 28800 max-cache-ttl 28800
    2. 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment