Como posso automatizar a descriptografia gpg que usa uma senha enquanto a mantém em segredo?

12

Tenho a tarefa de automatizar a descriptografia gpg usando o cron (ou qualquer ferramenta de agendamento de tarefas compatível com o Ubuntu Server). Como tem que ser automatizado, usei --passphrase , mas ele acaba no histórico do shell, portanto fica visível na lista de processos.

Como posso proceder para automatizar a descriptografia mantendo, ao mesmo tempo, padrões de segurança bons (de preferência ótimos)?

Um exemplo será muito apreciado.

    
por Zakk Coetzee 27.10.2017 / 10:27

2 respostas

23

Armazene a frase secreta em um arquivo que só pode ser lido pelo usuário da tarefa cron e use a opção --passphrase-file para informar a gpg a leitura da senha longa.

Isso garantirá que a frase secreta não seja visível nas informações de processo na memória. O nível de segurança será determinado pelo nível de acesso ao arquivo que armazena a frase secreta (bem como pelo nível de acesso ao arquivo que contém a chave), incluindo em qualquer lugar que o conteúdo seja copiado (por isso, cuide dos backups), e acessibilidade off-line (puxando o disco para fora do servidor). Se esse nível de segurança é suficiente, dependerá dos seus controles de acesso ao servidor que mantém o arquivo, fisicamente e no software, e nos cenários que você está tentando atenuar.

Se você deseja ótimos padrões de segurança, é necessário usar um módulo de segurança de hardware em vez de armazenar sua chave (e passphrase ) localmente. Isso não impede que a chave seja usada in situ , mas evitará que ela seja copiada e usada em outro lugar.

    
por 27.10.2017 / 10:35
5

Automatizar a descriptografia significa que você precisa armazenar a frase secreta em algum lugar, ou não usar uma frase secreta (a menos que você use opções adicionais como indicado na outra resposta enviada por Stephen enquanto eu estava digitando a minha)! Nenhuma delas corresponde à sua exigência por bons ou grandes padrões de segurança.

i.e. sua exigência não é compatível com a segurança.

Você pode confiar em coisas como - você tem que ser root, eu dei o arquivo no qual minha senha é armazenada um nome realmente confuso, eu cifrei os sistemas de arquivos subjacentes, etc., etc. re todas as camadas que são triviais para contornar uma vez que você é raiz em primeiro lugar.

A opção que impede que a senha seja exibida na lista de processos é --passphrase-file <file-name> .

No entanto, isso não é mais seguro do que apenas remover a senha em primeiro lugar.

    
por 27.10.2017 / 10:36