TIME_WAIT 개념부터 정리하기

특정 포트에 TIME_WAIT 상태가 유난히 많이 쌓이면 서버 자원이 낭비되고 장애의 전조로 이어질 수 있다. 이 글에서는 TIME_WAIT의 역할과 동작 원리를 먼저 정리한 뒤, 특정 포트 기준으로 TIME_WAIT이 폭증하는 주요 원인과 분석 방법, 그리고 실무에서 적용할 수 있는 개선 전략까지 단계적으로 살펴본다.

리눅스 capability로 최소 권한 구조 만들기

리눅스에서 서비스 권한을 최소화하려면 모든 데몬을 root로 돌릴 필요가 없다. capability를 활용하면 특정 작업에만 잘게 쪼개진 권한을 부여해 공격 범위를 줄이고, 업데이트와 배포에도 잘 견디는 안전한 실행 환경을 만들 수 있다.

ulimit 설정이 의미하는 것

ulimit 설정은 단순히 현재 셸에만 영향을 주는 옵션이 아니라 프로세스와 자식 프로세스 전체에 전파되며 파일 디스크립터와 프로세스 수 같은 자원을 제한해 시스템 안정성과 성능에 직접적인 영향을 준다. 이 글에서는 ulimit 기본 개념과 자원 종류 별 영향 범위 시스템 전역 설정과의 관계까지 정리한다.

cgroup v2 환경에서 프로세스 자원 제한 설정하기

cgroup v2는 프로세스별 자원 사용을 세밀하게 제한하고 모니터링할 수 있는 현대적인 메커니즘이다. 이 글에서는 cgroup v2를 사용하는 환경에서 CPU 메모리 프로세스 수 I O 자원을 실제 예시와 함께 단계별로 제한하는 방법을 정리하고 systemd와 연계해 운영에 적용하는 전략까지 살펴본다.

auditd로 파일 접근 모니터링 이해하기

이 글은 리눅스에서 auditd를 사용해 중요한 파일과 디렉터리의 읽기와 수정 삭제 시도를 기록하고, 규칙 설계와 설치, 로그 분석과 운영 팁까지 단계별로 구성하는 방법을 정리한다.

Apache MPM 설정 간 차이와 최적화 전략

아파치 웹 서버는 MPM 설정에 따라 프로세스와 스레드를 다르게 사용하며, 이는 동시 접속 처리량과 메모리 사용량, 안정성에 큰 영향을 준다. 이 글에서는 주요 MPM인 prefork worker event의 구조와 차이를 정리하고, 워크로드 유형별로 어떤 MPM과 설정 조합이 적합한지 실전 관점에서 살펴본다.