-
728x90
이번 글에서는 생성한 인스턴스에 접속하는 방법을 알아보려 한다.
우리는 인스턴스를 생성할 때 우분투라는 리눅스가 인스턴스에 설치되도록 설정했다.
그럼 해당 인스턴스가 AWS의 인스턴스이던 데이터센터의 서버이던 리눅스에 접속할 수 있는 방법은 같다.
SSH 프로토콜을 가지고 접속한다.
그럼 SSH 프로토콜은 어떤 프로토콜인지 먼저 이해해야겠다.
물론 SSH 프로토콜을 몰라도 정해진 명령어를 실행해주면 인스턴스에 접속하는데 아무 문제없다.
하지만 프로토콜이 뭔지 아는데 시간이 오래 걸리지 않는다.
그리고 내가 사용하는 프로토콜에 대해 어느 정도 지식을 갖추고 있는 것이 좋을 것 같아서 살짝 알아보고 넘어가자.
SSH는 Secure Shell Protocol의 약자이다. 직역하면 보안적인 쉘 프로토콜이란 의미이다.
이 프로토콜은 데이터 전송이나, 원격 접속을 할 때 사용된다.ssh -i <키파일> <계정>@<서버 IP>
그리고 기본적으로 프로토콜들은 컴퓨터의 포트를 사용해서 접속을 한다.
우리가 흔히 사용하는 HTTP 포트는 80번 이다.
그리고 SSH 프로토콜의 기본 포트는 22번이다.
그럼 접속하려고 하는 인스턴스의 22번 포트가 열려 있어야 한다.
인스턴스에 22번 포트가 외부에서 접속할 수 있도록 열려있는지 확인해보자.인스턴스를 선택하고 보안 탭을 클릭하면 보안 그룹을 볼 수 있다.
이 보안 그룹이 인스턴스의 포트를 제어하는 기능을 한다.
보안그룹 상세정보를 보면 인바운드 규칙, 아웃바운드 규칙이 있다.
인바운드 규칙이 외부에서 내부로 접속하는 규칙이다.
SSH 프로토콜을 이용해서 인스턴스로 접속하기 위해서는 위와 같이 인바운드 규칙에 22번 포트가 열려 있어야 한다.
그럼 인스턴스에서 22번 포트가 오픈되어 있는 것은 확인이 되었다.
그러면 이제 내 컴퓨터에서 SSH 프로토콜을 사용할 수 있는지 체크해 봐야 한다.
SSH 프로토콜은 맥, 리눅스에는 기본으로 사용할 수 있다.
하지만 윈도에서는 추가 설치를 해주어야 한다.
SSH 원격 서버 접속 방법에는 패스워드를 사용하는 방법과 키 파일을 사용하는 방법이 있다.
하지만 AWS에서는 패스워드를 사용하는 방법은 기본으로 지원하지 않는다.
서버에서 SSH 설정을 수정해서 사용할 수는 있다.
패스워드 접속을 사용하지 않는 이유는 패스워드가 유출될 수 있어 보안에 좋지 않기 때문이다.
그래서 웬만하면 키파일 접속을 권장한다.
키 파일이 동작하는 원리를 잠깐 살펴보자.
AWS에서 인스턴스 생성 시 다운로드한 파일은 Private 키 파일이다.
해당 파일의 내용을 보면
Private키 파일은 RSA 암호화 방식으로 암호화되어 있고 서버에 등록되어 있는 Public 키를 RSA 암호화했을 때
Private키와 일치하면 제대로 된 키로 인정되게 된다.
그럼 서버에 접속해보자.
ubuntu 리눅스를 설치했기 때문에 계정은 ubuntu이고, 서버 IP는 AWS 웹 콘솔에서 인스턴스 리스트에서 볼 수 있다.
그럼 이제 접속해 보자.$ ssh -i .\aws-go.pem ubuntu@54.180.99.61 The authenticity of host '54.180.99.61' can't be established. RSA key fingerprint is 2f:e1:a7:bd:e4:56:53:xx:xx:xx:xx:xx:xx:xx:xx:xx. Are you sure you want to continue connecting (yes/no)?
최초 접속 후에 fingerprint에 관련된 체크 문구를 볼 수 있다.
이 부분은 내 컴퓨터에서 원격 서버에 최초 접속 시에 체크하는 것이기 때문에 yes를 타이핑하고 엔터를 치면 접속되게 된다.접속이 되었다. 일단 접속이 되었기 때문에 성공이다!!
사실 처음에는 접속하나 하는 것조차 쉽지 않지만 계속 사용하다 보면 익숙해질 것이다.
그리고 AWS에서는 웹 콘솔에서 간편하게 인스턴스에 접속할 수 있도록 지원하고 있다.인스턴스 리스트에서 원하는 인스턴스를 체크한 후 연결 버튼을 클릭한다.
그리고 사용자 이름을 지정하고 연결 버튼을 클릭하면 내 컴퓨터에서 연결하지 않더라도 웹에서 바로 연결된다.
이 기능을 이용하면 키 파일이 없는 다른 컴퓨터에서 작업을 하거나,
간혹 가다가 회사에서 SSH 접속이 막혀있을 때 사용할 수 있다.
아래의 두 가지 명령어는 파일을 전송하는 명령어이다.
이 부분도 연습해보면 유용하게 쓰일 것이다.scp <전송파일> -i <키파일> <계정>@<서버 IP>:<서버저장 위치>
sftp -i <키파일> <계정>@<서버 IP>
728x90'클래스 > 초급' 카테고리의 다른 글
클라우드 스토리지 파일 호스팅 (0) 2022.03.06 클라우드 스토리지 사용해보기 (0) 2022.03.03 인스턴스 고정 IP 지정 (0) 2022.02.23 인스턴스 정보 (0) 2022.02.22 인스턴스 생성 (0) 2022.02.16