Скрипт 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, вам нужно будет использовать только 'here document' для полной транзакции:

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

решение3

Вы можете попробовать приведенный ниже скрипт sftp, используя имя пользователя, пароль и destip.

#!/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, поэтому это решение совершенно небезопасно.

Связанный контент