Como passar a senha para o comando ssh/scp no script bash

Como passar a senha para o comando ssh/scp no script bash

SshPass é uma ferramenta útil usada para executar a autenticação SSH no modo não interativo. Usando o sshpass, você pode usar senhas para o comando ssh ou scp sem interações, o que ajuda a utilizar em scripts de shell. Em vez de usar isso, recomendamos usar a autenticação baseada em chave.

Instale o sshpass

O pacote SSHPass está disponível nos repositórios de pacotes padrão para a maioria dos mais recentes sistemas operacionais. Você pode usar os seguintes comandos para instalá -lo em seu sistema.

No Debian:

sudo apt install sshpass 

No CentOS:

yum --enableRepo = epel -y install sshpass 

Usando sshpass

O SSHPass usa a variável de ambiente SSHPASS para armazenar senhas de usuário. Você precisa primeiro variável sshpass com senha e depois usar este comando. Aqui está um script de shell simples usando o sshpass.

exportar sshpass = ry3avbwo0oupyx9hcmzp0axx sshpass -e scp testfile.Usuário do [email protected]:/uploads/
123exportar sshpass = ry3avbwo0oupyx9hcmzp0axx sshpass -e scp testfile.Usuário do [email protected]:/uploads/

Você também pode executar o comando ssh como seguinte com sshpass.

sshpass -e ssh usuá[email protected]
1sshpass -e ssh usuá[email protected]