You have no controlling tty and no DISPLAY. Cannot read passphrase.
warning: Authentication failed.
Disconnected (local); authentication cancelled by user (Authentication cancelled by user.).
Disconnect reason 13, exit code = 77
scp: warning: ssh2 client failed to authenticate. (or you have too old ssh2 installed, check with ssh2 -V)
스크립트를 실행할 때 이 오류가 발생합니다. SSH는 서버 간에 두 가지 방식으로 작동합니다.
답변1
문제는 사용자 입력이 필요한 일부 인증 방법(귀하의 경우 개인 키를 해독하기 위한 비밀번호 또는 암호문)을 사용하고 있지만 프로그램이 시작되지 않았기 때문에 사용자 입력을 받을 수 없다는 것입니다. 그래픽 세션( ssh
비밀번호를 묻는 창 양식이 생성되는 것을 방지) 또는 터미널( ssh
대화식으로 비밀번호를 요청할 수 없음)에서.
ssh
이는 세션 열기를 테스트할 때 작동합니다. 이 경우 ssh
터미널에서 시작하므로 비밀번호를 얻는 데 문제가 없기 때문입니다.
tty를 제어하지 않고(예: cron 작업으로) 스크립트가 실행 중인 경우 비대화형 인증이 필요합니다. 예를 들어, 비밀번호가 없는 개인 키입니다. 물론 이는 다소 안전하지 않으므로 개인 키를 알고 있는 공격자가 서버에서 완전한 기능을 갖춘 셸을 얻는 것을 방지하기 위해 스크립트가 ssh를 통해 실행할 수 있는 명령 세트를 제한할 수 있습니다.