DevOps/AWS

Session Manger 를 이용하여 EC2에 연결하기

kyoulho 2023. 6. 18. 20:11

AWS Systems Manager에서는 Session Manager라는 기능을 제공하는데 사전에 SSM-Agent가 설치된 EC2 SSH를 연결할 수 있는 기능을 제공한다.

Session Manager를 사용하기 위해서는 EC2와 IAM, 그리고 로컬 컴퓨터에 각각의 준비가 되어있어야 한다.

 

SSM 특징

  • 인바운드 포트를 열거나 SSH 키를 관리할 필요 없이 관리형 인스턴스에 안전하게 연결한다.
  • Bastion Host 나 Key Pair 가 필요 없다.
  • SSH가 아닌 HTTP를 사용하여 접속이 가능하다.
  • 선택한 목적 또는 활동에 따라 AWS 리소스를 그룹화하여 중앙 집중식 관리가 가능하다.

 

주의

  • 인터넷으로 아웃바운드 허용해주어야 한다.
  • 퍼블릭 IP가 필요 없다고 하지만 퍼블릭 IP가 없으면 연결할 수 없다

 


 

EC2 설정하기

세션 매니저에 EC2를 연동하기 위해서는 SSM-Agent를 설치해야 한다.

AWS 문서를 참조하면 SSM-Agent가 기본적으로 설치되어 있는 AMI를 확인할 수 있다. 그 외에는 직접 설치해야 한다.

 

 

IAM 설정하기

EC2에 System Manager에 접근할 수 있는 권한을 부여한다.

  1. AmazoneSSMManagedInstanceCore 정책을 할당한 신규 롤을 생성
  2. EC2에 역할 부여
  3. 시작템플릿을 이용할 경우 고급 세부 정보 -> IAM 인스턴스 프로파일에서 역할을 부여

 

사용자에게 Session Manager에 접근할 수 있는 권한을 부여한다.

  1. 문서를 보고 필요한 권한을 부여한다.
  2. 역할 부여 후 로그아웃 필요

 

Private Subnet에서의 설정

잘 정리된 글이 있다. https://err-bzz.oopy.io/818008d7-1a3d-44f7-babd-6077378a46c7

 

AWS Solution 2 - Session Manager (Private 접근)

본 글은 제가 개인 블로그에 썼던 글을 재구성하여 쓴 글입니다

err-bzz.oopy.io

 

Session Manager 사용하기

Systems Manager의 관리형 인스턴스 항목에서 추가된 EC2를 확인할 수 있다.

EC2 목록에서 연결하고 싶은 EC2를 선택한 후 세션매니저로 연결한다.

 

 

 

 

'DevOps > AWS' 카테고리의 다른 글

CloudWatch  (0) 2024.07.15
OWASP Top 10 공격 패턴  (2) 2024.07.14
AWS Aurora DB  (1) 2023.06.18
[WAF] NestJS 애플리케이션 AWS에 배포하기 08  (0) 2023.04.25
[CodeDeploy] NestJS 애플리케이션 AWS에 배포하기 07  (0) 2023.03.31