2016-07-24 78 views
0

我想將echo y傳遞給plink.exe,以便plink執行一條命令。 如何實現?如何將echo y傳遞給plink.exe進行第一次連接

os.system(' c:/netapp/python/plink.exe [email protected] -pw xxx uptime > c:/netapp/python/12.txt') 

服務器的主機密鑰未在註冊表中緩存。您不能保證服務器是您認爲它的計算機。 服務器的rsa2密鑰指紋是: ssh-rsa 2048 9d:08:37:a8:d0:34:a3:d2:d8:e5:09:7e:63:08:a9:1b 如果您相信此主機,輸入「y」將密鑰添加到

將密鑰存儲在緩存中? (y/n)

+0

就像'os.system'文檔告訴你的那樣,'subprocess'是現今的首選機制,原則上可以讓你做你想問的問題。然而,正如迄今爲止的答案都指出,你想要做的不是一個好主意。 – tripleee

回答

0

確認服務器的SSH密鑰指紋是重要的一步。這就是你知道你已經連接到正確的機器,並應始終小心。

的的Plink文檔makes the following suggestion

爲了避免使用的Plink用於自動連接時被提示輸入該服務器主機密鑰,應首先使手動連接(使用膩子或的Plink的),以驗證主機密鑰(有關更多信息,請參閱section 2.2),然後選擇是以將主機密鑰添加到註冊表中。之後,除非主機密鑰更改,否則連接到該服務器的Plink命令不應提供主機密鑰提示。

2

不要!

驗證主機密鑰指紋是保護連接的一個組成部分。盲目接受任何主機密鑰將使你容易受到man-in-the-middle attacks


相反,使用-hostkey switch提供預期/已知的主機密鑰的指紋。

c:/netapp/python/plink.exe [email protected] -pw xxx -hostkey 9d:08:37:a8:d0:34:a3:d2:d8:e5:09:7e:63:08:a9:1b uptime 
相關問題