Ocultando senha no script bash

1

Eu tenho um script bash, que executa um arquivo Java. Esse arquivo Java se conecta a um serviço online e requer que, como um dos parâmetros, eu forneça minha senha para o serviço. Eu me sinto desconfortável digitando minha senha no arquivo bash, para qualquer um ver. Existe alguma maneira de eu "esconder" a senha no arquivo bash, criptografá-lo ou algo assim?

    
por Lenny K 02.09.2011 / 01:31

3 respostas

4

Use chmod para tornar o script apenas legível por você mesmo.

chmod go-rwx myscript

Se o script for suposto público, não há uma boa maneira de protegê-lo - a senha ainda teria que ser descriptografada antes de ser dada ao programa Java, e se o script puder faça, qualquer um pode fazer isso.

Se for para ser executado por vários usuários, mas em uma máquina que você controla, então você pode mantê-lo protegido (chmod) e configurar o sudo para permitir a execução apenas desse script em particular. (Para coisas mais complicadas, algum tipo de divisão em cliente e servidor pode ser feito, mas ainda não é necessário.) Cuidado, porém, que toda a linha de comando do seu aplicativo Java será visível em ps -f enquanto estiver em execução.

    
por 02.09.2011 / 01:34
1

Em vez de incluir o texto da senha no script, inclua-o em outro arquivo e use operadores ou pipes de redirecionamento de E / S para obtê-lo no comando Java. Você pode então atribuir permissões mais restritivas ao arquivo que contém a senha ou colocá-la em uma mídia removível, etc.

    
por 02.09.2011 / 02:23
1

Desde que você mencionou que

one of the parameters

para o programa java é a senha, você pode estar interessado em saber que todos os parâmetros de linha de comando na maioria dos sistemas unix são publicados para qualquer um no sistema ler. Você pode estar trancando a janela enquanto deixa a porta do celeiro aberta.

Para uma demonstração, tente:

ps aux | less -S

Você deve poder usar as setas para navegar para a direita e ver as linhas de comando completas de todos os processos em execução no seu sistema.

    
por 02.09.2011 / 07:14