SSH para um host e digite a senha com o shell script [duplicate]

1

Eu quero criar um arquivo como este: sshTOhost:

#!bin/bash
ssh -D 1500 user@host
#enter password (I don't know how)
    
por Alireza Fallah 21.09.2013 / 09:55

3 respostas

5

Você pode usar sshpass para usar ssh em um shell roteiro; O script pode fornecer automaticamente a senha para ssh usando sshpass . O artigo vinculado explica como fazer isso e também por que você absolutamente não deveria fazer isso.

Em vez disso, você deve usar a autenticação de chave pública . Se você precisar automatizá-lo completamente sem nenhuma entrada do usuário, você pode configurar uma chave privada sem passphrase; seu script pode usar essa chave para se conectar ao host remoto sem nenhuma entrada do usuário.

    
por 21.09.2013 / 11:21
1

Você tem outro jeito:

expect é uma linha de comando para sua tarefa, na primeira instalação, Em seguida, escreva em seu script :

#!bin/bash
ssh -D 1500 user@host
expect "Echo of after ssh -D 1500 user@host"
send yourpassword\r
wait

Claro, é perigoso, porque todos podem ler sua senha.

    
por 21.09.2013 / 11:30
0

Eu uso espero em um script para automatizar a instalação de software em novos servidores. Tem um pouco de curva de aprendizado, mas uma vez configurado, funciona muito bem.

    
por 21.09.2013 / 11:35

Tags