[AWS] 5.EC2 리눅스 인스턴스 접속 방법
안녕하세요. 갓대희 입니다. 이번 포스팅은 [ EC2 리눅스 인스턴스 접속하기 ] 입니다. : )
이전 포스팅에서 [EC2 리눅스 인스턴스 설치]를 완료 하였다.
이제 해당 인스턴스에 어떻게 접속하는지 포스팅 하려 한다.

※ 리눅스는 SSH라고 하는 방식을 통해 원격제어를 한다.
- 윈도우는 SSH가 없기 때문에 ssh역할을 해줄 수 있는 프로그램을 설치해 줘야한다.
-이 중 무료이면서 가장 대표인 것이 putty이다.
- 상세 설명을 보려면 다음과 같이 Instance 설정 화면에서 우클릭, [연결] 클릭 시 볼 수 있다.

- 연결 방식은 [독립 실행형 SSH 클라이언트] 를 선택 하여 준다.

- 지금 부터 2가지 방법으로 원격으로 접속하는 방법을 작성하려 한다.
AWS가이드에 나와 있듯이 Windows용 Git을 다운로드 하여 접속 해보도록 하겠다.
- 다음 URL에서 Windows용 Git을 다운로드 한다. (기본 설정으로 설치까지 완료 한다.)
https://git-scm.com/download/win
- 자세히 읽어 봤다면 알겠지만 Git Bash를 Git의 일부로 설치하게 된 것이다.
- 바탕화면에서 마우스 우클릭, [ Git Bash Here ]를 선택하여 Git Bash 명령 프롬프트를 연다.

- SSH를 사용하여 인스턴스에 연결한다.
(Amazon Linux를 설치했다면 사용자 이름은 ec2-user이다.)
ex) 사용자 이름이 ec2-user, SSH 키는 위에서 지정한 디렉토리에 보관
- ssh -i {full path of your .pem file} ec2-user@{instance IP address}
- ssh -i 'c:\Users\yourusername\.ssh\MyKeyPair.pem' ec2-user@{IP_Address}

- 위의 명령어 실행 시 다음과 유사한 응답이 표시된다. (yes) 허용 처리한다.
The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (10.254.142.33)' can't be established. RSA key fingerprint is 1f:51:ae:28:df:63:e9:d8:cf:38:5d:87:2d:7b:b8:ca:9f:f5:b1:6f. Are you sure you want to continue connecting (yes/no)? yes |
- 그런 다음 인스턴스 환영 화면이 표시되면, AWS Linux 가상 머신에 연결 된 것이다.

※ AWS에서 제공하는 접속 가이드 에서 이러한 항목이 있다.
3. SSH가 작동하려면 키가 공개적으로 표시되지 않아야 합니다.
필요할 경우 이 명령을 사용합니다.
chmod 400 MyKeyPair.pem
- 내가 다운로드 한 KeyPair의 보안 설정을 살펴보자.
- MyKeyPair.pem 파일 우클릭 => 속성 클릭

- GitBash를 통해 해당 위치 이동 => ls -al 입력
- -rw 라고 시작되는데 KDH 사용자 기준으로 r : read 읽기, w : write 쓰기 권한을 의미한다.

- AWS 가이드에서 제시한 대로 chmod 400 MyKeyPair.pem 명령어 입력.
쓰기 권한이 빠진 것을 확인 할 수 있다.
구지 해당 비밀번호 파일을 변경할 필요가 없기 때문이다.

- 파일 속성창에서도 [읽기 전용]이 체크된 것을 볼 수 있다.

- 그리고 사실 Window에서도 나 이외의 다른 계정에서도 해당 파일에 접근할 필요가 없다면
접근할 수 있는 계정에서도 제외 시켜줘도 되지 않을까?
내 계정 이외의 다른 계정은 삭제 해 주는 것이 더 좋을 것같다.


지금은 공부차원에서 보고 있지만, 실제 운영시에는 위와 같은 보안 설정도 꼭 신경 쓰도록 하자.
2. SecureCRT
- SecureCRT 실행 - 신규 Session 추가 클릭
- Hostname : IP 입력
- Username : ec2-user

- 추가된 Session의 우클릭 => Properties 클릭
- SSH2 Tab에서 Authentication 리스트 중 PublickKey 선택, Properties... 클릭

- Use session publick key setting 클릭
- 본인의 KeyPair위치에서 KeyPair를 추가하여 주고 OK 클릭

- 세팅이 완료 되었으면 접속 클릭하면 다음과 같은 화면을 확인할 수 있다.

올바르게 접속 되었다.