使用密碼編寫 SFTP 腳本 - HP-UX

使用密碼編寫 SFTP 腳本 - HP-UX

我想在 HP-UX 中建立一個腳本來使用密碼在 sftp 中發送。我有這個命令

sftp -o PasswordAuthentication=

但如果我之後回答“是”或“否”,我就會遇到“主機金鑰驗證失敗”的問題

答案1

如果您socat方便的話,您可以使用手冊中的這個範例。

   (sleep 5; echo PASSWORD; sleep 5; echo ls; sleep 1) |
   socat - EXEC:'ssh -l user server',pty,setsid,ctty

          EXEC’utes an ssh session to server. Uses a pty for communication
          between socat and ssh, makes it ssh’s controlling tty
          (ctty), and makes this pty the owner of a new process group 
          (setsid), so ssh accepts the password from socat.

答案2

最好使用公鑰/私鑰身份驗證,但如果您仍然想在純文字腳本中使用密碼,我會使用lftp.這是一個很棒的客戶端,允許 ftp、sftp、ftps 連接,您只需要使用「此處文件」即可完成整個事務:

lftp sftp://your.destination.sftp -u yourUser,YourPassword << fin
    get yourfile
    bye
fin

答案3

您可以使用使用者名稱、密碼和 destip 嘗試下面的 sftp 腳本。

#!/usr/bin/expect
spawn sftp username@destip
expect "username@destip's password:"
send "passwd\n"
expect "sftp>"
send "get filename\n"
expect "sftp>"
send "bye\n"

答案4

Sftp 可以在沒有密碼的情況下使用

pubkey auth = very safe strong encryption
kerberos = need server,encryption is not strong

否則使用期望發送密碼,警告!使用 ps 可以看到該通行證,因此該解決方案完全不安全。

相關內容