ssh rsa key를 이용하여 password 없이 설정 하는 방법은 많이 공유되어 있다.
하지만, 특정 계정에 대해서 ssh key를 설정(authorized_keys)를 권한에 맞도록 설정했지만, 안되는 경우가 발생했다.
반나절 동안 구글링과 모든 Guide 대로 해봤지만, 되지 않았다..
그러다 확인한 내용... 기나긴 여정을 참조용으로 남긴다.
* ssh 접속 상세 로그 보기
: -v 옵션 사용하기, -vv / -vvv 까지도 사용가능함.
# ssh -v $user@host
위과 같이 시도하면, 어떻게 접속되는 내용을 debug로 알 수 있다.
만약 아래와 같이 에러가 난다면. 좀더 상세한 검토가 필요하다..
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: gssapi-keyex debug1: No valid Key exchange context debug1: Next authentication method: gssapi-with-mic debug1: An invalid name was supplied Cannot determine realm for numeric host address debug1: An invalid name was supplied Cannot determine realm for numeric host address debug1: An invalid name was supplied debug1: An invalid name was supplied debug1: Next authentication method: publickey ... debug1: Next authentication method: password $user@host's password: |
이런경우. 해당 접속하려는 서버의 auth log를 확인해야 한다.
관련로그는 다음과 같다.
/var/log/secure
or /var/log/auth.log
centos의 경우
# vi /var/log/secure
Jul 28 17:14:36 cl-EFSS-linux15 sshd[4043]: Authentication refused: bad ownership or modes for directory /home/user Jul 28 17:14:36 cl-EFSS-linux15 sshd[4043]: Authentication refused: bad ownership or modes for directory /home/user
|
위와 같이 나왔다.
해당 계정의 폴더 권한을 확인하니..
775로 설정되어 있었다..
푸하하하.
※ SSH 접속을 하려면, user 계정의 권한이 755를 초과한 설정은 안된다.
755이하로 설정하면 잘된다.
#chmod 755 $user
- 끝!