키를 생성하여 대상에 복사했습니다.
ssh-keygen
ssh-copy-id username@hostname
키의 위치를 기본값으로 유지하고 암호 문구를 설정하지 않았습니다.
그 후 잠시 동안 나는 ssh username@hostname
암호를 묻지 않고 할 수 있었고 어떤 이유로 든 작동을 멈췄습니다.
답변
공개 키 인증이 작동하지 않는 경우 : 서버 측에서 홈 디렉토리 ( ~
), ~/.ssh
디렉토리 및 ~/.ssh/authorized_keys
파일이 모두 소유자 만 쓸 수 있는지 확인하십시오 . 특히, 사용자가 그룹에 혼자있는 경우에도 그룹에 의해 쓰기 가능 권한이 없어야합니다. chmod 755
또는 chmod 700
괜찮습니다 chmod 770
.
문제가있을 때 확인해야 할 사항 :
ssh -vvv
많은 디버깅 출력을 보려면 실행 하십시오. ssh에 연결할 수없는 이유를 묻는 질문을 게시 할 경우이 출력을 포함 시키십시오 (호스트 및 사용자 이름을 익명화 할 수 있음).- 당신이 할 수있는 경우, 서버 로그를 확인 일반적으로
/var/log/daemon.log
하거나/var/log/auth.log
또는 유사한. - 공개 키 인증이 작동하지 않으면 권한, 특히 그룹 비트 (위 참조)를 다시 확인하십시오.
답변
대상의 홈 디렉토리는 755 drwxr-xr-x
입니다. 그룹 쓰기 가능으로 변경 775 drwxrwxr-x
하면 암호가없는 설정이 중단되었습니다.
답변
권한이 올 바르고 재전송 된 키를 확인한 후에도 여전히 작동하지 않습니다.
그런 다음 이전에 수행하지 않았으며 다른 사람이 언급하지 않은 내용을 발견했습니다.
sshfs와 함께 -o allow_other를 사용할 수 없습니다 (fuse.conf에서 옵션 사용 가능)
활성화 후 sudo없이 sshfs 명령을 실행하면 모두 완벽하게 작동했습니다.
답변
RHEL / CentOS를 가정 newuser
하고 사용자 가 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
로그인을 시도합니다.