-i 옵션 없이 scp 명령을 사용하면서도 개인 키를 찾는 방법

-i 옵션 없이 scp 명령을 사용하면서도 개인 키를 찾는 방법

나는 win2008 상자에 로그인했고, scp개인 키가 win2008 상자에 있는 디렉터리를 가리키는 -i 옵션을 사용하여 실행했습니다.

scp -i "cygdrive/c/users/userid/privkey..." user@linux:/dirA/dirB/* .

win2008 상자에서 이 명령을 실행하면 Linux 상자에 로그인되고 키가 일치하며 파일이 win2008 상자로 전송됩니다. 키를 지정하지 않으면 비밀번호를 묻는 메시지가 나타납니다.

ssh-keygen을 사용하여 win2008 상자에 키를 생성했습니다. 공개 키 아래의 Winsshd 설정에 Linux 키를 추가했습니다. 그런 다음 ssh-keygen에서 키를 가져와 Linux 상자에 넣었습니다.

scp 명령이 키를 찾는 위치는 어디입니까? scp키를 매개변수로 전달하지 않고 win2008 상자에서 어떻게 실행할 수 있나요 ?

답변1

귀하의 질문을 올바르게 이해했다면 몇 가지 옵션이 있습니다 ...

  1. 여기에 설명된 대로 SSH에 대해 수행한 것과 동일한 방식으로 기본 ID 파일 위치를 설정합니다...https://stackoverflow.com/questions/84096/setting-the-default-ssh-key-location

  2. 또는 scp다음과 같이 수정자를 포함하도록 명령에 별칭을 지정하십시오.alias scp='scp -i /path/of/keyfile'

둘 다 작동해야 하지만 옵션 2보다 옵션 1을 권장합니다. 이 방법이 더 올바른 방법입니다.

답변2

나만의 답을 찾은 것 같아요. 분명히 scp는 id_dsa라는 이름의 개인 키 파일을 찾고 있으며 .ssh 디렉토리에 있는 파일을 원합니다. Cygwin 디렉토리 구조(퍼즐의 또 다른 핵심 부분)에서 home/.ssh를 찾고 id_dsa라는 이름의 개인 키 파일을 추가하고 -i 옵션 없이 scp 명령을 실행하면 작동했습니다. 이 문제를 해결할 수 있도록 '스마트'한 느낌을 보내주신 모든 분들께 감사드립니다. 더 이상 당황하지 마세요! 나는 여기에 제시된 모든 제안을 좋아합니다. 빠른 피드백에 감사드립니다.

관련 정보