Armazenamento automático da chave do host do servidor no cache com plink


21

Eu tenho tentado emitir comandos usando o plink para recuperar informações do meu servidor externo. Observe que esses comandos plink são executados a partir de um binário que não espera nenhuma entrada do usuário. Existe um sinalizador que me permita substituir essa mensagem de erro e continuar com a saída do programa?

The server's host key is not cached in the registry. You
have no guarantee that the server is the computer you
think it is.
The server's rsa2 key fingerprint is:
ssh-rsa 2048 **:**:**:**:**:**:**:**:**:**:**:**:**:**:**:**
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, without
adding the key to the cache, enter "n".
If you do not trust this host, press Return to abandon the
connection.
Store key in cache? (y/n)

Obrigado!


A verdadeira questão é que o git não fornece informações apropriadas para plink ou vice-versa e não aceita corretamente. Se você iniciar git clone, por exemplo, "git bash", a entrada (S / n) entrará no prompt do bash, e o bash geralmente responde com bash: y: command not found.
andrybak

Você pode usar o klink do projeto kitty . Este é o garfo da massa. Aqui está a chave: -auto-store-sshkey.
paxlo 28/02

Respostas:


20

Tente anexar seu script com:

echo y | plink -ssh root@REMOTE_IP_HERE "exit"

Isso direcionará o ycaractere stdinpara plinkquando você conseguir a chave da loja no cache? (s / n) , permitindo que todos os outros plinkcomandos passem sem a necessidade de entrada do usuário. O exitcomando fechará a sessão SSH após ter sido estabelecida, permitindo a plinkexecução dos seguintes comandos.

Aqui está um exemplo de script que grava o horário do Unix do servidor externo em um arquivo local:

echo y | plink -ssh root@REMOTE_IP_HERE "exit"
plink -ssh root@REMOTE_IP_HERE "date -t" > remote_time.tmp

Referência de Pipelining : http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-4.html


-1

talvez ajude:

plink -auto_store_sshkey -batch 192.211.158.256 -l user -pw password command

1
-auto_store_sshkey é uma "opção desconhecido" para plink versão 0.63
Nathan

Também não
sei

... e desconhecido até 0,70
Gerrat 14/03
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.