lftp를 사용하여 sftp 서버에 연결하고 있는데 "일치하는 비밀번호 없음" 오류가 발생하고 사용할 비밀번호를 지정해야 합니다.
sftp를 사용하여 연결하는 명령은 다음과 같습니다.
sftp -c aes256-cbc sftp://sftpserver:10
lftp를 사용하여 이 비밀번호를 어떻게 연결할 수 있나요? 비밀번호에 대한 정보나 사용할 암호화를 지정하고 lftp가 이를 ssh에 전달하도록 하는 방법을 찾을 수 없습니다. 나는 ssh에 전달할 수 있는 sftp 옵션 -o와 유사한 것을 찾고 있습니다.
답변1
읽고 man lftp
참조하십시오 set sftp:connect-program
. 여기에 사용 방법을 볼 수 있는 내 예(lftp용 쉘 래퍼)가 있습니다. 내 예에서는 점프 상자를 통해 lftp를 사용하여 sftp에 사용하고 있습니다.
...
sshargs="ssh -F ${tmpdir}/.ssh/config -J "
sshargs+="${JUMPBOX_USER}@${JUMPBOX_HOST}"
export LFTP_HOME=${tmpdir}
cat > ${tmpdir}/rc <<EOF
set sftp:connect-program ${sshargs}
EOF
lftp -c "
open -u ${WEBSERVER_USER},whatever sftp://${WEBSERVER_HOST}${DEST_DIR}
cd ${SRC_DIR} && mirror --dry-run -R --ignore-size -L --no-perms --no-umask
bye
"
답변2
대화형 작업의 경우 lftp의 첫 번째 명령으로 다음 명령을 입력하기만 하면 됩니다.
set sftp:connect-program "ssh -c aes256-cbc"
또는 다음과 같이 자동 로딩을 위해 이 명령을 rc 파일에 저장할 수 있습니다.~/.config/lftp/rc