AWS를 처음 사용할 때 가장 많이 하는 실수 중 하나가 바로 EC2 인스턴스 접속을 무조건 SSH 키페어로 해야 한다고 생각하는 것이야.
하지만 실제로는 **AWS Systems Manager(SSM)**을 이용하면 키페어 없이도 브라우저에서 바로 접속할 수 있고, 보안도 더 강력해져.

아래에서 SSM을 활용한 접속 과정과 필수 설정을 정리


1. SSM 접속의 장점

  • 키페어 분실 위험 없음
  • 22번 포트(SSH)를 열 필요가 없음 → 보안 강화
  • IAM 기반 권한 관리로 더 안전한 접근 제어
  • 브라우저 기반 Session Manager로 편하게 접속

2. SSM 사용 조건 정리

EC2가 SSM을 쓰려면 다음 3가지가 반드시 필요

① SSM Agent

  • Amazon Linux 2, Ubuntu 최신 버전은 기본 설치됨
  • 만약 설치 안 되어 있다면 아래 명령어로 가능
  •  
    sudo yum install amazon-ssm-agent -y sudo systemctl enable amazon-ssm-agent sudo systemctl start amazon-ssm-agent

② IAM Role 부착

EC2에 아래 정책을 가진 Role을 연결해야 함

  • AmazonSSMManagedInstanceCore

(콘솔 → EC2 → 인스턴스 선택 → 보안 → IAM Role 연결)

③ 네트워크 조건

  • 인터넷이 있거나
  • SSM용 VPC 엔드포인트가 존재해야 함

프라이빗 서브넷에서도 SSM 엔드포인트만 연결되어 있으면 접속 가능!


3. EC2를 SSM으로 접속하는 법

  1. AWS 콘솔 → Systems Manager → Session Manager
  2. “세션 시작” 클릭
  3. 인스턴스 선택 → Connect
  4. 브라우저 터미널이 열리면 끝

특별히 SSH 키도, 퍼블릭 IP도 필요 없다.


4. SSM 사용 시 자주 발생하는 오류 해결

🔸 1) 인스턴스 목록에 EC2가 안 보임

  • IAM Role에 AmazonSSMManagedInstanceCore 빠짐
  • SSM Agent가 실행 안 됨
  • 프라이빗 서브넷에 엔드포인트 없음

🔸 2) "세션 시작 실패"

  • CloudWatch Logs 권한 부족
  • SSM Agent 버전 오래됨
  • 보안그룹/라우팅으로 인해 SSM 서비스 접근 불가

🎯 5. SSM은 어떤 상황에서 쓰면 좋을까?

  • 운영 서버 SSH 차단하고 싶은 경우
  • 실습 환경에서 학생/팀원에게 개별 키 제공하기 싫을 때
  • Bastion 없이 내부 서버 접속해야 할 때
  • 로그 & 명령 실행을 중앙에서 관리하고 싶을 때
Posted by yongary
,