brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Dec 03. 2020

514.  보안 - 네트워크 ACL, 보안그룹

<1> 네트워크 ACL

<2> 보안그룹

<3>  트래픽 미러링

<4>  손상된 EC2 조치?

<5> VPC 피어링

<6> VPC 엔드포인트

<7> ELB 보안

<8> ACM

<9> 로그 모니터링 수집

<10>  CloudWatch

<11> AWS config

<12> Macie

<13> 로그

<14>  CloudWatch logs

<15>  VPC Flow Log

<16> ELB  로그 저장

<17> Kinesis 

<18>  분석 =   Athena 

<19>  전송 

<20> Site Ste VPN

<21>  소프트웨어 VPN

<22>   Client VPN

<23>   Direct Connect 개요

<24>  DDOS 방어?

<25> route53

<26>  WAF

<27> CloudFront

<28> Shield

<29> Firewall manager





<1> 네트워크 ACL


1

서브넷 단위 제어한다.


2

네트워크 ACL은 기본 오픈 되어 있다.


3

서브넷 전체에 대해 화이트 리스트나 블랙리스트의 트래픽에 대한 규칙을 주고자 할때 사용한다.


4

룰번호를 사용한다.


5

상태 비저장이다.

NACL는 들어오는것 따로, 나가는것 따로 추가 설정해줘야 한다.  나가는것 1024~65535 허용필요.

나가는것 80 허용하려면,  들어오는 1024~65535 허용필요.





<2> 보안그룹


1

인스턴트 단위로 제어한다.

상태 저장 기능


2

기본적으로 들어오는것은 막혀 있다.

나가는 것은 모두 허용되어 있다.


3

들어오는거를 설정하면 나가는거도 자동으로 된다.


4

모두 네트워크 인터페이스에 설정하는것이다.

EC2의 ENI 가 2개면 2개 보안그룹을 각각 설정할수 있다.


5

방어 순서?


라우팅 테이블 --->  NACL ---->  서브넷 ----------> 보안그룹 -----> 인스턴스




<3>  트래픽 미러링


네트워크 보안 이상 항목 / 위협 탐지

문제 해결




<4>  손상된 EC2 조치?


모범사례


1

ec2 describe-instance 로 인스턴스 정보 수집


2

ec2 create-tags 로  태그를 설정해서 관리


3

Autoscaling 그룹에서 인스턴스 제거   =  웹  SG그룹에서 제거 .

제가하지 않으면 LB 와 Autoscling과 연계되어 장애로 인지됨.

장애에 대한 사전 처리하고자 하는것임.


4

ALB에서 인스턴스 등록 제거 하기 = 장애에 대한 사전 처리하고자 하는것임.


5

인스턴스를 별도의 보안 그룹에 배치하여 격리 -   내 SSH만 허용하고 ANY 차단 보안그룹


6

Disable API  Termination속성을 사용하여 인스턴스가 실수로 종료가 되지 않도록 보호가능 = 분석을 해야 하는데 지우면 안된다.


7

손상된 EBS데이터 볼륨에 스냅셧 생성 =  새 EBS를 가지고  분석


8

메모리 덤프를 위해 인스턴스에 액세스


// 침해사고 발생시 대응 프로세스 정리 




<5> VPC 피어링


A VPC --- (Peering ) --- B VPC ----(Peering)-------C VPC


VPC는 라우터 기능을 할수 있는게 없다.

A VPC는  C로 갈수 없다.

VPC는 1:1로 직접 연결해야 통신이 된다.

A VPC가  C로 가려면  A - C 간 직접 Peering 해야 한다.




<6> VPC 엔드포인트


1

VPC에 엔드포인트를 제공해준다.

인터넷이 연결되지 않는 환경에서 프라이빗으로 연결가능


2

Cloudwatch 엔드포인트


3

인터페이스 엔드포인트 ?

보안그룹으로 엔드포인트를 제어할수 있다.

인터페이스 엔드포인트는 VPC 내에 IP를 받게 된다.

보안그룹으로 특정 EC2만 접속 하도록 제한 할수 있다.

인터페이스 엔드포인트는  IP를 사용하게 되므로 IP가 줄어든다.


엔드포인트의 ENI는 변경 된다.

ENI 보안그룹을 이름으로 넣어주어야 한다.

인터페이스 엔드포인트 정책으로 접근에 대한 차단으로  적용할수 있다.


4

게이트워이 엔드포인트 ?

s3 ,다이나모 dB   2가지가 있다.

게이트웨이와 연결하는 방식이다.


라우팅이 추가되는 방식이다.

생성하면 서브넷에 라우팅이 추가된다.

보안그룹을 사용하지 못한다.  IP로 제어가 안된다.

생성시 전체적으로 라우팅에 영향을 준다. 서비스 중에는 하지 않도록 하자.


엔드포인트 정책을 구현할수 있다.

S3로 가는것에 대해 제어 할수 있다.

버킷 정책에 VPC에서 오는것만 허용하겠다고 지정할수 있다.


Accesspoint  제어

https://aws.amazon.com/ko/blogs/korea/easily-manage-shared-data-sets-with-amazon-s3-access-points/




<7> ELB 보안


1

로드밸런서 자체에  TLS 종료기능이 있다.


2

ALB는 사용자 단위로  인증을 할수 있다. =특정 사용자는 허용 , 특정 사용자는 비허용 할수  있다.

인증 키를 넣을수 있다.




<8> ACM


1

인증서 발급

공인 및 사설 인증서 모두 관리함.

자동 갱신 된다. (아주 좋음)

인증서 손쉽게 배포함 (아주 좋음)

DNS인증받음 (10분 이내)




<9> 로그 모니터링 수집


1

Cloudwatch 로 로그 수집

Application log도 수집가능


2

AWS Config  사용,  규정 미준수 모니터링

변화에 대해 경고를 준다.


3

Amazon Macie  사용해 개인정보 모니터링 




<10>  CloudWatch


1

기본 제공 지표  제공

사용자 지정 지표로 실시간 모니터링 가능


2

IOT  장비가   CloudWatch로 메시지를 보내면 감지하게 하기 ?

심장박동이 120이상이면 

aws cloudwatch put-metric-data --namespace xxxxx --metric-name Health --dimension Check1=heart_rate --value 120

3

5분에 한번씩 보내보자!


4

로그수집

필터링 걸어 알람을 보냄


5

아키  ?


EC2 ---------------------  CloudWatch ------ cpu % 이상, 경보 --- SNS ----- 관리자

에이전트가 특정 경보를 읽어서   CloudWatch 에 전달 가능


6

Cloudwatch Event  ?

이벤트 ->   규칙 --> 어느 서비스에 보내겠다.

Event에서 Rule 만들고,  S3에서 오브젝트에 변경이 발생되면  , 타켓 서비스로 전달


아키?

EC2 상태 변경 ------   CloudWatch ------EC2 인스턴스 상태 변경 (Cloudwatch Event규칙)---- 람다 - 변경기록




<11> AWS config


1

리소스들에 대한 전체적인 구성상태


2

규정 준수 모니터링 가능


모든 인스턴스는 테그를 설정해야 한다.

룰을 설정하고 , tag  관련한것을 스캐닝한다.


S3는 public하면 안된다 의 경우  검색해 노티한다.


3

관리형 규칙은 ?

 tag , s3  public 등은 관리형으로 규칙


사용자 규칙 은 ?

람다를 이용함 


4

Organizations 통합


5

TAG가 지정되어 있지 않은 S3 확인  ?

S3 ---Config ----- SNS 로 알람을   보내고 -- 람다를 통해 --- s3에 버킷에 강제로 입력




<12> Macie


1

민감 데이터를 검토가능하다.

커스텀하게 설정 가능

사용자 정의 가능  = 주민번호 입력  점검 가능


2

현재는 S3에 저장된 데이터에 대해 점검함




<13> 로그


1

중앙화된 레파지토리에 보관하라.

S3에 모아라.




<14>  CloudWatch logs


1

서비스에서 발생되는 로그

어플리케이션에서 발생 되는 로그


2

대화형 쿼리지원한다.

log insight로  쿼리로 분석할수 있다.

시각화 제공


3

에이전트 설치 - 역할 연결

지표 필터링

액세스 로그 데이터


4

아키?

EC2  에이전트 -----로그 -- 로그그룹 (스트림형태로 계속 쌓임)-------------- logs insights 로 검색,시각화


5

아키  ?

Cloudtrail tail ---Cloudwatch  logs -------- cloudwatch 경보------ sns 메일로 알림




<15>  VPC Flow Log


1

ENI---------ENI 로 통신을  확인 가능


2

CloudWatch logs 또는 s3로 저장 가능


3

저장1

eni---vpc flow logs----cloudwatch logs 


저장2

5분 단위로 ---- eni1 로그 파일1 , eni2 로그파일2 ---- S3 


4

S버킷에 대한 액세스 추적 로그




<16> ELB  로그 저장


ELB --------------- S3에 버킷에 저장




<17> Kinesis 


1

수집

Data Stream

Firehorse


2

분석

Data Analytics



3

Datas Stream ?

실시간 처리하는 서비스


IOT  , 웹서버 등  데이터 생산자-----------  순서와 시간-- kinesis로 실시간 수집 -- 샤드 저장 


아키?

유입 초당 1M, 유출 초당 2M  샤드당 제공 -- 앱  소비자-----S3 , Redshift , DynamoDB 


4

Firehose ?


버퍼링

데이터를 이동시켜 주는 서비스

파이어 호스


S3나 ES, Redshift로 이동 ----------------- BI 뷰 제공


수요에 따라 자동 제공

60초 이내에 Aws스토리지로 전송 .

배치처리


5

데이터 생산법 3가지

Https put

Produce library

Kinesis agent


6

람다로 변화가능


SSE-KMS 를 사용한 Kinesis 데이터 암호화.


7

실시간 로그 분석 

예)

어느 ip에서 접속 많이 했나?




<18>  분석 =   Athena 


1

S3에 로그를 모아 놓는다.


2

1회성으로 분석

SQL 로 조회


3

교차리전 쿼리 지원.

다른 리전 s3도 지원


4

Presto , 아파치 Hive를 내장하고 있음.


5

S3에 가서 분석한다.

S3데이터를 이동하지 않는다.


스캔비용 + 결과값을 가져오는 데이터 전송비용이다.


분석


데이터 센택 s3  > 테이블 생성   > 데이터 쿼리


암호화된 객체를 쿼리할수 있음.

압축도 풀면서 가능

기본적으로 전송은 TLS , HTTPS 암호화 되어 있음.


보안

http://docs.aws.amazon.com/security




<19>  전송 


1

Dircet Connet


2

VPN연결


3

Transit Gateway



<20> Site Ste VPN


IDC VPN장비와 AWS간 연결



<21>  소프트웨어 VPN

EC2에 VPN소프트웨어 설치해 운영



<22>   Client VPN

OpenVPN클라이언트를 이용 


아키 ?

클라이언트 PC OPenVPN 애플리케이션 ---  클라이언트 VPN 엔드 포인트

개인이 접속



<23>   Direct Connect 개요


1

IDC의 네트워크를  AWS 케이지까지 연결


2

VPC와 연결할때 - 프라이빗 가상 인터페이스 사용


3

S3, Glacier -- 퍼블릭 가상 인터페이스


4

IPsec으로 암호화된 프라이빗 연결 -- VPN 연결한다.



<24>  DDOS 방어?


1

Api Endpoint는 ip가 바뀜


2

엣지에서 보호 하자?


Cloudfront 에서 보호

Elb에서 처리


Shield

firewall manager

WAF

Route53



<25> route53

DNS



<26>  WAF


1

IP포트 외에 공격 방어


2

CloudFront 적용

Apigw 적용


3

CloudFront


error 페이지가면 

403

다른 페이지를 보여줘~~ 라고 하고 보여준다.



<27> CloudFront


1

Shield , WAF 로 애플리케이션 , 네트워크 수준 보호


2

Http/Https 

RTMP - 멀티미디어 콘텐츠


3

캐쉬 + 방어라인


4

오리진 서버 액세스 제한 법 ?

Cloudfront url로 가도록 한다.


5

운영?

Cloud front ip 가 바뀌면 람다로 변경된  ip로 변경

클라우드 프론트 ip는계속 바뀐다.


6

아테나는 쿼리 결과 버킷 에 저장해야 한다.

그래서 버킷을 지정해야 한다.



<28> Shield


스텐다드 무료



<29> Firewall manager




감사합니다.


https://aws.amazon.com/ko/blogs/aws/aws-reinvent-announcements-2020/









브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari