AWS 관련 인프런 강의를 수강하던 중 SSH 접속 시 permission denied 오류를 만났다.
처음 본 문제는 맥북에서 public vpc로 접속하려고 할 때 발생했다.
permission for [my pem file].pem are too open.
https://zamezzz.tistory.com/28 이분의 블로그에서 잘 배운 후 해결할 수 있었다
chmod는 총 3자리 숫자로 구성됨
첫번째 자리 숫자는 소유자 권한을 나타냄
- 4 = r (read), 읽기 권한
- 2 = w (write), 쓰기 권한
- 1 = x (execute), 실행 권한
두번째 자리 숫자는 그룹 권한을 나타냄
세번째 자리 숫자는 전체 권한을 나타냄
나와 같은 에러를 겪으신 이분의 TIL 정리를 보면
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for [내 pem 파일.pem] are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
이런 에러가 나셨고, 나 역시 동일했다.
chmod를 이해하고 나니 이제 무엇이 문제인지 이해가 가능하다
It is required that your private key files are NOT accessible by others
키파일 권한이 그룹 및 전체에게도 너무 열려있다는 의미의 에러
따라서 chmod를 통해 두번째, 세번째 자리 수를 0으로 만들어 주면 해결된다.
맨 앞자리는 무엇이든 상관이 없다.
터미널에 다음과 같이 입력해주면 해결 완료!
chmod 600 key-file.pem