본문 바로가기
Knowledge/Cloud

[AWS] Private subnet에 속한 EC2 인스턴스에 session manager 서비스를 이용하여 SSH 접속 방법

by 미네마네모 2021. 2. 4.

이슈

An error occurred (TargetNotConnected) when calling the StartSession operation: {인스턴스 id} is not connected.

열심히 Session Manager 설정을 끝냈더니 Private Subnet에 속한 인스턴스 접속시 에러가 뜬다...

 

#1. VPC 옵션 확인

콘솔 접속 > VPC > 세션 매니저 활성화를 원하는 VPC의 상세 화면

  • DNS 호스트 이름 편집 - DNS 호스트 이름 활성화
  • DNS 확인 편집 - DNS 확인 활성화
  • 해당 옵션들이 선택되지 않으면 #3의 엔드포인트 생성이 불가능 합니다.

#2. 세션 매니저 전용 보안 그룹 생성

콘솔 접속 > VPC > 보안 > 보안 그룹 > 보안 그룹 생성

인바운드 규칙 예제

  • 보안 그룹 이름, 설명 입력
  • 세션 매니저 연결을 원하는 VPC 선택
  • 인바운드 규칙 추가 : HTTPS / TCP / 443 / VPC의 CIDR Block

#3. EndPoint 생성

콘솔 접속 > VPC > 엔드포인트 > 엔드포인트 생성

예제 화면
생성되는데 조금의 시간이 소요됩니다.

중요!!! EndPoint 3개를 만들어야합니다!!!!!!!!!
  • 서비스 선택
    • com.amazonaws.{리전}.ec2messages : com.amazonaws.ap-northeast-2.ec2messages
    • com.amazonaws.{리전}.ssm : com.amazonaws.ap-northeast-2.ssm
    • com.amazonaws.{리전}.ssmmessages : com.amazonaws.ap-northeast-2.ssmmessages
    • ssm : 세션 접속 관련
    • ec2messages, ssmmessages : std in / out 관련
  • 연결을 원하는 VPC 선택
  • 연결을 원하는 Private Subnet 선택
  • Enable for this endpoint 체크
  • #2에서 생성한 보안 그룹 선택

 

#4-1. aws CLI로 접속

CLI로 접속

# 접속 키 추가
aws configure

# session manager를 통해서 접속
aws ssm start-session --target {인스턴스 ID}

#4-2. session manager로 접속

콘솔 접속 > Session Manager > 세션 시작 > 원하는 인스턴스 선택 > 세션 시작

콘솔로 접속

그래도 접속이 안되면 인스턴스 재시작 한번 해보세요

잘안되면 댓글 주세요 😀

 


참고

aws.amazon.com/ko/premiumsupport/knowledge-center/ec2-systems-manager-vpc-endpoints/

댓글