Melon-Shake / API

2 stars 1 forks source link

SSH를 이용한 EC2 연결 및 windows chmod 400 권한 제거 이슈 #18

Closed mews2000 closed 1 year ago

mews2000 commented 1 year ago

로컬 터미널에서 EC2를 연결하는 방법

image

스크린샷 2023-08-25 16-47-22

위와 같이 EC2 인스턴스를 생성했을때 키페어를 생성했을 것이고 키페어 파일은 생성과 동시에 자동으로 로컬 컴퓨터에 다운로드가 됩니다.

그럼 우선 chmod를 이용해 키페어 파일의 권한을 변경해줍니다.

chmod 400 melon_key.pem | ls -al | grep melon_key.pem
-r--------  1 park park      1674  8월 24 11:32 melon_key.pem


이렇게 키페어 파일의 유저 읽기 권한만 허용하고 나머지는 허용하지 않습니다. 이렇게 하지 않을 경우 SSH를 이용해 EC2에 접속할때 아래의 에러메세지가 뜨게 됩니다.


리눅스와 맥OS에서는 문제가 없었으나 wsl을 사용하는 일부 window에서 chmod 400 명령어가 제대로 듣지 않는 것을 확인했습니다. 이 경우에는

sudo vi /etc/wsl.conf

[automount]
options = "metadata"


이렇게 wsl.conf 파일에 위 [automount]에 metadata 옵션을 추가해줍니다. 혹은

sudo umount /mnt/c
sudo mount -t drvfs C: /mnt/c -o metadata

이렇게 언마운트 한 뒤에 metadata를 추가하여 다시 mount를 해줍니다. 주의* umount를 할 때 현재 경로가 umount하는 경로일 경우 문제가 발생하므로 현재 경로를 잘 보고 명령어를 입력해야 합니다.

이렇게 해도 안될 경우 window에선 직접 파일 옵션에 들어가 권한을 클릭해서 제거할 수 있습니다. 권한 변경이 끝나면 SSH 명령어를 입력해 EC2 인스턴스에 접근할 수 있습니다.

ssh -i "키파일.pem" 인스턴스ID