다시 공통 스레드를 게시하게 되어 죄송합니다. 비슷한 질문을 여러 개 읽었지만 왜 작동하지 않는지 아직 찾지 못했습니다. 그럼 제가 한 일을 설명하겠습니다. 클라이언트/서버가 아닌 다른 시스템에서 개인/공개 키 rsa 키 파일을 생성했습니다.
그런 다음 디렉터리를 만들고 ~/.ssh
클라이언트에 개인 키를 복사하여 적절한 소유자와 파일 권한을 설정했습니다. id_rsa
서버 측에서 연결하려는 사용자 아래에 다시 생성하여 ~/.ssh
공개 키를 인증 키에 넣습니다.
SSH 클라이언트 호스팅을 시도하면 키가 비밀번호 없이 생성되었음에도 불구하고 여전히 비밀번호가 필요합니다.
내가 명백한 것을 간과하고 있습니까?
또한 passwd가 필요한 세부 정보를 위해 서버 측의 ssh 로그를 확인하려고 시도했지만 /var/log/auth 또는 /var/log/ssh가 존재하지 않습니다. 기본적으로 활성화되어 있지 않습니까, 아니면 sshd 구성을 변경하고 서비스를 다시 시작해야 합니까?
CentOS 6을 사용하고 있습니다.
질문에 대답하려면: 서버 측에서 ~/.ssh:
rw-------. hdfs hadoop authorized_keys
rw-------. hdfs hadoop config
rw-------. hdfs hadoop id_rsa.pub
구성에는 다음이 포함됩니다.
Host *
StrictHostKeyChecking no
클라이언트의 ~/.ssh:
rw-------. hdfs hadoop authorized_keys
rw-------. hdfs hadoop config - the content is the same
rw-------. hdfs hadoop id_rsa
rw-r--r--. hdfs hadoop known_hosts
- 내 시도로 인해 발생한 것일 수도 있습니다.
답변1
CentOS 6에는SSH RSA 인증이 작동하지 못하게 하는 버그selinux가 적용 모드인 경우 필요에 따라 설정하십시오.
selinux를 비활성화하거나 다음 해결 방법을 시도해 보세요.
restorecon -R -v ~$USER/.ssh
답변2
이 두 줄은SSH Centos 운영 가이드나를 위해 문제를 해결했습니다.
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/authorized_keys
답변3
이것을 시도해 볼 수 있나요? 다음 행을 추가하십시오 ~/.ssh/config
.
Host remotehost
IdentityFile ~/.ssh/your_private_key