Penyimpanan otomatis kunci host server dalam cache dengan plink

21

Saya sudah mencoba mengeluarkan perintah menggunakan plink untuk mengambil informasi dari server eksternal saya. Perhatikan bahwa perintah plink ini dijalankan dari biner yang tidak mengharapkan input dari pengguna. Apakah ada tanda yang memungkinkan saya mengganti pesan kesalahan ini dan melanjutkan dengan output program?

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)

Terima kasih!

Tad Oh
sumber
Masalah sebenarnya adalah bahwa baik git tidak memberikan input ke plink dengan benar atau sebaliknya plit tidak mengambilnya dengan benar. Jika Anda memulai git clone, misalnya "git bash", input (Y / n) masuk ke bash prompt, dan bash biasanya merespons dengan bash: y: command not found.
andrybak
Anda mungkin menggunakan klink dari proyek Kitty . Ini adalah garpu dempul. Ada kuncinya: -auto-store-sshkey.
paxlo

Jawaban:

20

Coba tambahkan skrip Anda dengan:

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

Kehendak pipa ini ykarakter melalui stdinuntuk plinkketika Anda mendapatkan kunci Toko dalam cache? (y / n) prompt, memungkinkan semua plinkperintah lebih lanjut untuk dilewati tanpa perlu input pengguna. The exitperintah akan menutup sesi SSH setelah telah ditetapkan, sehingga berikut plinkperintah untuk menjalankan.

Berikut ini contoh skrip yang menulis waktu Unix server eksternal ke file lokal:

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

Referensi Pipelining : http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-4.html

Daniel Li
sumber
-1

mungkin, ini akan membantu:

plink -auto_store_sshkey -batch 192.211.158.256 -l user -pw password command
Falcluft
sumber
1
-auto_store_sshkey adalah "opsi tidak dikenal" untuk versi plink 0.63
Nathan
Tidak diketahui 0,66 juga
Joril
... dan tidak diketahui ke 0,70
Gerrat