min8282

[AWS] AWS SSM을 이용한 EC2 인스턴스 연결 (SSH 대체) 본문

Security/Cloud

[AWS] AWS SSM을 이용한 EC2 인스턴스 연결 (SSH 대체)

min8282 2025. 3. 7. 17:30

이번 글에서는 AWS Systems Manager Session Manager(SSM)을 이용하여 SSH 키 없이 EC2 인스턴스에 접속하는 방법을 알아봅니다. 이를 위해 IAM 역할과 정책을 설정하고, EC2 인스턴스를 생성한 후, SSM을 통해 원격 접속을 수행합니다.


1. SSM 세션 연결을 위한 IAM 역할 및 정책 설정

SSM을 사용하려면 EC2 인스턴스가 AWS Systems Manager와 통신할 수 있도록 IAM 역할을 할당해야 합니다. Amazon에서는 이를 위해 AmazonEC2RoleforSSM이라는 정책을 미리 제공하고 있습니다.

IAM 역할 생성

AWS 콘솔에서 IAM > 역할(Role)로 이동합니다.

역할 생성 버튼을 클릭합니다.

서비스 또는 사용 사례에서 EC2를 선택합니다.

권한 정책에서 AmazonEC2RoleforSSM을 선택합니다.

역할 이름을 SSM-Instance-msjwa로 설정합니다.

생성 버튼을 클릭하여 역할을 생성합니다.


2. EC2 인스턴스 생성

이제 IAM 역할을 적용한 EC2 인스턴스를 생성합니다.

EC2 인스턴스 설정

콘솔>EC2>EC2 생성

인스턴스 이름: my-instance-ec2-msjwa

Amazon Machine Image(AMI): Amazon Linux 2023

인스턴스 유형: t2.micro

키페어 설정: 키페어 없이 진행 (SSM을 이용하여 접속할 것이므로 필요 없음)

  • 네트워크 설정
    • VPC: myvpc
    • 서브넷: 첫 번째 퍼블릭 서브넷 (10.0.1.0/24)
    • 퍼블릭 IP 자동 할당: 활성화

  • 보안 그룹 설정
    • 새 보안 그룹 생성
    • 인바운드 규칙 삭제 (SSM을 통해 접속할 것이므로 SSH(22) 포트 열 필요 없음)

고급 세부 정보에서 IAM 인스턴스 프로파일에서 앞서 만든 SSM-Instance-msjwa 역할 선택

인스턴스 시작 버튼을 클릭하여 EC2 인스턴스를 생성합니다.

인스턴스 생성된 것을 확인

IAM 역할 확인

  • 인스턴스 생성 후 EC2 > 인스턴스 > 해당 인스턴스 선택
  • 세부 정보 > 보안 탭에서 IAM 역할이 정상적으로 연결되었는지 확인
  • 현재 인바운드/아웃바운드 규칙이 없음에도 원격 로그인 가능SSM을 이용한 접속 방식이 정상적으로 설정된 것

3. SSM Session Manager를 이용한 인스턴스 연결

SSM Session Manager 접속 방법

연결할 인스턴스 선택하고 연결 버튼 클릭

연결 방법에서 Session Manager 선택

연결 버튼을 클릭하면 웹 브라우저에서 SSM을 통해 터미널이 실행됨

연결 확인

터미널에서 다음 명령어를 실행하여 접속이 정상적으로 이루어졌는지 확인

uname -a # 운영체제 정보 확인 
id # 현재 로그인한 사용자 확인

 

id 명령어를 실행하면 ssm-user라는 계정으로 접속된 것을 확인할 수 있음 → SSH 키 없이 AWS SSM을 통해 원격 접속 성공!


4. 마무리: 인스턴스 종료

EC2 > 인스턴스에서 my-instance-ec2-msjwa 선택

인스턴스 상태에서 인스턴스 종료 클릭

 

 

여기까지 SSM을 이용하여 SSH 키 없이 EC2 인스턴스에 안전하게 접속하는 방법입니다.