안녕하세요! JS 관련 개발자 취직을 목표로 하고 있는 취준생 겸 학생입니다.
회고, error report, 공부한 내용 등 다양한 게시글을 작성할 계획이고
첫 게시글로 Nest 프레임워크로 만든 졸업작품 백엔드 서버를 배포해 보려고 합니다!
우선 AWS 콘솔에서 EC2 접속해 주고
인스턴스 시작을 클릭해 줍니다.
프로젝트 이름은 자유롭게 작명 하셔도 되지만, 애플리케이션 및 OS 이미지 설정 부분에서는 반드시 Ubuntu를 선택하셔야 합니다!
쭉 내려오면 인스턴스는 프리 티어에서 사용 가능한 t2.micro를 사용하고 키 페어를 생성해 봅시다.
키 페어 이름을 적고 생성을 클릭하면 (키 페어 이름).pem 다운로드 됩니다.
나머지 설정들은 default 값으로 진행하시면 됩니다. ( 네트워크 설정의 보안그룹은 추후에 진행합니다 )
세부적인 인스턴스 설정을 위해 생성된 인스턴스를 클릭해 주고
이제 AWS로부터 아이피를 할당받게 되는데 문제가 발생합니다.
그래서 Elastic IP (탄력적 IP)를 사용합니다
탄력적 IP 주소 할당 클릭
(흰색 부분은 제 IP라서 가렸습니다)
아까 생성했던 인스턴스를 선택하고 연결을 클릭
다시 인스턴스 화면으로 접속하면 탄력적 IP로 할당받았던 IP가 퍼블릭 IP로 변경되어 있습니다!
이제 배포된 서버에 접속할 클라이언트의 IP와 Port를 설정해 주기 위해 좌측 메뉴 > 네트워크 및 보안 > 보안 그룹
인스턴스를 생성할 때 기본 설정으로 생성했기 때문에 설정을 위해 보안 그룹 ID를 클릭해 줍니다.
보안 그룹 세부 정보가 표시되며 하단에 인바운드 규칙 / 아웃바운드 규칙 보이게 되는데
내 인스턴스 보안 그룹에 설정된 클라이언트만 포트를 열어 요청이 가능하게 하고 필요에 따라서 설정된 클라이언트만 응답을 받을 수 있도록 하는 것
( 우리 프로젝트를 같이 진행하는 클라이언트가 아닌 외부의 위협으로부터 지키는 느낌 )
규칙 추가를 클릭하고 빨간색 테두리 박스의 3가지를 추가해 줍니다.
우리가 생성한 인스턴스에 ssh(22번 포트)를 통해 접속할 예정이므로 ssh로 모든 IP에서 접근할 수 있도록 0.0.0.0/0, ::/0 설정을 해줍니다.
( 사실 내 IP만 연결하기 때문에 본인의 IP를 적는 것이 좋습니다. )
이제 EC2 설정은 끝입니다!
분량이 길어서 다음 게시글로 이어집니다~
좋은 정보 감사합니다!