Script protegido por senha na edição, sem senha na execução

0

Existe alguma maneira de definir uma senha em um script (ou qualquer arquivo para isso), sem ter que digitar uma linha de comando específica para descriptografá-la toda vez que eu quiser editá-la? Definir essa senha para um diretório, tornando todos os arquivos (presentes e futuros) protegidos por senha, seria ótimo e, na verdade, ainda melhor.

Exemplo de situação:

nano path/to/script
Enter passphrase : *****
[Modification allowed, then file closed]
path/to/script/scriptToExecute
[Is executed without asking for password]

sudo é em si uma solução, mas o problema é que, a menos que eu deixe o terminal, ele não pede senha quando é digitado uma vez em uma única sessão.

O propósito disto seria conectar-se a um SSH distante sem precisar digitar a senha toda vez (principalmente para fazer comandos scp), colocando-o no script. Mas se todos puderem acessá-lo, isso se tornará sem sentido. Alguma idéia / solução?

Obrigado pelas suas respostas.

    
por Razakhel 19.11.2015 / 00:46

1 resposta

0

Como Jeff Schaller menciona, você pode desabilitar o cache de senha do sudo adicionando isso ao seu arquivo /etc/sudoers :

Defaults timestamp_timeout=0

Então você pode simplesmente chown root FILE; chmod 755 FILE para que somente o root possa editar o arquivo, mas todos possam ler / executar.

Como alternativa, você pode fazer su root -c nano FILE , pois su não armazena senhas em cache.

    
por 19.11.2015 / 04:09