CHAPTER 1 인프라 기술의 기초
__1.1 네트워크와 프로토콜
____1.1.1 OSI 참조 모델과 TCP/IP 계층 모델
__1.2 프로토콜의 역할
____1.2.1 IP 주소와 넷마스크
____1.2.2 서브넷으로 네트워크 분할하기
____1.2.3 특별한 IP 주소
____1.2.4 라우팅
____1.2.5 IPv4와 IPv6
__1.3 포트와 프로토콜
__1.4 도메인 이름과 DNS
____1.4.1 도메인 이름
____1.4.2 도메인 이름의 종류
____1.4.3 DNS의 구조
__1.5 웹 서비스의 인프라 구성
____1.5.1 설치 위치
____1.5.2 네트워크
____1.5.3 하드웨어
____1.5.4 OS 선택
____1.5.5 미들웨어와 애플리케이션 실행 환경
CHAPTER 2 인프라의 변천과 특징
__2.1 인프라 서비스 이전의 인프라 구축
____2.1.1 인프라 서비스가 등장하기 전
____2.1.2 온프레미스로 시스템 구축하기
____2.1.3 인프라 서비스의 등장과 장점
____2.1.4 인프라 서비스의 종류
__2.2 VPS를 사용한 시스템 만들기
____2.2.1 VPS의 특징
____2.2.2 VPS를 실현하는 가상화 기술
____2.2.3 VPS를 사용해 여러 대 구성
____2.2.4 VPS의 용도와 주의점
____2.2.5 하이퍼바이저 기반의 가상화와 컨테이너 기반의 가상화
____2.2.6 VPS 사업자를 선택할 때의 포인트
__2.3 클라우드를 사용해 시스템 만들기
____2.3.1 클라우드란?
____2.3.2 소프트웨어를 제공하는 SaaS
____2.3.3 사내 정보 관련 서비스를 SaaS로 만들기
____2.3.4 SaaS를 사용할 때의 주의점
__2.4 플랫폼을 제공하는 PaaS
____2.4.1 PaaS의 장점
____2.4.2 PaaS를 사용할 때의 주의점
____2.4.3 시스템 기능을 제공하는 PaaS
____2.4.4 어떤 PaaS가 있을까?
__2.5 인프라를 제공하는 IaaS
____2.5.1 IaaS란?
____2.5.2 IaaS를 사용하는 경우
____2.5.3 종량제 과금의 어려움
____2.5.4 여러 대 서버 구성과 네트워크
____2.5.5 확장 구성과 리전
____2.5.6 IaaS의 부가 서비스
____2.5.7 사설 클라우드와 공용 클라우드
____2.5.8 IaaS로 시스템을 구성할 때 주의해야 할 점
__2.6 전용 서버와 베어메탈
____2.6.1 전용 서버의 장점
____2.6.2 전용 서버의 단점
____2.6.3 현대적인 형태의 전용 서버 ‘베어메탈’
____2.6.4 전용 서버와 베어메탈을 사용하는 경우
CHAPTER 3 시스템 테스트부터 구축까지
__3.1 시스템 구축의 흐름
____3.1.1 요건 정의 및 제안 단계
____3.1.2 설계 단계
____3.1.3 구축 단계
__3.2 가용성
____3.2.1 물리적인 확장 구성 이해하기
____3.2.2 네트워크 확장
____3.2.3 프런트 부분 확장화
____3.2.4 웹 사이트의 동시 접속 수 예측
____3.2.5 확장 구성을 위한 웹 아키텍처의 변천
__3.3 보안 대응 이해하기
____3.3.1 방화벽
____3.3.2 IDS/IPS
____3.3.3 WAF
____3.3.4 가상 LAN
____3.3.5 통신 경로 암호화
____3.3.6 SSL 가속기 이해하기
____3.3.7 웹 서버의 보안
____3.3.8 데이터베이스 서버의 보안
____3.3.9 메일 서버의 보안
__3.4 시스템 구성 예
____3.4.1 소규모 웹 서비스 구성
____3.4.2 대규모 사이트
____3.4.3 게임 전용 시스템
____3.4.4 기업용 시스템
CHAPTER 4 운용 체제 구축, 장애 대응, 예방 운용
__4.1 운용이란?
____4.1.1 운용 단계에 들어가기 전에 생각해야 할 것
____4.1.2 운용 설계
__4.2 운용 체제 구축
____4.2.1 운용 단계에 들어가기 전에 생각해야 할 것
____4.2.2 감시 항목 결정과 설정
____4.2.3 조건을 공유하는 문서 만들기
__4.3 테스트와 배포
____4.3.1 테스트 실시
____4.3.2 스트레스 테스트
____4.3.3 장애 대응 테스트
____4.3.4 배포 전 테스트와 마이그레이션 테스트
____4.3.5 배포
__4.4 감시와 장애 대응
____4.4.1 사례 연구 1: 웹 사이트에 접근할 수 없는 경우
____4.4.2 사례 연구 2: 메일 송수신이 불가능한 경우
__4.5 예방 운용
____4.5.1 장애 전조 감지
____4.5.2 성능 열화 감시와 정기 성능 평가
____4.5.3 취약성 정보 수집과 대응
__4.6 유지 보수
____4.6.1 활성 유지 보수와 비활성 유지 보수
____4.6.2 계획 유지 보수와 긴급 유지 보수
____4.6.3 활성 유지 보수 접근 방법
____4.6.4 유지 보수 방침
____4.6.5 마지막으로
CHAPTER 5 인프라 엔지니어를 위한 보안 입문
__5.1 컴퓨터 보안 사고
____5.1.1 사고 대응의 필요성
____5.2 사고의 종류와 경향
____5.2.1 스캔
____5.2.2 DoS 공격
____5.2.3 웹 사이트 해킹
____5.2.4 피싱
____5.2.5 표적형 공격
__5.3 사고 발생 원인과 그 대책
____5.3.1 외부에 공개된 서버의 사고
____5.3.2 내부 네트워크와 관련된 사고
____5.3.3 사고의 원인과 대책
__5.4 클라우드의 보안
____5.4.1 클라우드를 사용할 때의 보안
____5.4.2 클라우드 보안의 책임 분담
__5.5 운용 중의 시스템 취약성 대응
____5.5.1 시스템 구성 파악하기
____5.5.2 신뢰할 수 있는 정보원 파악하기
____5.5.3 취약성 정보에 대응하기
__5.6 정기 진단의 필요성
____5.6.1 비정상 이벤트 확인
____5.6.2 시스템 보안 진단
____5.6.3 자가 취약성 진단을 활용하려면
____5.6.4 마지막으로
CHAPTER 6 데브옵스 시대에 요구하는 기술
__6.1 인프라 엔지니어를 둘러싼 환경
____6.1.1 클라우드 등장 이전: 모든 것을 직접 하던 시대
____6.1.2 클라우드 등장 이후: 인프라 구성 관리 개념 보급
____6.1.3 현재: 빠른 시스템 개발과 운용
__6.2 코드로서의 인프라
____6.2.1 ‘코드로서의 인프라’란
____6.2.2 ‘코드로서의 인프라’와 관련된 도구의 계층 분류
____6.2.3 ‘코드로서의 인프라’로 마이그레이션하는 흐름
____6.2.4 ‘코드로서의 인프라’로 마이그레이션하는 사례
__6.3 시스템 개발과 관련된 세 가지 관례
____6.3.1 버전 관리
____6.3.2 테스팅
____6.3.3 프로젝트 자동화
__6.4 데브옵스를 지원하는 관례 도구
____6.4.1 지속적 전달
____6.4.2 시대에 맞는 배포 방법
____6.4.3 개발부터 운용까지의 플로 지원
____6.4.4 워크플로 개선
CHAPTER 7 인프라 엔지니어의 경력 관리
__7.1 인프라 엔지니어에게 필요한 힘
____7.1.1 커뮤니케이션하는 힘
____7.1.2 가설을 만드는 힘
____7.1.3 개선하는 힘(+코드를 작성하는 힘)
__7.2 인프라 엔지니어의 생존 전략(경력 관리)
____7.2.1 혁신의 전파 이론에 따른 엔지니어의 위치
____7.2.2 엔지니어링 조직 내부에서의 위치
____7.2.3 인프라 엔지니어 이외의 위치
____7.2.4 엔지니어와 경영, 마케팅, 영업