Linux
帶有批處理文件的 SFTP 雙重身份驗證
我正在嘗試連接到
(publickey,password)
啟用雙重身份驗證的伺服器。我正在使用sshpass
提供密碼來自動化腳本,但是當我有帶有 SFTP 的批處理文件時,連接失敗而沒有批處理文件連接成功export SSHPASS=helloworld (sshpass -e sftp -b batfile.txt -o 'PasswordAuthentication=yes' \ -o 'PreferredAuthentications=publickey,password' -o 'StrictHostKeyChecking=no' user@hostname)
錯誤:
Permission denied (password). Couldn't read packet: Connection reset by peer
連接成功,沒有批處理文件
(sshpass -e sftp -o 'PasswordAuthentication=yes' \ -o 'PreferredAuthentications=publickey,password' -o 'StrictHostKeyChecking=no' user@hostname)
我試過在批處理文件中提供密碼,但沒有運氣。
是否有可能我正在努力實現
sshpass
,batchfile
如果是這樣,有人可以幫助我嗎批處理文件:
echo "Hey, I'm from Inside" !echo "Hey, I'm from Outside"
-b
阻止互動式身份驗證(您嘗試通過 模擬的內容)sshpass
。相反,您需要將命令傳遞給
sshpass
標準輸入。sshpass -e sftp -o 'PasswordAuthentication=yes' \ -o 'PreferredAuthentications=publickey,password' user@hostname < batfile.txt
像這裡:
切勿使用
StrictHostKeyChecking=no
,除非您不關心安全性。