Como fazer login em uma máquina via putty usando um script?

1

No Windows, criamos um arquivo de lote para fazer login em uma máquina via massa. Ao clicar no arquivo em lote, ele faz o login nessa máquina. É possível criar um script no Ubuntu para fazer a mesma tarefa?

    
por karthick87 30.05.2011 / 13:43

2 respostas

5

Crie um iniciador server.desktop com o seguinte conteúdo:

[Desktop Entry]
Name=Server Name
Exec=ssh [email protected]
Terminal=true
Type=Application

e conceda a ele permissões de execução.

Obviamente, você deve colocar o% realuser e o% realserver.domain.com na linha Exec= .

Para permitir escolher o nome de usuário, substitua a linha Exec= pelo seguinte:

Exec=sh -c 'user=$(zenity --entry --title="Set username" --text="Username: " --entry-text="$USER"); if [ -n "$user" ]; then ssh [email protected]; else exit; fi'
    
por enzotib 30.05.2011 / 14:21
3

Seguindo a resposta da enzotib: se você codificar as informações de login em todos os scripts e arquivos, será mais difícil alterá-las posteriormente, se necessário. Uma solução melhor seria criar um arquivo de configuração SSH com configurações agrupadas em um alias de host.

Em vez disso ou em execução:

ssh [email protected] -p 1234 -i ~/.ssh/id_rsa

você pode criar um arquivo ~/.ssh/config contendo:

Host meh
    HostName meh.example.com
    User admin
    Port 1234
    IdentityFile ~/.ssh/id_rsa

Cada uma das configurações abaixo de meh é opcional e, quando omitida, usará os padrões.

O comando seria então:

ssh meh

Você tem permissão para sobrescrever configurações, o comando abaixo entraria com o nome de usuário super usando o arquivo de chaves ~/.ssh/other_key e (fornecido pelo arquivo de configuração) hostname meh.example.com na porta 1234:

ssh super@meh -i ~/.ssh/other_key
    
por Lekensteyn 30.05.2011 / 14:40