FórumGdH

Página Inicial do Guia do Hardware

Registrar FAQ Calendário Pesquisar Mensagens de Hoje Marcar Fóruns Como Lidos

Voltar   FórumGdH > Profissional > Programação, scripts, web e banco de dados
Bem-vindo ao FórumGdH
Não se esqueça de se registrar, é grátis . Nós temos 759.317 usuários, convidamos você fazer parte de nossa comunidade também! Se ainda não encontrou o que procura use nossa pesquisa. Esperamos que aprecie nosso trabalho.

Resposta
 
Opções do Tópico
Antigo 17-10-2008, 10:16   #1 (permalink)
calango_branco
Novo Membro
 
Registrado em: Aug 2006
Mensagens: 50
Reputação: 12 calango_branco está indo no caminho certo
Padrão Como fornecer a senha de ssh num script ou na linha de comando? [ RESOLVIDO ]

Olá
eu uso o comando ssh usuario@10.0.0.1 para me conectar a uma máquina remota.
Tem como eu incluir nessa linha de comando a senha do usuário para que o ssh faça o login automaticamente sem solicitar a senha?
Caso isso não seja possível, tem como eu criar um script e armazenar a senha em uma variável ou em outro lugar para que quando o ssh solicitar a senha o script forneça essa senha automaticamete?
Também gostaria de saber se tem como fornecer o "yes" que o ssh pede ao gravar a chave quando eu logo pela primeira vez.
Sei que é possível fazer login sem senha por enviar a chave da minha máquina para dentro da máquina onde quero logar, mas não posso utilizar este recurso.
Desde já agradeço..

Última edição por calango_branco : 20-10-2008 às 17:58.
calango_branco está offline   Responder com Quote
Antigo 17-10-2008, 10:32   #2 (permalink)
Kakao
Super Participante
 
Avatar de Kakao
 
Registrado em: May 2002
Localização: Brasília
Mensagens: 644
Reputação: 24 Kakao Tem uma excelente energiaKakao Tem uma excelente energiaKakao Tem uma excelente energia
Padrão

Citação:
Postado Originalmente por calango_branco Ver Mensagens
Sei que é possível fazer login sem senha por enviar a chave da minha máquina para dentro da máquina onde quero logar, mas não posso utilizar este recurso.
Qual é a dificuldade de colocar a sua chave pública na máquina remota? Talvez nós possamos ajudar.
Kakao está offline   Responder com Quote
Antigo 17-10-2008, 10:47   #3 (permalink)
calango_branco
Novo Membro
 
Registrado em: Aug 2006
Mensagens: 50
Reputação: 12 calango_branco está indo no caminho certo
Padrão

Kakao
Nenhuma dificuldade em colocar a chave. Acontece que eu tenho um script que joga algumas atualizações pra várias máquinas através de um usuário sem senha. Se eu tenho uma rede com 30 máquinas e o ip 5 foi substituido ou reinstalado, o script para pedindo a chave da máquina e enquanto essa chave não é fornecida o script não joga as atualizações para os outros terminais.
Portanto eu queria incluir no script uma instrução que forncesse o "yes" pro ssh prosseguir.
calango_branco está offline   Responder com Quote
Antigo 17-10-2008, 11:38   #4 (permalink)
Kakao
Super Participante
 
Avatar de Kakao
 
Registrado em: May 2002
Localização: Brasília
Mensagens: 644
Reputação: 24 Kakao Tem uma excelente energiaKakao Tem uma excelente energiaKakao Tem uma excelente energia
Padrão

Tente:
Código:
-o CheckHostIP=no
Kakao está offline   Responder com Quote
Antigo 17-10-2008, 12:22   #5 (permalink)
calango_branco
Novo Membro
 
Registrado em: Aug 2006
Mensagens: 50
Reputação: 12 calango_branco está indo no caminho certo
Padrão

Adicionei o parâmetro na linha de comando mas mesmo assim não deu certo.
calango_branco está offline   Responder com Quote
Antigo 17-10-2008, 19:02   #6 (permalink)
Juca13
Super Participante
 
Avatar de Juca13
 
Registrado em: Feb 2007
Mensagens: 754
Reputação: 14 Juca13 Tem uma excelente energiaJuca13 Tem uma excelente energiaJuca13 Tem uma excelente energia
Padrão

Cara, não sei se é exatamente o que você quer, mas dá uma olhada no expect. Com ele você tem como passar a senha (ou qualquer coisa que queria) automaticamente pro seu script....
__________________
BeerMug
alcoholicjunkiecarniceiropédebolasujofedorendoposs uídopelocãocrossover!

Precisa de um livecd? Use o GoblinX!!

http://jucacrispim.wordpress.com
Juca13 está offline   Responder com Quote
Antigo 17-10-2008, 19:27   #7 (permalink)
Core_Dump
General de Pijama
 
Registrado em: Nov 2007
Mensagens: 3.142
Reputação: 0 Core_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputaçãoCore_Dump tem uma fabulosa reputação
Padrão

Um exemplo de script no expect para conexao Telnet :

Código:
#!/usr/bin/expect spawn "telnet" "seu_servidor_IP_ou_dominio" expect "Login:" send "seu_usuario\r" expect "Password:" send "sua_senha\r" expect "Login bem sucedido" interact
Core_Dump está offline   Responder com Quote
Antigo 20-10-2008, 17:45   #8 (permalink)
calango_branco
Novo Membro
 
Registrado em: Aug 2006
Mensagens: 50
Reputação: 12 calango_branco está indo no caminho certo
Padrão

Galera consegui resolver o problema.
O que eu precisava era de um comando que fornecesse automaticamente ao ssh (ou scp) a senha do terminal remoto ao qual eu iria conectar e, no caso de ser a primeira conexão fornecer a confirmação (yes/no) aceitando que o ssh gravasse a chave do terminal remoto em minha máquina.
Caso alguém precise do mesmo que eu faça o seguinte:

1º - Edite o arquivo /etc/ssh/ssh_config (Atenção: não é o sshd_config) e encontre a linha:

# StrictHostKeyChecking ask

Remova o comentário do início da linha e troque o "ask" no final por "no". Isso fará com que o SSH aceite a chave do terminal remoto sem perguntar se você quer ou não fazer isso. (por motivo de segurança o default é "ask").
Restarte o SSH.

2º - Instale o programa sshpass.

Exemplos de uso:
sshpass -p "casa" ssh root@10.0.0.1
Isso fará o login automático como root no ip 10.0.0.1 usando a senha "casa".

sshpass -p "casa" scp -r /home/arquivos/ 10.0.0.1:/home/
Copia a pasta "arquivos" do /home da minha máquina para o /home do ip 10.0.0.1.
Obrigado pela ajuda fornecida.
calango_branco está offline   Responder com Quote
Resposta


Opções do Tópico

Regras de Mensagens
Você não pode criar tópicos
Você não pode postar respostas
Você não pode anexar arquivos
Você não pode editar suas mensagens

Código vB está Ligado
Smiles estão Ligado
Código [IMG] está Ligado
Código HTML está Desligado
Ir para...


Horários baseados na GMT -3. Agora são 3:09.