안녕하세요. Twodragon입니다.
클라우드 시큐리티 과정 2기 강의를 시작하게 되었고, 게더 타운(Gather Town)에서 진행되는 일정을 소개 드리려고 합니다.
먼저 게더 타운 진행 스케줄은 총 2시간(20분 진행, 5분 휴식)으로 다음과 같습니다.
온라인 강의 특성 상 눈의 피로 또는 학생분들의 높은 집중력을 위해 20분씩 진행하고 5분 휴식을 취하고 있습니다.
10:00 - 10:20 = 근황 토크 & 멘티끼리 서로 가르쳐 주기 (과제 요약하여 발표 // 과제 토론 1회, 주제 토론 1회) & 과제 피드백
10:25 - 10:45 = VM vs Container vs Kubernetes 개요
10:50 - 11:10 = Docker Compose 개요
11:15 - 11:35 = Docker와 Docker Compose 활용
11:40 - 12:00 = 8주차 과정 이해를 위한 필수적인 실습
1. 근황 토크 & 과제 피드백
- 근황 토크 & 과제 관련하여 서로 피드백
Q1) 과제 내용 요약 발표 후 서로 가르쳐 주기
- 현재 클라우드 보안에서 이슈가 되고 있는 사항 (KRCERT 또는 기사를 통해 얻은 참고자료)
* BIND DNS 서버의 서비스 거부 취약점 (CVE-2022-0667) : Internet Systems Consortium (ISC)는 BIND DNS에서 서비스 거부를 유발하는 취약점으로, 영향받는 버전의 사용자는 DoS 피해가 발생할 수 있으므로 최신 업데이트 필요
* Drupal 제품 보안 취약점 (CVE-2022-24728) : Drupal의 CKEditor 라이브러리에서 입력값 검증이 미흡하여 발생하는 XSS 취약점으로 최신 업데이트 필요
* 랩서스(LAPSUS$) 해킹 그룹에서 대기업 위주의 정보 공개하였으며, 엔비디아, 마이크로소프트, 삼성, LG전자 등 해킹해 임직원 계정 정보 탈취 및 각종 기밀 유출 : 마이크로소프트에서 랩서스 그룹의 해킹 방법을 공개하여 보안 권고
2. VM vs Container vs Kubernetes 개요
1) Virtual Machine (VM)
- 호스트OS에 의해 VM을 가상화 시켜주는 하이퍼바이저(Virtual Box, Xen, KVM, VMware)를 사용하여 원하는 운영체제를 GuestOS에 올려 여러 VM을 만들 수 있음. GuestOS도 HostOS와 같이 하나의 OS를 독립적으로 사용가능
2) Container
- VM과 HostOS 까지 설치는 동일하지만 OS에 의해 컨테이너를 가상화 시켜주는 여러가지 소프트웨어들(docker, rkt, LXC)이 있고, 도커를 가장 많이 사용함. 도커(Docker)가 컨테이너를 만들고 여러 컨테이너들간의 호스트 자원을 분리해서 사용할 수 있게 함
- 리눅스 고유기술인 커널에 관련된 영역을 분리(namespace에서 mnt, pid, net, ipc, uts, user)와 자원에 대한 영역을 분리(cgroup에서 memory, CPU, I/O, network) 를 사용하여 격리하는 것
- 컨테이너 이해 : 초보를 위한 도커 안내서 - 설치하고 컨테이너 실행하기 (subicura.com)
3) Kubernetes
- 쿠버네티스는 여러 컨테이너들을 한 Pod(파드)라는 개념으로 묶을 수 있고, 파드 내에 컨테이너는 하나 또는 다수로 표현됨. 내가 필요한 파드만큼 확장 가능하며, 컨테이너는 시스템을 모듈별로 쪼개서 개발할 수 있고, Microservices 운영에 장점이 있음
https://daaa0555.tistory.com/464
- 쿠버네티스 개념 : 쿠버네티스 시작하기 - Kubernetes란 무엇인가? (subicura.com)
Q2) VM과 Container, Kubernetes 사용 사례
3. Docker Compose 개요
- 여러 개의 컨테이너로부터 이루어진 서비스를 구축 및 실행하는 순서를 자동화하여 통합 관리하는 기능
- Docker Compose 실행단계
1) 각각의 컨테이너의 Dockerfile 작성 (기존에 있는 이미지를 사용하는 경우는 불필요)
2) docker-compose.yml를 작성하고, 각각 독립된 컨테이너의 실행 정의를 실시 (경우에 따라는 구축 정의도 포함)
3) "docker-compose up" 커맨드를 실행하여 docker-compose.yml으로 정의한 컨테이너 사용
Docker Compose 문법 : https://darrengwon.tistory.com/793
4. Docker와 Docker Compose 활용
- AWS에서 Docker 실행 : https://docs.aws.amazon.com/ko_kr/AmazonECS/latest/developerguide/docker-basics.html
- 컨테이너와 네트워크 구조 파악하고 Docker 기반 Nginx 실행
#Docker Network, Container, Volume 구조 파악
docker network ls
docker container ls
docker volume ls
#Docker Volume 생성
docker volume create nginx_01
docker volume create nginx_02
#nginx 구조
- 웹 로그
- 시스템 로그 (/var/log)
- 저장소 (volumes)
#Docker 기반 Nginx 실행
docker run -it -p 8080:80 -d --name=nginx_01 -v nginx_01:/var/log/nginx nginx:latest
docker run -it -p 8081:80 -d --name=nginx_02 -v nginx_02:/var/log/nginx nginx:latest
#Docker 정보
docker inspect nginx_01
docker inspect nginx_02
#Docker container 내부 접속을 위한 bash 실행
docker exec -it nginx_01 /bin/bash
docker exec -it nginx_02 /bin/bash
#ifconfig 설치
apt-get update -y
apt install net-tools
ifconfig
- Docker-Compose를 이용하여 ELK Stack 시작하기
- ELK 구조 이해를 위한 설명 : https://velog.io/@hanblueblue/Elastic-Search-1
5. 8주차 과정 이해를 위한 필수적인 실습
- Docker Swarm 구성 및 모니터링 : https://yena-diary.tistory.com/6
- Minikube 데모 : 튜토리얼 | Kubernetes
- Docker Swarm 툴 활용 : https://dockerswarm.rocks/portainer/
참고자료
클라우드 시큐리티 과정 2기 - 8주차 Docker Swarm 과 Kubernetes 개요 = https://twodragon.tistory.com/584
클라우드 시큐리티 과정 2기 - 6주차 클라우드 솔루션 & CSPM 개요 = https://twodragon.tistory.com/582
'* Twodragon > 보안 강의 (Course)' 카테고리의 다른 글
클라우드 시큐리티 과정 2기 - 9주차 클라우드 보안 최종 정리 (0) | 2022.04.09 |
---|---|
클라우드 시큐리티 과정 2기 - 8주차 Docker Swarm 과 Kubernetes 개요 (0) | 2022.03.31 |
클라우드 시큐리티 과정 2기 - 6주차 클라우드 솔루션 & CSPM 개요 (0) | 2022.03.17 |
클라우드 시큐리티 과정 2기 - 5주차 Splunk와 ELK 데이터 분석 (0) | 2022.03.02 |