<aside> 💡 안녕하세요 서후아빠입니다. ^_^ 이번 세션은 East-West(VPC~VPC, VPC ~ On-premise)구간에서 방화벽을 사용하지 않고 Flow log로 대체하는 방법에 대해서 실습해보겠습니다. 부분적으로 제약사항은 있으나, 방화벽 정책 관리나 비용 등 장점도 분명하기 때문에 내부 규정상 문제되지 않는다면 구성이 가능할 것으로 판단됩니다.
</aside>
East-West 구간에 방화벽을 두는 이유는 트래픽 통제와 전송된 트래픽 확인하기 위함 (내부 규정에서 아래 제약사항을 수용 가능한 경우 도입)
Flow Log vs 방화벽
구분 | SG + NACL + Flow Log | 방화벽 |
---|---|---|
구성 | • 쉬움 | • 상대적 어려움 |
가용성 및 사양 고려 | • 불필요 | • Network Firewall : 불필요 |
• 3rd Party : 필요 | ||
실시간 로깅 | • 불가능 | • Network Firewall : 불가능 |
• 3rd Party : 가능 | ||
비용 | • 상대적 저렴 |
- S3 스탠다드 : GB당 $0.025
- S3 Glacier : GB당 $0.005
- Athena 쿼리 : 1회 1GB당 $0.15 | • Network Firewall : VPC가 많아질수록 비싸짐
• 3rd Party : 트래픽 양에 따라 다름 (인스턴스 사양에 따른 비용 산정) | | 보안정책 관리 (아래 이미지 참조) | • 차단 정책 : NACL • 허용 정책 : 보안그룹 | • VPC 내부 통신 - 차단 정책 : NACL - 허용 정책 : 보안그룹 • VPC 외부 통신 - 차단/허용 정책 : Network Firewall or 3rd Party | | 결론 | • 내부 규정상 수용 가능한 경우 추천 | |
Athena 쿼리에 따른 비용(Athena, S3) 대응 방안
보안정책 관리 개념도
SG + NACL + Flow Log 구성으로 ISMS 인증을 통과하기 위해서 준비할 사항
내부 ITSM (or 전자결재 시스템과 같이 관리 프로세스) 통해서 SG 및 NACL 히스토리(생성, 수정, 삭제 등) 관리
※ IT Service Management (ITSM) : 조직이 내/외부 고객에게 제공하는 정보 기술 서비스를 설계, 빌드, 운영하고 유지 관리하기 위해 수행하는 활동
IAM을 통하여 SG 및 NACL에 대한 관리자 권한 관리, 액세스 히스토리 관리
위 내용에 대해서 월/분기/연간에 따른 관리 가능한 수준 판단
사전에 버킷 tgw-flow-log-bucket 생성하고 tgw-flow-log-bucket 내부에 result라는 폴더 생성
tgw-flow-log-bucket에서 90일 이후에 Glacier로 저장(3년 보관)되도록 “Lifecycle rules” 아래 예시처럼 설정
Lifecycle rule configuration | Lifecycle rule actions |
---|---|
• Lifecycle rule name : RetentionRule | |
• Choose a rule scope : Apply to all objects in the bucket | • Move current versions of objects between storage classes : 체크 |
- Choose storage class transitions : Glacier Deep Archive
- Days after object creation : 180
• Expire current versions of objects : 체크 - Days after object creation : 1095 |
VPC > Transit gateway attachments > VPC별 연결된 tgw attachment 선택 > Flow logs(tab) > Create flow log
| Name (Option) | Destination | S3 bucket ARN | Log file format | Hive-compatible S3 prefix | Partition logs by time | 그 외 | | --- | --- | --- | --- | --- | --- | --- | | vpcA (or vpcB) | S3 bucket | arn:aws:s3:::tgw-flow-log-bucket | Parquet | Turn on | 1 hour | 기본값 |
<aside> 📎 ※ S3 bucket 설명
※ Log record format에서 tcpdump와 유사하게 사용할 경우
Custom format 선택하고 아래 내용으로 변경
${tgw-attachment-id} ${srcaddr} ${srcport} ${dstaddr} ${dstport} ${tcp-flags} ${action}
※ Log record format 필드 중 일부 설명
※ Log file format : Parquet 형식이 Text보다 압축 기능 더 우수하여 S3 비용 절감 (최대 25%)되고, 쿼리 시간도 절약
※ Hive-compatible S3 prefix : Hive 도구에 새로운 데이터를 더 쉽게 검색하고 로드 가능 (활성화 추천)
※ Partition logs by time : 선택한 시간 간격에 걸쳐 더 효율적으로 로그 쿼리
</aside>