서버/AWS (Amazon Web Services)

[AWS의 기본 04] EC2 인스턴스에 SSH로 접속하기

날개 2014. 7. 28. 19:16

지난회에서는 EC2 인스턴스를 만들었습니다.


이제 만들어진 인스턴스에 SSH로 접속해 보도록 합니다.



[4] EC2 인스턴스에 SSH로 접속하기


EC2 인스턴스에 SSH로 접속하는 것은 어렵지 않습니다. 일반적인 접속과 차이는 키파일(pem)만 입력하면 끝입니다.


EC2의 안내대로 하기만 하면 됩니다.


먼저 EC2 콘솔에 들어갑니다. (AWS 관리자 콘솔에서 EC2 선택하면 됩니다.)


좌측, Instances를 선택하면, 우측에 인스턴들의 목록이 나타납니다. 


접속할 인스턴스를 선택합니다. 하단 정보란에 보면, 중요한 것이 'Public DNS'와 'Public IP' 입니다. 이 둘중 하나의 주소로 접속하면 되는 겁니다.


 상단의 [Connect]를 클릭합니다.


아래와 같이 팝업이 뜨는데, 바로 접속할 수 있는 방법을 알려 주는 팝업입니다.


여기서 알려주는대로만 하면 인스턴스에 쉽게 접속 할 수 있습니다.

접속하는 방법은 크게, 두가지가 있는데, 하나는 'A standalone SSH client'즉, SSH 접속 프로그램(터미널, iTerm, Putty등등)을 이용하여 접속하는 것이고, 두번째는 'A Java SSH Client directly from my browser'라고 해서 웹브라우저상에서 자바로 접속하는 것입니다. 두번째 경우에는 PC에 자바 런타임이 설치되어 있어야 합니다.


저는 첫번째 방법을 사용합니다. (대부분 이런 작업 하는 분들은 전용 클라이언트 하나쯤은 사용 하리라고 생각합니다.)


SSH 클라이언트 프로그램을 실행합니다.


저는 MacOS 상에서 iTerm 이라는 터미널 프로그램을 사용합니다만, 리눅스 유저분들도 터미널을 열면 동일하게 작업하면 됩니다. (MacOS도 커널이 유닉스 기반이므로 터미널 상에서는 리눅스와 비슷합니다.)


윈도우 사용자의 경우는 많이 사용 하는 것이 Putty 인데, Putty를 사용하는 방법은 위 팝업에서 'connect using PuTTY')를 클릭하여 참고 하시기 바랍니다.

먼저 터미널 상에서 유저의 ssh 디렉터리로 갑니다. (또는 적당한 ssh를 저장할 디렉터리로 이동합니다.)


$ cd ~/.ssh

위 화면과 같이 다운로드 받은 pem 파일을 .shh 디렉토리로 복사합니다.

$ cp 'pem파일을 다운로드 받은 디렉터리와 파일명' ./


혹시 받은 파일이 xxxx.pem 이 아니라 xxxx.pem.txt 이면 xxxx.pem 으로 파일이름을 바꾸어 줍니다.

위 화면과 같이 chmod 명령어로 pem 파일 권한을 조정합니다.


$ chmod 400 xxxxxx.pem


그리고 ssh 명령으로 위 화면과 같이 EC2 인스턴스에 접속합니다.


$ ssh -i xxxxxxxx.pem ubuntu@xxx.xxx.xxx.xxx


위에서 ubuntu@뒤에 붙는 주소는 이 글의 맨 윗부분에 보여준 Public DNS 또는 Public IP를 적어 주면 됩니다.


위 화면과 같이 EC2 인스턴스에 접속 되었습니다.


이제 일반 우분투 리눅스 처럼 사용하면 됩니다.


참고로, 현재 인스턴스 상태에는 기본적인 우분투 리눅스 외에는 설치되어 있지 않습니다. (심지어 gcc 도 설치되어 있지 않더군요).


따라서 원하는 서비스를 하고자 하는데 필요한 소프트웨어는 직접 설치 해야 합니다.


참고로, EC2 인스턴스는 기본적으로 스토리지 인스턴스를 사용할 경우(여기서는 마이크로 인스턴스라서 EBS를 사용했지만) 인스턴스가 종료(Terminate)되면 데이터도 같이 날라간다고 보면 됩니다. (컴퓨터를 버리는 것과 같음)


그러므로 프로그램 설치나 설정을 완료 하고, AMI를 만들거나 스냅샷을 만들어야 합니다. (아직 설명은 안합니다만 개념을 알고 계시기 바랍니다.)


실제로 지워져서는 안되는 데이터는 EBS나 S3, RDB 등을 이용하게 됩니다.

(실질적으로 사용해 보면 AWS는 EC2만 가지고는 활용하기 어렵다고 봐야 되겠더군요.)


이글은 여기서 마칩니다.




(1) 이 포스팅은 2014.7.25 기준으로 작성되었습니다. 웹서비스는 서비스 제공 업체에 의해 언제든지 변경될 수 있습니다.

(2) 여기서 사용한 스크린 캡쳐 이미지들의 출처는 http://aws.amazon.com 웹사이트 입니다.