Pausa o script BASH para permitir que o usuário insira a senha SSH

1

Eu estou tentando escrever um script bash para acessar uma variedade de servidores e executar alguns comandos, o servidor que está executando o script bash não tem EXPECT ou SSHPASS instalado e não consigo instalá-lo.

Estou procurando uma maneira de o script automatizar o login sem BASH ou SSHPASS.

Como alternativa, o script é pausado no ponto em que o SSH deseja a senha do usuário que está executando o script, em seguida, insere manualmente a senha e, em seguida, o script é retomado para executar os comandos nesse dispositivo. Isso então se repete para cada dispositivo, eu sei que isso não é muito eficiente, mas não é realmente um problema.

Eu pesquisei on-line por algumas horas, mas tudo parece estar relacionado a ferramentas de terceiros que eu posso instalar.

Obrigado.

    
por Jack Brown 13.11.2015 / 14:15

1 resposta

1

As únicas opções que eu sei para usar o ssh sem senha são essencialmente 3

  1. você pode pré-autorizar seus sistemas em outras pessoas (rápido e sem alta segurança)

    No seu cliente, faça login com um usuário específico ex: snmc

    ssh-keygen -t dsa -b 1024 
    ssh-copy-id -i ~/.ssh/id_dsa.pub  snmc@server
    <insert your password>
    ssh server
    
  2. com certificados de compartilhamento de identidade pré (mais seguro) assim

    ssh -i identity.pem root@server-address
    

    É um pouco complicado de configurar, pesquise na internet

  3. Usando sistemas centralizados de gerenciamento de identidade, como RADIUS ou KERBEROS e configurando módulos pam, também é altamente seguro, mas um pouco articulado, mas é o melhor para mim.

Espero que ajude!

    
por 13.11.2015 / 15:45

Tags