book_lover 2024. 6. 30. 18:24

Virtual Private Cloud의 약자로 클라우드 내 논리적으로 독립된 섹션을 제공한다. 즉 독립된 가상의 클라우드 네트워크이다. IP대역, 인터페이스, 서브넷, 라우팅 테이블, 인터넷 게이트웨이, 보안 그룹, 네트워크 ACL 등을 생성하고 제어할 수 있다. 

 

  • VPC 생성
  • Subnet 생성
  • 인터넷 게이트웨이 생성
  • 인터넷 게이트웨이와 VPC 연결
  • 퍼블릭 라우팅 테이블 생성 및 서브넷 연결
  • 라우팅 테이블 라우팅 설정에 인터넷 게이트웨이 설정
  • 검증
    • EC2 인스턴스 생성
    • ssh연결 후 외부 "핑" 확인


프라이빗 서브넷 구성

  • 프라이빗 서브넷 생성

  • NAT 게이트웨이 생성 - 외부 인터넷 구간 통신
    퍼블릿은 인터넷 게이트웨이 / 프라이빗은 NAT 게이트웨이를 통해 통신
  • 프라이빗 라우팅 테이블 생성 및 서브넷 연결
  • 라우팅에 NAT 게이트웨이 설정
  • 프라이빗 서브넷에 EC2 생성으로 검증
#!/bin/bash

# 1. Update system packages
sudo yum update -y

# 2. Set password for root user
sudo passwd root <<EOF
qwer1234
qwer1234
EOF

# 3. Allow root login via SSH
sudo sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

# 4. Restart SSH service to apply changes
sudo systemctl restart sshd

# 5. (Optional) Allow password authentication (if not using key-based authentication)
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
sudo systemctl restart sshd

echo "Root login via SSH is now enabled."

 


putty 접근 안될 시 SSM으로 접근하기

https://yoo11052.tistory.com/116

 

[AWS] EC2에 SSM 으로 접속하기

만약에 Internet Gateway 와 NAT Gateway가 달려있지 않은 외부와 완전히 차단된 Private 서브넷에 생성된 EC2에 접속하고 싶다면 어떻게 하면 될까? Client VPN을 이용하는 방법도 있지만, 비용적으로 부담이

yoo11052.tistory.com

  • 보안그룹 https 열기-인바운드
  • IAM Role 생성SSM으로 접속하기 위한 권한은 AmazonEC2RoleforSSM, AmazonSSMFullAccess, AmazonSSMManagedInstanceCore 등 여러가지가 있는데 만약 최소한의 권한만 부여하고 싶다면 AmazonEC2RoleforSSM만 부여해주면 된다. SSM을 사용하기 위해서는 EC2에 SSM을 사용하기 위한 권한을 부여해야 한다.
  • Scurity group name을 지정해주고 VPC를 선택해준다. 여기서 중요한건 Inbound Rule에서 443(HTTPS) 포트를 열어줘야 한다는 것인데 이유는 SSM이 HTTPS를 사용하여 통신하기 때문이다.
  • endpoint 생성
    Private Instance에 SSM으로 접속할려면 3개의 Endpoint가 필요하다.
    • ssm : 세션 접속 관련
    • ec2messages, ssmmessages : std in / out 관련
    그 전에 Endpoint를 만들려면 VPC에서 DNShostnames를 활성화 해야한다.그 다음  DNS hostnames Enable 체크 박스를 클릭하여 활성화 해준 후 Save changes를 클릭해준다.
  • VPC로 들어가서 위에서 만든 VPC를 우클릭한 후 Edit DNS hostnames을 클릭한다. 

위에서 말한 3개의 Endpoint를 다 똑같은 옵션으로 설정해주면 된다.

일단 Service category에서 AWS services를 클릭한후 검색창에 위에서 말한 3개의 Endpoint

한번에 하나씩 만들어야된다.

  • ssm
  • ec2messages
  • ssmmessages

 

 

그 다음 본인이 만든 VPC와 AZ(가용 영역) 그리고 Subnet을 선택해준다.

그다음 Enbale DNS name을 체크해준다.

그 다음 아까 만든 Endpoint용 보안그룹을 선택하고 아래 정책에서 Full Access를 선택해준다.

다했다면 Create endpoint를 클릭해준다.

이와 같은 방법으로 3개를 만들어주면 된다.

 

참조사이트 :

https://yoo11052.tistory.com/116

 

[AWS] EC2에 SSM 으로 접속하기

만약에 Internet Gateway 와 NAT Gateway가 달려있지 않은 외부와 완전히 차단된 Private 서브넷에 생성된 EC2에 접속하고 싶다면 어떻게 하면 될까? Client VPN을 이용하는 방법도 있지만, 비용적으로 부담이

yoo11052.tistory.com

요약

  • IAM Role 생성- SSM으로 접속하기 위한 권한은 AmazonEC2RoleforSSM, AmazonSSMFullAccess, AmazonSSMManagedInstanceCore
  • VPC에서 DNShostnames를 활성화 
  • endpoint 3개 만들기
    • ssm
    • ec2messages
    • ssmmessages
  • endpoint 3개 연결할 보안그룹에 인바운드 https 열어주기