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를 사용하여 볼 수 있으므로 이 솔루션은 완전히 안전하지 않습니다.