[AWS] 최소 권한으로 EC2 Session Manager 역할 자동 생성하기

Yuchan Han·2026년 4월 3일

AWS

목록 보기
4/7

최소 권한으로 EC2 Session Manager 역할 자동 생성하기

AWS에서 EC2 인스턴스를 운영하다 보면 SSH 키페어 없이 Session Manager로 접속하는 경우가 많습니다.
인스턴스에 IAM Role을 제대로 붙이지 않으면 SSM 접속 자체가 불가능합니다.
이럴 때 Role과 Instance Profile을 최소 권한으로 한 번에 만드는 자동화 스크립트가 편리합니다.
이번 글에서는 해당 스크립트를 활용해 전체 과정을 직접 만들어봅니다.


IAM Role이 필요한 이유

EC2 인스턴스는 IAM 정책을 직접 연결할 수 없습니다.
Instance Profile을 통해 Role을 붙여야만 권한이 적용됩니다.

SSM Session Manager 접속에는 AWS 관리형 정책 AmazonSSMManagedInstanceCore 하나면 충분합니다.
실습이나 대회 환경에서는 매번 콘솔에서 클릭하는 대신 스크립트로 빠르게 재현하는 것이 핵심입니다.


자동화 스크립트로 Role과 Instance Profile 생성하기

스크립트는 다음 작업을 한 번에 수행합니다.

  1. EC2 신뢰 정책으로 IAM Role 생성
  2. AmazonSSMManagedInstanceCore 정책 연결
  3. 동일 이름의 Instance Profile 생성
  4. Role을 Instance Profile에 연결

Role 이름은 AWSEC2SessionManagerRole로 고정합니다.

아래 명령어를 순서대로 실행합니다.

curl -fsSL "https://gist.githubusercontent.com/h053698/cd14aedb7dac3a5ff70090e37fe347bd/raw/create-ec2-ssm-role.sh" -o create-ec2-ssm-role.sh
chmod +x create-ec2-ssm-role.sh
./create-ec2-ssm-role.sh

실행 시간
보통 10초 이내에 완료됩니다.
이미 동일 이름의 Role이 존재하면 스크립트가 오류를 출력하므로 미리 확인합니다.


EC2 인스턴스에 Role 적용하기

Role 생성이 끝나면 인스턴스에 Instance Profile을 연결합니다.

aws ec2 associate-iam-instance-profile \
  --instance-id <EC2_INSTANCE_ID> \
  --iam-instance-profile Name=AWSEC2SessionManagerRole

검증 방법

생성 후 아래 항목을 순서대로 확인합니다.

순번확인 항목방법
1IAM Role 존재 여부IAM 콘솔 → Roles → AWSEC2SessionManagerRole 검색
2Instance Profile 연결IAM 콘솔 → Instance profiles → AWSEC2SessionManagerRole 확인
3SSM 접속 가능 여부EC2 콘솔 → 인스턴스 선택 → Actions → Connect → Session Manager

자주 하는 실수

실수증상해결 방법
정책만 만들고 Role 연결 생략SSM 접속 시 권한 오류Instance Profile에 Role 연결
EC2에 키페어만 설정Session Manager 탭이 비활성화Instance Profile 연결 후 재시작
리전/계정 혼동다른 계정의 Role이 연결됨현재 리전과 계정으로 다시 실행
profile
맛있는거먹고싶어요

0개의 댓글