pscp.pssh 명령을 사용하여 비밀번호 대신 개인 키를 사용하여 원격 서버에 파일을 복사하는 방법.
이것이 제가 사용하고 있는 명령이며 비밀번호 프롬프트가 표시됩니다. 도와주세요
pscp.pssh -h hosts.txt -l vipin -x "-o StrictHostKeyChecking=no -i vipin_rsa.pem" -Av example.txt /tmp/
몇 가지 질문에 대한 답변:
- 원격 서버에 공개 키가 있습니다.
- 명령을 실행할 때 비밀번호 프롬프트가 나타납니다.
- 개인 키는 명령을 실행한 디렉터리에 있습니다.
답변1
pscp.pssh
분명히이 프로젝트를 위한 병렬 SCP 도구입니다.해당 매뉴얼 페이지를 찾을 수 있습니다여기.
-A --askpass
비밀번호를 묻는 메시지를 표시하고 ssh에 전달합니다. 비밀번호는 키 잠금을 해제하거나 비밀번호 확인에 사용될 수 있습니다. 비밀번호는 상당히 안전한 방식으로 전송됩니다(예: 매개변수 목록에 표시되지 않음). 그러나 시스템의 루트 사용자가 비밀번호를 가로챌 수 있다는 점에 유의하십시오.
즉, pscp.pssh
비밀번호가 필요합니다.물어보라고 했기 때문에, 옵션을 사용하여 -A
이 작업을 수행하지 않으려면 옵션을 제거하십시오. 즉, 명령줄에서 옵션을 로 변경하십시오 -Av
.-v
hosts.txt
이 후에도 여전히 비밀번호 프롬프트가 표시되면 파일의 (아마도) 많은 호스트 중 키 인증을 거부하는 호스트 를 찾아야 합니다 .원격 서버의 로그 읽기sshd
키가 거부된 이유를 알아보세요 .
일반적인 원인은 원격 서버의 인증 키 파일에 대한 잘못된 권한입니다. 루트 이외의 다른 사용자가 자신의 키를 파일에 쓸 수 있는 경우 sshd
인증 키 파일이 변조되었을 수 있다고 가정하고 완전히 무시합니다. 그것. 이 경우 sshd
서버 로그의 로그 메시지는 어떤 파일이나 디렉터리에 잘못된 권한이 있는지 정확하게 설명합니다. 하지만 해당 정보는 아직 인증되지 않은(= 아직 적법한 것으로 입증되지 않은) 사용자에게는 전달되지 않습니다. ) 보안상의 이유로 이유 클라이언트입니다.