키를 생성하여 대상에 복사했습니다.
ssh-keygen
ssh-copy-id username@hostname
키 위치를 기본값으로 두고 비밀번호를 설정하지 않았습니다.
ssh username@hostname
그 후 잠시 동안 비밀번호를 입력하지 않고 작업을 완료 할 수 있었는데 , 어떤 이유로 작동이 중단되었습니다.
답변1
공개 키 인증이 작동하지 않는 경우: 서버 측에서 홈 디렉터리( ~
), ~/.ssh
디렉터리 및 ~/.ssh/authorized_keys
파일이 모두 쓰기 가능한지 확인하세요.소유자에 의해서만. 특히, 그 중 어느 것도 그룹에서 쓸 수 없습니다(사용자가 그룹에 혼자인 경우에도). chmod 755
아니면 chmod 700
예, chmod 770
아니오.
문제가 발생한 경우 확인해야 할 사항:
- 를 실행할 때
ssh -vvv
많은 디버깅 출력을 볼 수 있습니다 . SSH를 사용하여 연결할 수 없는 이유를 묻는 질문을 게시하는 경우 이 출력을 포함하세요(호스트 이름과 사용자 이름을 익명화할 수 있음). - 가능하다면 일반적으로 이와
/var/log/daemon.log
유사한 서버 로그를 확인하십시오/var/log/auth.log
. - 공개 키 인증이 작동하지 않으면 권한, 특히 그룹 비트(위 참조)를 다시 확인하세요.
답변2
대상의 홈 디렉토리는 755 drwxr-xr-x
쓰기 가능 그룹으로 변경하면 775 drwxrwxr-x
비밀번호 없는 설정이 중단되었습니다.
답변3
권한이 올바른지 확인한 후 키를 다시 보내도 여전히 작동하지 않습니다.
그러던 중 나는 이전에 해본 적도 없고 누구도 언급하지 않은 일을 우연히 발견했습니다.
sshfs와 함께 -o allowed_other를 사용할 수 없습니다(fusion.conf에서 활성화된 옵션)
활성화한 후 sudo 없이 sshfs 명령을 실행했는데 모든 것이 완벽하게 작동했습니다.
답변4
newuser
RHEL/CentOS를 가정하고 사용자가 SSH를 통해 연결하려는 원격 서버에 대한 관리자 액세스 권한이 있다고 가정합니다.
newuser's
가지고 있는 것을 얻고 id_rsa.pub
준비하세요.
다음 단계를 따르십시오.
useradd newuser
mkdir /home/newuser/.ssh
vi /home/newuser/.ssh/authorized_keys
# copy newuser's id_rsa.pub into authorized_keys and save
chmod 640 /home/newuser/.ssh/authorized_keys
chmod 700 /home/newuser/.ssh/
chmod 700 /home/newuser/
chown newuser:newuser -R /home/newuser/
로그인을 시도했습니다 newuser
.