본문 바로가기

CloudFormation15

[AWS] Private NAT Gateway Test (+ TGW, VPC Flow Log) https://aws.amazon.com/ko/about-aws/whats-new/2021/06/aws-removes-nat-gateways-dependence-on-internet-gateway-for-private-communications/ AWS, 프라이빗 통신을 위한 인터넷 게이트웨이에 대한 NAT 게이트웨이의 종속성 제거 이제, VPC에 인터넷 게이트웨이를 연결하지 않고도 Amazon Virtual Private Cloud(VPC)에서 NAT 게이트웨이를 실행할 수 있습니다. NAT 게이트웨이에 대한 인터넷 액세스를 제공하려면 인터넷 게이트웨이가 aws.amazon.com 이제 NAT GW를 IGW, EIP 없이 프라이빗한 용도로 사용할 수 있다고 한다...................? 도대.. 2021. 6. 16.
[AWS] Transit Gateway Multi Region 구축하기 for 행주 Transit Gateway 사용해보는 글의 마지막에서 2개 이상의 리전을 연결할 땐 각 리전별로 TGW를 만든 후 TGW끼리 연결하면 된다고 했다 그 과정을 간단한 실습을 통해 연습해보도록 하겠다 최종 아키텍처는 아래와 같다 시작! 1. 실습환경(VPC, EC2) 생성 - CloudFormation 이전 글의 실습에서 사용한 CloudFormation 파일을 좀 변형하여 실습에 필요한 VPC와 EC2를 생성하도록 하겠다 먼저 아래의 파일을 다운받자 그리고 원하는 리전 두 군데(본 포스팅에선 서울, 도쿄 사용)의 CloudFormation 스택을 생성해주자 ※ 버지니아, 오하이오, 캘리포니아, 오레곤, 도쿄, 서울만 가능 ※ 해당 리전에 Key Pair가 존재해야한다 (없으면 만들어두자) A.. 2021. 6. 15.
[AWS CloudFormation] Security Group Ingress 예제 (YAML) 참고로 Egress(OutBound)는 설정 안하면 0.0.0.0/0에 ALL로 열려있는게 Default다 1. ICMP 허용 Resources: [SG 리소스 이름]: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: Allow ICMP GroupName: [SG 이름] SecurityGroupIngress: - IpProtocol: icmp FromPort: -1 ToPort: -1 CidrIp: [허용할 IP/bit] VpcId: !Ref [VPC 리소스 이름] 2. 모든 TCP 트래픽 허용 Resources: [SG 리소스 이름]: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: A.. 2021. 6. 14.
[AWS WAF] #5 실습 마무리 : 로깅 확인 & 리소스 삭제 목차 1. 로깅 확인 2. 리소스 삭제 1. AWS WAF 로깅 확인 S3로 들어가서 waf-s3bucket-어쩌고의 버킷의 가장 최근 파일을 받아봤다 첫번째줄은 curl -i -H "x-value: bot" $waf_url 명령의 결과라서 x-value값이 bot이다 두번째줄은 curl -i -X POST -d ... 명령의 결과라서 메소드 형태가 POST이다 (파라미터 값은 안보임) 2. 리소스 삭제 순서 1) WAF Web ACL의 Associate AWS resources 탭에서 ALB와의 연결 해제 2) WAF Web ACL 삭제 3) S3 bucket 비운 후 삭제 (안비우면 삭제 안됨) (둘 다 지워야됨) 4) CloudFormation 스택 삭제 끝 WAF 실습 시리즈 #0 실습 전 준비 .. 2021. 2. 26.
[AWS WAF] #1 사전 리소스들과 WAF 구성 목차 1. 사전 리소스 구성 2. 만들어진 DVWA 확인 3. WAF Web ACL 구성 1. 사전 리소스 구성 위 템플릿 파일을 다운받아 CloudFormation 스택을 생성해보자 인스턴스 타입과 VPC 대역은 변경 가능하다 디폴트값으로 진행했을 때 생성되는 리소스들은 아래와 같다 준비된 환경에 WAF까지 구현한 아키텍처는 다음과 같다 2. 만들어진 DVWA 확인 스택 배포로 생성된 ALB의 DNS로 접속해보면 DVWA의 로그인 페이지로 접속된다 초기 ID : admin / 비밀번호 : password 왼쪽의 메뉴들 중 DVWA Security 탭으로 이동해 Security Level을 Low로 설정한 후 Submit을 해주자 취약점을 공격하기 쉬운 단계로 낮추는 것이다 (레벨별로 공격하는 방법이 다.. 2021. 2. 25.
[AWS] Transit Gateway 사용해보기 (+ VPC Peering과 다른 점) 서로 다른 VPC에서 사설 IP로 통신을 하기 위해선 VPC 피어링을 사용하면 된다 그러나, 두세개 정도가 아닌 훨씬 많은 VPC들을 전부 연결해주려면 너무 복잡하고 일이 많아진다 이럴 땐 Transit Gateway를 쓰면 한번에 라우팅을 관리할 수 있다 이러면 사실 VPC Peering을 왜 쓰냐고 할수도 있을텐데, Transit Gateway는 비싸다(...) 아무튼 Transit Gateway를 만들어보기 위해 VPC를 5개정도 만들어보겠다 스택을 생성할 때 마다 MainNumber만 알아서 다르게 해주면 자동으로 그에 맞는 VPC와 Subnet, EC2들이 생성된다 1. VPC 생성 아래와 같이 MainNumber 파라미터만 다 다르게 해서 생성해주자 2. 리소스 확인 Bastion 중 아무나에.. 2021. 1. 18.
[AWS CloudFormation] #7 Auto Scaling Group 만들기 ( + Launch Configuration, ALB ) >>진행한 실습 GitHub 이 실습은 아래 파일로 이미 생성된 vpc와 ec2를 가지고 진행된다 이 파일의 Fn::Select 함수와 Fn::GetAZs 함수는 공식문서로 확인해보자 만들어진 EC2는 웹으로 접속하면 이런 화면이 뜬다 (위 버튼들로 부하를 주고 꺼서 오토스케일링을 확인할 예정 - 해당 php 파일도 깃헙에 있음) 이 EC2의 AMI를 따서 만들어놓은 후 ASG를 진행하도록 하겠다 (AMI를 뜨는것도 CloudFormation으로 해보려 했는데 찾지 못했다ㅜ) 1. Parameter Parameters: Key: Description: KeyPair Type: AWS::EC2::KeyPair::KeyName VPC: Description: VPC Type: AWS::EC2::VPC::Id.. 2021. 1. 8.
[AWS CloudFormation] #6 IAM User, Policy 생성 >>진행한 실습 GitHub 1. IAM User 바로 만들기 AWS::IAM::User Resources: AdminUser: Type: AWS::IAM::User Properties: LoginProfile: Password: P@ssw0rd Policies: - PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Action: '*' Resource: '*' PolicyName: Admin UserName: Admin1 AdministratorAccess의 정책을 가져와봤다 2. IAM Policy를 만들어서 User에 붙이기 AWS::IAM::Policy Resources: AdminUser: Type: AWS::IAM::User Pro.. 2021. 1. 6.
[AWS CloudFormation] #5 RDS 생성하기 (for MySQL) >>진행한 실습 GitHub 기존 ec2 만든 실습에서 연장해서 진행했는데, VPC의 구성을 좀 바꿔야 했다 RDS는 서브넷 그룹을 만들어서 지정해야 하는데, 서브넷 그룹은 2개 이상의 가용영역의 서브넷들이 존재해야 한다 그래서 private subnet을 하나 더 만들어주고, 그에 맞게 parameter도 바꿔주었다 Parameters: AZprivate1: Description: AvailabilityZone for private Type: AWS::EC2::AvailabilityZone::Name AZprivate2: Description: AvailabilityZone for private Type: AWS::EC2::AvailabilityZone::Name PrivateSubnet1Cidr: D.. 2021. 1. 6.
[AWS CloudFormation] #4 mapping 사용하기 (EC2 AMI) >>진행한 실습 GitHub ec2 만든 실습에서 ami를 설정하는 부분을 좀 고쳐보겠다 지난번엔 파라미터만 사용해서, 디폴트 값이 있지만 다른 ami를 원하면 직접 복사해서 넣어야했다 이번엔 매핑을 사용해 Linux2 또는 Windows 2019 Base 둘 중 하나를 선택하면 해당 리전에 맞는 ami가 자동으로 설정되도록 해보겠다 Mappings: RegionMap: us-east-1: Linux2: ami-0be2609ba883822ec Window2019: ami-0229f7666f517b31e us-east-2: Linux2: ami-0a0ad6b70e61be944 Window2019: ami-0d5b55fd8cd8738f5 us-west-1: Linux2: ami-03130878b60947df.. 2021. 1. 6.