EC2 Instance Connect 사전 요구사항
EC2 Instance Connect 사전 요구사항
EC2 Instance Connect를 설치하고 사용하기 위한 사전 요구사항을 정리했어요. 인스턴스에 EC2 Instance Connect 설치, 네트워크 연결성 보장, EC2 Instance Connect 프록시로의 아웃바운드 트래픽 허용, 인바운드 SSH 트래픽 허용, 권한 부여, SSH 클라이언트 설치, 그리고 사용자 이름 요구사항을 충족해야 합니다.
출처: 문서
본문
EC2 Instance Connect를 설치하고 사용하기 위한 사전 요구사항은 다음과 같아요.
- EC2 Instance Connect 설치
- 네트워크 연결성 보장
- EC2 Instance Connect 프록시로의 아웃바운드 트래픽 허용
- 인바운드 SSH 트래픽 허용
- 권한 부여
- 로컬 컴퓨터에 SSH 클라이언트 설치
- 사용자 이름 요구사항 충족
EC2 Instance Connect 설치하기 (Install EC2 Instance Connect)
EC2 Instance Connect로 인스턴스에 연결하려면 인스턴스에 EC2 Instance Connect가 설치되어 있어야 해요. EC2 Instance Connect가 사전 설치된 AMI로 인스턴스를 시작하거나, 지원되는 AMI로 시작된 인스턴스에 EC2 Instance Connect를 직접 설치할 수 있습니다. 자세한 내용은 Install EC2 Instance Connect on your EC2 instances를 참고하세요.
네트워크 연결성 보장하기 (Ensure network connectivity)
인스턴스는 사용자가 인터넷이나 인스턴스의 프라이빗 IP 주소를 통해 인스턴스에 연결할 수 있도록 구성될 수 있어요. 사용자가 EC2 Instance Connect로 인스턴스에 연결하는 방식에 따라 다음 네트워크 액세스를 구성해야 합니다.
- 사용자가 인터넷으로 인스턴스에 연결한다면 인스턴스에 퍼블릭 IPv4 또는 IPv6 주소가 있고, 인터넷으로 가는 경로가 있는 퍼블릭 서브넷에 있어야 해요. 기본 퍼블릭 서브넷을 수정하지 않았다면 IPv4에 대해서만(IPv6에는 아님) 인터넷 경로가 포함됩니다. 자세한 내용은 Amazon VPC User Guide의 Enable VPC internet access using internet gateways를 참고하세요.
- 사용자가 인스턴스의 프라이빗 IPv4 주소로 인스턴스에 연결한다면, 사용자가 인스턴스의 프라이빗 IP 주소에 도달할 수 있도록 AWS Direct Connect, AWS Site-to-Site VPN, 또는 VPC peering 같은 프라이빗 네트워크 연결을 VPC에 설정해야 해요.
인스턴스에 퍼블릭 IPv4 또는 IPv6 주소가 없고 위처럼 네트워크 액세스를 구성하고 싶지 않다면, EC2 Instance Connect 대신 EC2 Instance Connect Endpoint를 고려할 수 있어요. EC2 Instance Connect Endpoint를 사용하면 인스턴스에 퍼블릭 IPv4 또는 IPv6 주소가 없어도 SSH 또는 RDP로 인스턴스에 연결할 수 있습니다. 자세한 내용은 Connect to your Linux instance using the Amazon EC2 console을 참고하세요.
EC2 Instance Connect 프록시로의 아웃바운드 트래픽 허용하기 (Allow outbound traffic to the proxy)
Amazon EC2 콘솔로 인스턴스에 연결하면 브라우저가 리전별 엔드포인트의 EC2 Instance Connect 프록시 서비스에 포트 443으로 WebSocket 연결을 설정해요.
엔드포인트 형식은 파티션에 따라 달라집니다.
- 상용 AWS 리전과 AWS GovCloud(US) 리전은 엔드포인트 형식:
prod.region.oneclickv2-proxy.ec2.aws.dev - 중국 리전은 엔드포인트 형식:
prod.region.oneclickv2-proxy.ec2.a2z.org.cn
다음은 각 파티션의 엔드포인트 예시예요.
- US East(N. Virginia) 리전:
prod.us-east-1.oneclickv2-proxy.ec2.aws.dev - China(Beijing) 리전:
prod.cn-north-1.oneclickv2-proxy.ec2.a2z.org.cn
Note
브라우저가 이 엔드포인트에 도달할 수 있어야 해요. 방화벽이나 VPN이 연결을 차단하면 연결이 실패합니다.
인바운드 SSH 트래픽 허용하기 (Allow inbound SSH traffic)
Amazon EC2 콘솔로 인스턴스에 연결할 때
사용자가 Amazon EC2 콘솔로 인스턴스에 연결하면 인스턴스에 도달하도록 허용해야 하는 트래픽은 EC2 Instance Connect 서비스에서 오는 트래픽이에요. 이 서비스는 AWS가 prefix list로 관리하는 특정 IP 주소 범위로 식별됩니다. EC2 Instance Connect 서비스에서 오는 인바운드 SSH 트래픽을 허용하는 보안 그룹을 만들어야 해요. 이를 구성하려면 인바운드 규칙에서 Source 옆의 필드에 EC2 Instance Connect prefix list를 선택하세요.
AWS는 각 리전에 대해 IPv4와 IPv6 주소용으로 다른 관리형 prefix list를 제공합니다. EC2 Instance Connect prefix list의 이름은 다음과 같아요(region을 리전 코드로 교체).
- IPv4 prefix list 이름:
com.amazonaws.region.ec2-instance-connect - IPv6 prefix list 이름:
com.amazonaws.region.ipv6.ec2-instance-connect
보안 그룹 생성 방법은 Task 2: Allow inbound traffic from the EC2 Instance Connect service to your instance를 참고하세요. 자세한 내용은 Amazon VPC User Guide의 Available AWS-managed prefix lists를 참고하세요.
CLI 또는 SSH로 인스턴스에 연결할 때
인스턴스와 연결된 보안 그룹이 내 IP 주소 또는 네트워크에서 포트 22의 인바운드 SSH 트래픽을 허용하는지 확인하세요. VPC의 기본 보안 그룹은 기본적으로 들어오는 SSH 트래픽을 허용하지 않아요. 런치 인스턴스 마법사가 만든 보안 그룹은 기본적으로 들어오는 SSH 트래픽을 허용합니다. 자세한 내용은 Rules to connect to instances from your computer를 참고하세요.
권한 부여하기 (Grant permissions)
EC2 Instance Connect로 인스턴스에 연결하는 모든 IAM 사용자에게 필요한 권한을 부여해야 해요. 자세한 내용은 Grant IAM permissions for EC2 Instance Connect를 참고하세요.
로컬 컴퓨터에 SSH 클라이언트 설치하기 (Install an SSH client)
사용자가 SSH로 연결한다면 로컬 컴퓨터에 SSH 클라이언트가 있는지 확인해야 해요.
사용자의 로컬 컴퓨터에는 대부분 기본적으로 SSH 클라이언트가 설치되어 있을 가능성이 높아요. 명령줄에 ssh를 입력해 SSH 클라이언트가 있는지 확인할 수 있습니다. 명령을 인식하지 못하면 SSH 클라이언트를 설치할 수 있어요. Linux 또는 macOS X에서 SSH 클라이언트를 설치하는 방법은 http://www.openssh.com을, Windows 10에서 설치하는 방법은 OpenSSH in Windows를 참고하세요.
사용자가 Amazon EC2 콘솔로만 인스턴스에 연결한다면 로컬 컴퓨터에 SSH 클라이언트를 설치할 필요가 없어요.
사용자 이름 요구사항 충족하기 (Meet username requirements)
EC2 Instance Connect로 인스턴스에 연결할 때 사용자 이름은 다음 요구사항을 충족해야 해요.
- 첫 번째 문자: 문자(A-Z, a-z), 숫자(0-9), 또는 밑줄(
_)이어야 해요. - 이후 문자: 문자(A-Z, a-z), 숫자(0-9), 또는 다음 문자
@ . _ -를 사용할 수 있어요. - 최소 길이: 1자
- 최대 길이: 31자