Enviar Senha no script ssh

2

Eu fiz um script chamado sshconnect para alguns usuários, que leva 2 variáveis, usertype e sitenumber , para que os usuários usem o script em ssh para aquele sitenumber com o usertype.

Por exemplo, o usuário digita o seguinte: sshconnect read@11 e o script deixará o usuário ssh para o número de site 11 (mapeado para um endereço IP) com o nome de usuário lido.

mas quando isso acontece, o usuário se conectará a esse site e será solicitado a digitar a senha para o nome de usuário lido. Mas eu não quero que o usuário saiba ou insira a senha, em vez disso, deixe o script enviar a senha.

Existe uma maneira de enviar a senha no script?

Obrigado Peter

    
por Peter Hayek 06.06.2016 / 10:49

1 resposta

2

Existem várias possibilidades. Você pode usar expect script ou simples sshpass , mas a senha será gravada no próprio script para que o usuário possa ler a partir daí (isso não é uma segurança).

Resumindo:

sshpass -p password ssh user@host

A melhor solução é a autenticação sem senha usando o par de chaves.

Em suma, você irá criar um novo par de chaves, armazená-lo no servidor e incorporá-lo ao seu script:

ssh-keygen -t rsa -f key_file -P '' # prepare the key pair
ssh-copy-id user@host               # enter the password once
ssh -i key_file user@host           # logs in without password
    
por 06.06.2016 / 19:06