Ajuda para criar script que automatiza encriptação [RESOLVIDO]

1. Ajuda para criar script que automatiza encriptação [RESOLVIDO]

andre luiz
xiloba

(usa Slackware)

Enviado em 14/05/2011 - 12:21h

Oi, galera.
Fiz um script para encriptar e desencriptar mais facilmente uma pasta.
Depois que li um post aqui do VOL : http://www.vivaolinux.com.br/artigo/Criptografar-arquivos-importantes-no-seu-Linux/?pagina=4

A minha dúvida é bem básica:
1- Como fazer para o script voltar, se a pessoa digitou algo diferente de "e" ou "d", `a linha em que ele faz a primeira pergunta: " echo "Digite o que deseja: Encriptar ou Desencriptar: (e/d)?", caso ele escolha continuar?
2- Na segunda pergunta também usei a variável "resposta", teria que ser outra palavra ou teria que ser respost2(3, e assim por diante)?
---------------------------------------------
#!/bin/sh
# script para encriptar e desencriptar os arquivos. Versão 1.0
#desencripta:
#encfs ~/.criptografado/ ~/criptografado/
#encripta
#fusermount -u ~/criptografado
echo "Digite o que deseja: Encriptar ou Desencriptar: (e/d)?"
read resposta
if [ "$resposta" = "e" ]; then
fusermount -u ~/criptografado
fi
if [ "$resposta" = "d" ]; then
encfs ~/.criptografado/ ~/criptografado/
else
echo "Você digitou uma opção inválida. Quer sair do script? (s/n)."
read resposta
if [ "$resposta" = "s" ]; then
exit
fi
if [ "$resposta" = "n" ]; then
back to


  


2. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 16/05/2011 - 18:22h

Cara existem dezenas de formas de se fazer ... vou dar 3 sugestões:

#!/bin/bash
sai ()
{
if [ "$resposta" = "s" ]; then
exit
else
menu
fi
}


menu ()
{
echo "Digite o que deseja: Encriptar ou Desencriptar: (e/d)?"
read resposta
if [ "$resposta" = "e" ]; then
fusermount -u ~/criptografado
fi
if [ "$resposta" = "d" ]; then
encfs ~/.criptografado/ ~/criptografado/
else
echo "Você digitou uma opção inválida. Quer sair do script? (s/n)."
read resposta
sai
fi
}

menu



3. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 16/05/2011 - 18:23h

#!/bin/bash

menu ()
{
echo "Digite o que deseja: Encriptar ou Desencriptar: (e/d)?"
read resposta
case "$resposta" in
"e" | "E" )
fusermount -u ~/criptografado
;;
"d" | "D" )
encfs ~/.criptografado/ ~/criptografado/
;;
* )
echo "Você digitou uma opção inválida. Quer sair do script? (s/n)."
read resposta
if [ "$resposta" = "s" ]; then
exit
else
menu
fi
;;
esac
}
menu


4. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 16/05/2011 - 18:23h

e minha preferida:



#!/bin/bash
menu ()
{
clear
echo "Digite o que deseja:

"
resposta="Encriptar Desencriptar Sair"

select opcao in $resposta; do
if [ "$opcao" = "Encriptar" ]; then
fusermount -u ~/criptografado
elif [ "$opcao" = "Desencriptar" ]; then
encfs ~/.criptografado/ ~/criptografado/
elif [ "$opcao" = "Sair" ]; then
exit 0
else
echo "Opcao invalida"
sleep 1
menu
fi
done
}
menu



5. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

andre luiz
xiloba

(usa Slackware)

Enviado em 16/05/2011 - 18:59h

Valeu, fdmarp.
Vou estudar seus scripts para aprender mais.
Era só usar um menu na primeira linha.
Também era possível usar a variável 'resposta' novamente.

Só para concluir: eu poderia usar o comando grep | no script para pegar a resposta(desencriptar) e inserir automaticamente a senha?
Eu sei que fazendo isso fica vulnerável a segurança. Mas só eu uso este micro.



6. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 17/05/2011 - 12:53h

Não conheço o encfs mas vc queria o que, pedir a senha pro usuário? vai pegar em algum arquivo? de onde você vai pegar a senha?

Se for pedir pro usuário digitar, use:
read -s -p "Password: " mypassword

Ai vc pode usar a variável $mypassword quantas vezes quizer no seu script.

mas da uma explicada melhor, ok!



7. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

andre luiz
xiloba

(usa Slackware)

Enviado em 17/05/2011 - 17:28h

Oi, Fdmarp
Quando eu executo o script e escolho d (desencriptar) o script roda "encfs ~/.criptografadoq ~/criptografado/,
isso faz aparecer na tela o pedido de inserção de senha. Depois que você digita a senha, aparece(desencriptografado) o arquivo que esteve criptografado.
Então eu pensei em inserir a senha no próprio script, ou seja, quando o script rodasse a pergunta pela senha, ele mesmo, o script, colocaria a senha. Pensei que o pipe fizesse isso.




8. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 17/05/2011 - 18:54h

o que você precisa é do EXPECT.


http://www.nist.gov/el/msid/expect.cfm
segue um exemplo:
http://ubuntuforums.org/showthread.php?t=872679


9. Re: Ajuda para criar script que automatiza encriptação [RESOLVIDO]

andre luiz
xiloba

(usa Slackware)

Enviado em 17/05/2011 - 21:01h

Valeu. Vou tentar instalar e configurar. Achei que seria possível fazer isso usando o grep.
vou tentar aprender mais sobre shell script. Achei um livro do Aurelio Marinho : http://www.shellscript.com.br/






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts