[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [shell-script] Passar senha por linha de comando pro ssh
From: |
Marcos |
Subject: |
RE: [shell-script] Passar senha por linha de comando pro ssh |
Date: |
Tue, 25 Apr 2006 12:11:01 +0000 |
Tentei rodar o comando direto no script abaixo
#!/usr/bin/expect
spawn cat /var/www/sax/id_dsa.pub | ssh root@192.168.100.9 'cat - >>
~/.ssh/authorized_keys'
expect "*assword:"
send "[lrange $argv 0 0]\r"
interact
Ao rodar deu o seguinte erro:
spawn cat /var/www/sax/id_dsa.pub | ssh root@192.168.100.9 'cat - >>
~/.ssh/authorized_keys'
ssh-dss
AAAAB3NzaC1kc3MAAACBAOHbBHHK0HrhZO6i0EJ/3WISYHt32i5TvltDXirydMnDZqPuMl0mb+hkqUv36S/1k0W4mA9FwtJ6ba3orzSzbbQo5QLBYbB746UcZbfxQCOApVmKNkOazm/sLrLsKZTYdjZARsFCeKTKQVyBWewQQXwc8gjrPYJBa2omYAQmDdwZAAAAFQC8B7LnhdbIXuRUXQDypvIhn/wgkQAAAIBQ9+YkCIrGCXLNIuYa3n1cddnWkKb60HpoSPuLLaNy4RsW7T+fh3kVV8LRonaqQps5cLYaBaeIbS+XEsn0uvJ40APVr55CGAkQ0h5DV0O0zceMFzOynoCHnLYTo+YdTbW7F7NsrUFeDdV2s3aGUMK9rIw93coYIbRFYz5uN6avSwAAAIEAqTpODgXozl6H90JinTRmloZ1EoZwDw/gTGnh8B/PfiXEK5ZizVt07ssGTl8kzGOYvssgIFHVHNKgN0krSv9V7eWMOeeUZsgc76Ach7HvxNwsHq/cLpqztCosiC60NKuEy8duIXTmZkBm002Y5r4yHI8tUs/YifXofgaGrgQ+Qz0=
root@bunker
cat: |: No such file or directory
cat: ssh: No such file or directory
cat: root@192.168.100.9: No such file or directory
cat: 'cat: No such file or directory
Então estou tentando fazer por partes, primeiro copiar o id_dsa.pub para
o servidor remoto pra depois se logar e rodar o cat.
Usei o script abaixo pra copiar o id_dsa.pub para o /tmp da maquina
remota, funcionou
#!/usr/bin/expect
spawn scp /var/www/sax/id_dsa.pub root@192.168.100.9:/tmp
expect "*assword:"
send "[lrange $argv 0 0]\r"
interact
# EOF
Usando o script abaixo consigo me logar normalmente:
spawn ssh 192.168.100.9 -l root
expect "*assword:"
send "[lrange $argv 0 0]\r"
interact
Só não consegui ainda rodar comando no servidor remoto pra fazer o
cat /tmp/id_dsa.pub para o ~/.ssh/authorized_keys
Tentei rodar o cat direto no ssh mas nao funciona no script do expect
spawn ssh 192.168.100.9 -l root 'touch /tmp/teste'
Em Seg, 2006-04-24 às 17:43 -0300, MrBiTs escreveu:
> /*
> Ou vc usa expect ou vc configura o seu ssh para não pedir senha.
>
> Em ambos os casos, como o usuario é o root, acho perigoso, tome cuidado
> */
>
> Pensando nesse caso, escrevinhei lá o meu expectizinho para fazer login no
> meu servidor via SSH.
> Obviamente, a ideia do expect é economizar tempo na digitação da senha, mas
> estamos falando de ter nossa senha em plain text, aberta para qualquer um.
> Para contornar isso, crie o scrip expect que segue:
>
> #!/usr/bin/expect
>
> spawn ssh -p 2222 200.200.2000 -l usuario
> expect "*password:"
> send "[lrange $argv 0 0]\r"
> Interact
>
> # EOF
>
> Ele vai esperar o argumento senha, passado via lrange. E há um shell script
> chamando esse cara assim:
>
> #!/bin/bash
> SENHA=123456
> script.exp $SENHA
>
> # EOF
>
> Mas, ainda assim temos o problema da senha continuar em plain text. Então,
> usei o shc para "compilar" o shell-script, gerando um binário. Pelo menos,
> ficamos protegidos de olhos curiosos. E o IDA Linux não mostra a senha para
> você :)
>
>
>
> ------
> MrBiTs - address@hidden | /"\
> 010 Encrypted e-mail preferred | \ / ASCII Ribbon Campaign
> 001 OpenPGP Key ID: 0x6DD1F186 | X Against HTML email & vcards
> 111 http://www.mrbits.com.br | / \
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
[As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Passar senha por linha de comando pro ssh, Ivan Santos, 2006/04/24