Script para login automático do ssh em uma porta específica

0

Atualmente, a maneira "tradicional" de se conectar por meio do SSH é a seguinte:

ssh USERNAME@HOST -p PORT

Eu gostaria de criar um script no qual incluirei todas as informações apropriadas (nome de usuário, senha, host, porta) e quando eu o executar, ele se conectará automaticamente levando-me ao shell da máquina host.

Eu não me importo com o idioma que você usará (por exemplo, Python, Perl ...). Eu tentei criá-lo usando o Expect, mas infelizmente não funcionou para mim.

    
por Vasilis Keleris 21.01.2016 / 17:07

2 respostas

2

Para login automático, o caminho a percorrer é usando a autenticação baseada em chave.

Um bom tutorial aqui

Você pode então usar o padrão (aquele em ~/.ssh/id_rsa ) ou usar outra chave passando o parâmetro -i MyKeyFile para ssh.

    
por 21.01.2016 / 18:45
0

Use sshpass

$ sudo apt-get install sshpass

Crie seu script

#!/bin/bash

user="user"
psswd="password"
port="22"
host="domain.com"

sshpass -p $psswd ssh $user@$host -p $port

Executar

$ bash connect_script.bash
Welcome to Ubuntu ..... LTS (.......)

* Documentation:  https://help.ubuntu.com/
New release '14.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

You have new mail.
Last login: Thu Jan 21 11:39:35 2016 from x.x.x.x
user@host:~$ 
    
por 21.01.2016 / 18:41