원격 서버 A에서 원격 서버 B로 이동하는 동안 권한이 거부되었습니다.

원격 서버 A에서 원격 서버 B로 이동하는 동안 권한이 거부되었습니다.

원격 서버에서 다른 원격 서버로 파일을 복사하려고 합니다. 서버 A를 통해 공개 키를 생성 ssh-keygen -t rsa하고 공개 키의 내용을 .ssh/authorized_keys서버 B의 파일 에 복사했습니다.

그러나 연결을 테스트하기 위해 SSH를 통해 서버 B에 연결하려고 하면 권한 거부 오류가 발생합니다. 뭔가 빠졌나요?

답변1

IdentityFile ~/.ssh/identity구성 파일에 플래그를 추가하여 문제를 해결할 수 있었습니다 . @Kamil이 언급했듯이 이는 ~/.ssh/identity개인 키가 로드되는 경로가 로컬 기본값으로 확인되지 않기 때문입니다. 지정된 경로를 ssh명시적으로 추가하면 IdentityFilessh가 개인 키를 확인할 수 있습니다.

답변2

#ssh-keygen

(입력하다)

(입력하다)

(입력하다)

#ssh-copy-id -i /root/.ssh/id_rsa.pub[이메일 보호됨](IP 서버 B)

테스트용: ssh[이메일 보호됨](IP 서버 B)


알아채다 서버 B에 기본이 아닌 SSH 포트가 있는 경우 이를 명령에 넣거나 SSH 파일을 변경합니다.

/etc/ssh/ssh_config

41번 라인에서

포트 22

변화

포트 X(portssh 서버 B)

답변3

SSH 프로토콜 버전 1의 기본값은 ~/.ssh/identity(현재 대부분 사용되지 않음)입니다. SSH 버전 2의 경우 ~/.ssh/id_rsa소유자의 개인 키 파일에 대한 일반적인 경로 또는 심볼릭 링크입니다. 그렇기 때문에id_rsa.pub에서 언급된SSH 복사 ID위의 예는SSH 키 생성기기본적으로 ~/.ssh/id_rsa개인 키와 공개 키를 사용하는 것이 좋습니다 ~/.ssh/id_rsa.pub.

관련 정보