개발 환경
문제
AWS EC2 서버 생성 이후,
로컬 pc (노트북) 에서 ssh로 EC2로 접근하려 하니
아래와 같은 Permision Error가 발생했다.
원인
키의 권한 줄때,
chmod +x (pem키이름).pem
너무 많은 권한을 준 것이 문제였다.
이 원인을 어떻게 발견했는가?
ssh-keygen -f (pem키이름).pem -y
서칭 중
접속이 잘되던 ssh 가 접속이 갑자기 안됩니다. Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Permission denied (publickey,gssapi-keyex,gssapi-with-mic). 란 메세지와 접속이 안되고 있습니다. 물론 pem 파일로 접속이 잘되었는데 오늘 갑자기 안됩니다. 외부에서 22,3306 모두 오픈해논상태입니다. 근데 330
repost.aws
나와 같은 에러를 발견했다.
c. EC2 인스턴스 내에 private key에 맞는 public key가 정확히 입력되어 있지 않은 문제
이 방법에서 key 생성 방식을 소개한다.
ssh-keygen -f (pem키이름).pem -y
결론적으로는,
pem키의 내용이 같았기에 해당 문제가 원인은 아니었다.
하지만 덕분에 pem키 자체의 권한에 문제가 있음 을 알게 되었다.
해결
pem키 권한을 적게 주자!
chmod 400 (pem키이름).pem
참고로,
[user] 100 = user에게 읽기권한만 있음 (2진수 100 = 10진수 4)
[group] 000 = 그룹에게 권한 없음
[other] 000 = 다른 사용자에게 권한 없음
즉,
파일 소유자만 읽기 권한을 갖는 것이다.
후기
pem키는 chmod 400으로 권한을 주자!!
귀찮아, chmod +x 해버리자~
라고 항상 써왔는데
이 로그에서
chmod +x가 0755 권한을 갖고있는지 몰랐다
파일 소유자는 읽기 + 쓰기 + 실행 권한 을,
그룹/다른 사용자는 읽기 + 실행 권한 을
갖고 있는 것이다.
그냥
chmod +x 하면 웬만한 권한 오류는 해결되니까
생각없이 가져다 썼었던걸 반성하게 되었다.
이번 기회로
올바른 권한을 한 번 더 생각하고, 올바를 권한을 주려고 노력해야겠다!
'클라우드 > AWS' 카테고리의 다른 글
[AWS] 2024 AWSome Day 온라인 컨퍼런스 참여후기 | 강연 정리 (1) | 2024.07.16 |
---|