본문 바로가기

Compute

[Tip] EC2 터미널 접속하는 4가지 방법 알아보기

반응형

안녕하세요 서후아빠입니다. ^_^
이번 세션은 EC2 접속하는 방법 4가지에 대해서 간단히 알아보도록 하겠습니다

개인적으로는 4가지 모두 적절하게 혼합하여 사용하는 것이 좋을 것 같습니다. 키 페어가 기본이지만 키 페어는 관리도 쉽지 않고, 분실 시 재발급 과정이 어렵기 때문에 다른 대안이 필요합니다. 패스워드로 접근하는 방식의 경우는 보안상 주의가 필요하며, 패스워드 분실 및 유출에 따른 대안이 필요합니다. 


키 페어로 접속

가장 일반적인 방법으로 인스턴스 생성  시 함께 생성된 키 페어를 터미널에 등록하여 접속하는 방법

구분 Remode host Specify username Port User private key
1 인스턴스 공인 IP 입력 접속계정 입력 22 인스턴스 생성  시 함께 생성된 키 페어 경로

MobaXterm으로 SSH 접속 시 설정 내용 콘솔에서 EC2 인스턴스 연결

관리 콘솔에서 EC2 인스턴스 연결

임시 SSH 키 생성해서 EC2로 밀어넣어 연결하므로 키 페어 불필요

IAM 인증 방식, 연결 기록만 CloudTrail로 감사 가능

인스턴스에 별도 에이전트 설치 필요  

# Amazon Linux 2 경우
sudo yum install ec2-instance-connect

# Ubuntu 경우
sudo apt-get install ec2-instance-connect

연결 방법 : EC2 > Instance > 인스턴스 선택 > Connect > Connecting to EC2 Instances (tab) > Connect

SSH 접근 시 AWS 내부적으로 Source NAT 처리되므로 Origin Source IP를 허용하더라도 접근되지 않습니다. 

관리 콘솔에서 Session Manager로 연결

API 기반으로 키 페어 불필요

IAM 인증 방식, 연결/세션 기록 CloudTrail/CloudWatch로 감사 가능

인스턴스에 별도 에이전트 설치 필요

sudo yum install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
sudo systemctl status amazon-ssm-agent

IAM 권한 추가 : EC2 > Instance > 인스턴스 선택 > Security (tab) > IAM Role 선택 > Add permission > AmazonEC2RoleforSSM 

연결 방법(1) : EC2 > Instance > 인스턴스 선택 > Connect > Session Manager (tab) > Connect

연결 방법(2) : AWS Systems Manager > Session Manager > Session ID 체크 > Session Start

목록이 보이지 않으면 잠시 대기, 세션을 강제로 닫고 목록이 보이지 않으면 "세션 시작" 클릭하면 보입니다.

Amazon Linux는 AmazonEC2RoleforSSM을 허용한 IAM Role을 적용하고, EC2를 재부팅하면 SSM Agent를 자동설치됩니다.

관리 콘솔에서 EC2 직렬 콘솔로 연결

IAM 인증+Root Password 방식, 연결 기록만 CloudTrail로 감사 가능

계정 단위 활성화+OS Password 설정 후 사용 가능

특정 인스턴스 타입/리전에서만 사용 가능(ex : t2시리즈 미지원)

직렬 콘솔(=서버에 키보드 연결하여 보는 상황)이므로 부팅 및 네트워크 문제에 대해 근원적인 접근과 해결 가능

# 계정(user, root) Password 설정 
passwd 계정명
New password:*********
Retype new password:*********

# 계정(user, root) 직접 접속 활성화 
sudo vi /etc/ssh/sshd_config
PasswordAuthentication yes
PermitRootLogin yes

# 적용
sudo systemctl restart sshd.service

기능 활성화 : EC2 > Instance > 인스턴스 선택 > Connect > EC2 serial console > Manage access > EC2 Serial Console Access(permit) > update

연결 방법 : EC2 > Instance > 인스턴스 선택 > Conncect > EC2 serial console > Connect > ID/PW로 접속

인스턴스 재부팅 명령어 실행 시 부팅 과정 모두 확인되기 때문에 디버깅을 위해서는 필히 설정해 놓는 것을 권고드립니다.
다만, 패스워드로 접근하는 것이기 때문에 패스워드 유출에 따른 보안 문제에 대한 방안을 마련해 놓으시기를 바랍니다.


반응형