본문 바로가기
반응형

전체 글264

08. (실습) cgroup으로 fork bomb 막아보기 # 시나리오 오래된 버전의 관리 툴의 보안이슈를 이용해 해커에 노출되어, 포크 폭탄 공격을 받게 됨. * 포크폭탄: 프로세스가 지속적으로 자신을 복제함으로써 이용 가능한 시스템 자원을 고갈시키고 시스템 속도를 떨어트려 결국엔 기아 상태로 인한 시스템 충돌을 일으키는 서비스 거부 공격이다. 1. 먼저 sudo su 명령어로 root 사용자로 전환한다. 2. cd /sys/fs/cgroup/pids/ 명령어로 프로세스를 관리하는 디렉토리인 pids로 들어가서 mkdir police 명령어로 police라는 디렉토리를 만든다. 3. echo $$ > tasks 명령어로 현재 수행 중인 bash shell 프로세스를 등록한다. 4. echo 20 > pids.max 명령어로 프로세스 생성 갯수를 20개로 제한한.. 2022. 6. 23.
07. (실습) cgroup으로 Anti Virus앱 CPU사용 제한하기 # 시나리오 새벽 2시에 주기적으로 데이터 베이스 서버 응답이 크게 증가했고, 원인 분석 결과 Anti Virus앱의 주기적인 수행 작업에 영향을 받은 것을 확인함 실습: stress tool 로 cpu로드를 생성 → CPU 사용량 10% 제한 ( cpu.cfs_period_us = 100000, cpu.cfs_quota_us= 10000 ) 1. 먼저 sudo apt install -y stress 명령어로 stress tool을 설치한다. 2. sudo su 명령어로 root 계정으로 사용자를 바꾼다. 3. cd /sys/fs/cgroup/cpu 명령어로 cgroup의 cpu 디렉토리로 이동하고 utils 라는 디렉토리를 만든다. 4. tasks 파일에 현재 터미널의 프로세스ID를 추가해서 task를.. 2022. 6. 23.
06. cgroup의 이해 컨테이너 구성하는 3가지 주요 리눅스 기술 Control groups Namespaces Union mount filesystem cgroups (Control Groups) 프로세스들이 사용하는 시스템 자원의 사용 정보를 수집 및 제한 시키는 리눅스 커널 기능 * 모든 프로세스에 대해 리소스 사용 정보를 수집 제한 가능한 자원: CPU, Memory, Network, Device, Block I/O 활용 사례: runc, YARN (Hadoop), Android 등 - 사용 가능한 서브시스템 blkio, cpu, cpuacct, cpuset, devices, freezer, memory, net_cls, ns • cpu — 스케줄러를 이용해 해당 cgroup 에 속한 프로세스 CPU 사용 시간을 제어 .. 2022. 6. 23.
06 (실습)Alpine 리눅스 기본 이미지 만들기 Alpine Linux: 보안, 간편성, 리소스 효율을 위해 디자인된 리눅스 배포판 용량 줄이기 위해 다양한 노력 예, glibc -> musl libc, Linux commands -> 단일 명령으로 변경 이번 실습은 Fedora 이미지를 활용해 AlpineFedora Linux 이미지를 직접 생성해 보기다. https://github.com/go4real/linux_campus/tree/main/part1/Ch01_06 GitHub - go4real/linux_campus Contribute to go4real/linux_campus development by creating an account on GitHub. github.com (실습을 진행하기 앞서 Part1. Ch02. 05 실습 환경 구성.. 2022. 6. 23.
반응형