| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- bWAPP
- mount
- beebox
- Dreamhack
- fork-bomb
- cloud
- Reflected
- htmlinjection
- EC2
- Systemhacking
- datastructure
- CodeEngn
- AWS
- pwnable
- 백준
- 와이어샤크
- basicrce3
- Reversing
- 자료구조
- c
- SISS
- docker
- System
- acc
- wireshark
- 유석종교수님
- cgroup
- backjoon
- python
- Linux
- Today
- Total
목록Linux (7)
Ctrl + Shift + ESC
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다. Linux에서 OverlayFS 살펴보기# 오버레이 파일시스템 실습에 사용할 디렉토리 생성 mkdir /tmp/{lower1,lower2,upper,merged,work} 실습에 사용할 디렉토리를 생성한다.lower1, lower2: 읽기 전용, 마운트할 레이어를 위해 사용할 디렉토리upper: writable한 레이어merged: lower 레이어들과 upper 레이어가 겹쳐져서 실습에서 실제로 사용할 디렉토리work: file sywtem에서 관리 목적으로 사용하는 디렉토리# 실습에 사용할 파일 생성echo "lower1 a" > /tmp/lower1/a.txtecho "lower1 b" > /t..
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다.Mount Namespace 격리하기해당 실습은 리눅스의 Namespace(특히 Mount Namespace) 기능을 직접 체험해보는 실습이다.실습을 통해 프로세스마다 독립적인 파일시스템 뷰를 갖게 할 수 있다는 것을 확인할 수 있다. echo $$unshare -m /bin/bashecho $$ echo $$ 명령어를 입력하면 Shell의 PID를 확인할 수 있다.unshare -m /bin/bash 명령어에서 -m은 mount namespace를 분리한다는 뜻이다. 이렇게 네임스페이스가 분리되었기 때문에, 이 안에서 발생하는 마운트/언마운트는 호스트에는 보이지 않는다. 따라서 unshare 명령어 ..
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다.리눅스 배포판리눅스 커널은 운영체제의 핵심이지만, 커널만으로는 사용자가 컴퓨터를 쉽게 조작하기 어렵다.리눅스 배포판이란 리눅스 커널에 컴파일러, 셸, 윈도우 시스템, 그리고 각종 유틸리티와 응용 프로그램들을 포함하여 사용자가 바로 설치해서 사용할 수 있도록 패키징한 운영체제를 말한다. 주요 리눅스 계열을 비교하면 다음과 같은 표로 정리할 수 있다.계열특징 및 목표패키지 관리 도구대표 배포판Debian 계열• 오픈소스이며 안정성에 초점을 둔다 .• Ubuntu의 경우 사용 편의성과 LTS(Long Term Support, 5년) 지원을 목표로 한다 .• 서버와 데스크톱 환경 모두에서 널리 사용된다.• D..
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다. n-티어 아키텍처란? n-티어 아키텍처란 애플리케이션을 n개의 레이어으로 나눈 아키텍처를 말한다.레이어은 물리적으로 구분되고, 별도의 컴퓨터에서 실행된다. 이를 통해 책임을 분리하고 종속성을 관리한다.레이어은 다른 레이어를 직접 호출하거나 메시지 큐를 통해 비동기 메시징 패턴을 사용할 수 있다.또한 상위 레이어은 하위 레이어의 서비스를 사용할 수 있지만, 하위 레이어는 상위 레이어의 서비스를 사용할 수 없다. n-티어 애플리케이션에는 폐쇄형 레이어 아키텍처 또는 개방형 레이어 아키텍처가 있다.폐쇄형 레이어 아키텍처: 자기 다음의 레이어로만 접근이 가능한 통신 모델개방형 레이어 아키텍처: 자기의 하위 ..
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다. Go 언어 설치https://go.dev/doc/install Download and install - The Go Programming LanguageDocumentation Download and install Download and install Download and install Go quickly with the steps described here. For other content on installing, you might be interested in: Download Go installation Select the tab for your computer's operating sys..
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다.실습 시나리오포크 폭탄이란 프로세스가 지속적으로 자신을 복제함으로써 이용 가능한 시스템 자원을 고갈시키고 시스템 속도를 떨어트려 결국엔 기아 상태로 인한 시스템 충돌을 일으키는 서비스 거부 공격이다.bomb(){ bomb | bomb &}bomb Bash에서 포크 폭탄은 다중 재귀 함수를 선언하고 호출함으로써 수행할 수 있다. :(){ :|:& };: 이 명령어는 상기 명령의 난독화된 버전이다. 여기서의 트릭은 :를 함수명으로 사용한다는 점인데, 이것이 가능한 이유는 콜론이 다른 대부분의 언어에서처럼 Bash의 예약된 문자가 아니기 때문이다. 포크 폭탄 공격을 당하는 경우 기아 상태로 인한 시스템 충..
* 해당 포스트는 실무 초밀착 리눅스: 클라우드 환경 운영부터 성능분석까지 강의를 듣고 정리한 것입니다. 실습 개요실제 시나리오: 새벽 2시에 주기적으로 데이터 베이스 서버 응답 성능이 크게 증가했고, 원인 분석 결과 Anti-Virus앱의 주기적인 수행 작업에 영향을 받은 것을 확인했다. Anti-Virus 앱의 수행 작업이 CPU에 영향을 미치는 작업을 줄이기 위해 CPU 사용을 제한한다. 하지만 현재 실습을 진행 중인 t2.micro 인스턴스는 CPU Credit 기반이라 한 번 크레딧을 다 써버리면 EC2가 굉장히 느려진다.따라서 Anti-Virus 앱을 통해 실습하는 대신 CPU 스트레스 툴을 이용해서 stress 커맨드로 실행시킨다. 또한 강의의 Ubuntu는 이전 버전이었기 때문에 cgrou..