센트 오에스에서 공개키 인증으로 SSH 로그인이 안될 때

dev | 2013-03-16

새로 설치된 센트 오에스(CentOS) 서버에 공개키를 넣었는데도 SSH 로그인 할 때 마다 비밀번호를 물어봤다. 서버 인증에 대해서 잘 모르니 smoon에게 도움을 요청했다. 아래는 삽질하면서 알게된 내용이다.

우선 .ssh 디렉토리와 authorized_keys 파일의 권한을 확인해야 한다. .ssh0700, authorized_keys0600으로 설정되어 있어야 한다. 내 경우에는 group이나 others에 더 높은 권한이 허용되어 있었는데 이게 문제인지는 모르겠으나 0700, 0600으로 권한 설정을 다시 하니 문제가 해결 됐다.

서버에서 공개키 기반 인증이 허용되어 있어야 한다. 센트 오에스의 경우에는 /etc/ssh/sshd_config에 설정파일이 있는데 아래의 내용이 활성화되어 있는지 확인한다. 내 경우에는 모두 주석처리가 되어있었다.

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile     .ssh/authorized_keys

주석을 풀고 sshd를 재기동한다.

service sshd restart

처음에는 권한은 건드리지 않은 상태에서 주석만 풀고 재기동 했는데 작동이 안되었다. 스택오버플로우의 댓글을 읽다가 권한 설정을 다시 하니까 해결됐다는 글을 보고 나도 똑같이 해결했는데 권한이 더 많은데도 왜 작동을 안했었는지는 잘 모르겠다(보안상 권한이 너무 많아도 안되나?).

Comments

  • 세라비 2013-03-17

    권한이 많기 때문에 그런 것 맞아요.

  • bookworm 2013-03-23

    이게 OS 또는 버전에 따라 조금씩 다른 것 같더군요. 설정에 영향이 있는 것일 수도 있구요. 일단 기본적으로 0700 ~/.ssh/, 0600 ~/.ssh/authorized_keys는 기본인데 어떤 경우는 ~/. 가 0700 이어야 동작하는 경우도 있었습니다.

  • ㅇㅇ 2017-01-30

    service sshd restart 순서가 바꼈네요

  • 신현석 2017-01-31

    ㅇㅇ, 수정했습니다. 알려주셔서 고맙습니다.

  • 민이 2018-08-23

    centos6.5 에서는 권한 어떻게 줘야 하나요 7.0에서는 되는데 똑같이 6.5에서는 안되네요

  • 신현석 2018-08-24

    민이, 6.x에서도 파일 권한이 달랐던 것 같지는 않아요. 다른 설정 때문이지 않을까요?

  • 민이 2018-08-24

    사실 아만다 리눅스 백업이란걸 한는중이라서 ssh인증을 받으려고 하는데요 이게 아만다 계정으로 들어가서 하면 centos 6.5에서 자꾸 password를 물어 보드라구요 혹시 아만다 백업을 잘아시는지요

  • 신현석 2018-08-25

    아만다 백업은 잘 모르겠네요.

  • 배리 2022-05-04

    너무 감사합니다. 덕분에 패스워드 물어보지 않네요. 권한 문제일줄은.

Post a comment

:

: 공개 되지 않습니다. Gravatar를 표시 합니다.

:

: HTML 태그를 사용할 수 없습니다.