CentOS 7 리눅스 서버 쿡북 [CentOS의 설치부터 SELinux와 인프라 장비 모니터링까지]
- 원서명CentOS 7 Linux Server Cookbook - Second Edition (ISBN 9781785887284)
- 지은이올리버 펠츠(Oliver Pelz), 조나단 홉슨(Jonathan Hobson)
- 옮긴이김용환
- ISBN : 9788960779433
- 33,000원
- 2016년 12월 16일 펴냄
- 페이퍼백 | 444쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 오픈소스 프로그래밍
책 소개
요약
센트OS 6보다 훨씬 좋아진 센트OS 7의 설치 및 기본 설정 방법, 소프트웨어 패키지 관리 방법을 소개한다. 또한 파일 시스템과 서버에 안전하게 접근하도록 관리하는 방법과 파일, 프린터, 네트워크의 DHCP와 같은 다양한 자원 공유 시스템 설정 방법을 설명한다. FTP 서비스, 자체 DNS 서버 구축, 데이터베이스 서버 실행 방법, 메일과 웹 서비스를 제공하는 기능 등의 고급 주제를 다룬다. 마지막으로 SELinux를 상세하게 설명하며, 도커(Docker) 운영 시스템 가상화로 작업하는 방법과 나기오스(Nagios)로 IT 인프라 장비를 모니터링하는 방법을 설명한다.
이 책에서 다루는 내용
■ 일반적이고 고급스런 방법을 통한 센트OS 7 리눅스 서버 시스템의 설치 및 설정
■ 전문가 설정 조언 사용과 소프트웨어 패키지 관리를 통한 성능 기반 및 보안 서버 솔루션 유지
■ 안정된 성능을 유지하기 위한 서버의 파일 시스템 모니터링 및 관리, 개발
■ 특정 네트워크에서 파일과 자원 공유에 대한 모범 사례
■ 웹, 메일, FTP, 데이터베이스, 도메인 이름 서버 기술 등 일반적인 표준 서비스 설치 및 설정
■ 도커 플랫폼을 사용한 운영체제 레벨의 가상화 방법 소개
■ SELinux 접근 제어 아키텍처의 기초 이해
■ 나기오스를 이용한 IT 인프라 장비 모니터링
이 책의 대상 독자
센트OS 자체에 대한 내용보다는 센트OS 서버 솔루션 구축에 대해 다루는 실용적인 가이드며, 센트OS 서버의 사용 방법을 보여준다. 또한 이 책은 센트OS를 처음 사용하고자 하는 리눅스 초보자부터 중급자를 위해 작성됐다. 하지만 이 운영체제가 생전 처음이더라도 걱정하지 않아도 된다. 이 책은 완벽한 서버 솔루션을 구축하는 방법과 추가적으로 전문 기술을 구축할 수 있는 많은 노하우가 포함된 단계별 접근 방식을 제공한다.
이 책의 구성
1장, ‘센트OS 설치’에서는 서버를 설치하는 작업과 추가 툴을 사용해 센트OS 7의 미니멀을 변경하고 개선하는 작업을 소개하는 예제를 다룬다. 센트OS를 처음 설치하는 독자를 위해 작성됐고, 원하는 센트OS 버전을 설치하는 다양한 방법을 예제를 통해 소개한다.
2장, ‘시스템 설정’에서는 리눅스 초보자들에게 도움의 손길을 제공하고자 예제를 통해 설치부터 쉽게 따라 하고, 서버 설정을 원하는 대로 진행할 수 있도록 돕는다. 텍스트 파일로 작업하는 방법을 보여주면서 시작하고, 언어와 시간 및 날짜 설정을 변경하는 방법을 소개하며, 네트워크를 설정하는 방법뿐 아니라 모든 도메인 이름을 찾는 방법, 커널 모듈과 연동하는 방법을 소개했다.
3장, ‘시스템 관리’에서는 서버를 강화하고 환경을 통제할 수 있는 빌딩 블록을 제공한다. 전문 서버 솔루션 개발에 필요한 다양한 단계를 살펴보며 습득한 풍부한 지식을 널리 활용한다면 서버 관리자로서 빨리 자리 잡을 수 있다.
4장, ‘YUM으로 패키지 관리’에서는 센트OS 7에서 소프트웨어 패키지로 작업하는 방법을 소개한다. 시스템 업그레이드부터 추가 저장소로 시스템을 검색, 설치, 삭제, 개선할 수 있는 내용까지 다룬다. YUM(Yellowdog Updater Modified)과 RPM 패키지 관리자로 알려진 오픈소스 커맨드라인 패키지 관리 유틸리티를 설명한다.
5장, ‘파일 시스템 관리’에서는 서버의 파일 시스템에 집중한다. 가짜 디스크 디바이스의 생성부터 테스트 드라이브 개념 전문가 레벨 포매팅과 파티셔닝 커맨드까지, 논리 볼륨 매니저(Logical Volume Manager)의 사용 방법을 소개하고, 파일 시스템을 유지 보수하는 방법, 디스크 쿼터로 작업하는 방법을 배운다.
6장, ‘보안 기능 제공’에서는 성공적인 서버 솔루션 실행에 필요한 보호 레벨을 전달하는 다양한 방법을 다룬다. ssh 서비스와 FTP 서비스를 보호부터 새로운 firewalld 매니저와 인증서 생성까지, 외부 공격의 위험을 낮출 필요성을 고려할 뿐 아니라 사용자에게 추가적인 보안 기능을 제공하는 서버 구축이 얼마나 쉬운지 살펴본다.
7장, ‘네트워크 구축’에서는 내부 네트워크의 컴퓨터 간 여러 형태의 자원 공유를 구현하는 필수 단계를 다룬다. IP 주소와 프린트 디바이스부터 다양한 형태의 파일 공유 프로토콜까지, 홈 네트워크나 회사 네트워크 환경을 구축하는 데 있어서 모든 서버의 중요한 역할을 설명한다.
8장, ‘FTP 작업’에서는 센트OS 7 서버에 제공하고 싶은 FTP(File Transfer Protocol)의 설치, 설정, 관리에 필요한 가이드 예제를 소개하고, VSFTP의 역할에 집중한다.
9장, ‘도메인 작업’에서는 센트OS 7 서버의 도메인 이름, 도메인 해석, DNS 질의를 구현하기 위해 필요한 단계를 소개한다. 도메인 이름 시스템은 모든 서버가 필요로 하는 환경, 홈 네트워크 또는 회사 환경에서 중요한 역할을 한다. 미래 경쟁력을 갖춘 여러 솔루션을 예제로 소개한다.
10장, ‘데이터베이스 작업’에서는 센트OS 7에 데이터베이스를 배포하는 필수 단계를 설명하기 위해 MySQL와 PostgreSQL의 접근 방법을 설명한다.
11장, ‘메일 서비스 제공’에서는 센트OS 7에서 상위 도메인에 대한 메일 전송 에이전트(Mail Transport Agent)를 활성화하는 방법을 소개한다. 내부 POP3/SMTP 서버의 구축부터 Fetchmail 설정까지 다루며, 미래에 이메일 기반의 모든 필요를 위한 기초를 제공한다.
12장, ‘웹 서비스 제공’에서는 많이 알려진 아파치 서버 기술의 역할을 상세하게 분석한다. 여러분이 개발 서버나 실제 상용 서버를 실행하든 하지 않든 웹 기반 문서를 공개하는 솔루션의 장인이 되기 위해 필요한 웹 서비스 기능을 전달할 수 있는 필수 단계를 제공한다.
13장, ‘운영체제 레벨 가상화’에서는 최신 오픈소스 플랫폼인 도커(docker)를 사용한 리눅스 컨테이너를 소개하고, 처음 만들 도커 이미지의 생성 방법, 실행 방법, 공유 방법을 제공한다.
14장, ‘SELinux로 작업’에서는 센트OS 7의 가장 잘 알려지지 않은 주제 중 하나인 SELinux(Security Enhanced Linux)를 쉽게 설명하고 분석한다.
15장, ‘IT 인프라 장비 모니터링’에서는 전체 IT 인프라 장비의 모니터링에 대한 사실상 업계 표준인 나기오스 코어(Nagios Core)를 소개하고, 설정 방법을 보여준다.
목차
목차
- 1장. 센트OS 설치
- 소개
- 윈도우 또는 OS X에서 센트OS 다운로드와 체크섬 확인
- 윈도우 또는 OS X에서 USB 설치 미디어 생성
- 그래픽 인스톨러를 사용한 센트OS 설치
- HTTP로 netinstall 설치
- 킥스타트 파일을 사용한 센트OS 설치
- 부트 로더 시작과 사용자 정의
- 복구 모드에서 시스템 문제 해결
- 시스템 업데이트 후 추가 관리 툴과 개발 툴로 센트OS 7 미니멀 설치 개선
- 2장. 시스템 설정
- 소개
- less를 이용해 텍스트 파일 살펴보기
- Vim 소개
- 언어 설정
- NTP와 chrony를 사용한 시스템 시간 동기화
- 장비 이름 설정과 네트워크 주소 해석
- 고정 네트워크 연결 구축
- 슈퍼유저 되기
- 시스템 배너와 메시지의 사용자 정의
- 커널 입문
- 3장. 시스템 관리
- 소개
- 백그라운드 서비스를 알고 관리하기
- 백그라운드 서비스 문제 해결
- journald로 시스템 자원 추적
- journald에 영속성 설정
- 사용자와 그룹 관리
- cron으로 스케줄 작업
- rsync로 파일 동기화
- 스냅샷 생성과 백업
- 중요한 서버 장비 모니터링
- 깃과 서브버전으로 제어
- 4장. YUM으로 패키지 관리
- 소개
- 시스템 업데이트를 위한 YUM 사용
- 패키지 검색을 위한 YUM 사용
- 패키지 설치를 위한 YUM 사용
- 패키지 삭제를 위한 YUM 사용
- YUM을 깨끗하고 깔끔하게 유지
- 우선순위 알기
- 외부 저장소 사용
- YUM 저장소 생성
- RPM 패키지 매니저로 작업
- 5장. 파일 시스템 관리
- 소개
- 가상 블록 디바이스 생성
- 파일 시스템 포맷과 마운트
- 디스크 쿼터 사용
- 파일 시스템 관리
- 파일 시스템의 용량 확장
- 6장. 보안 기능 제공
- 소개
- 원격 접근을 막고 SSH를 견고하게 하기
- fail2ban 설치와 설정
- 방화벽 작업
- 예제를 통한 방화벽 규칙 구축
- 자체 서명 인증서 생성
- FTP를 대신할 보안 FTP 사용
- 7장. 네트워크 구축
- 소개
- CUPS로 프린트
- DHCP 서버 실행
- 파일 공유를 위한 WebDAV 사용
- NFS 설치와 설정
- NFS로 작업
- SAMBA를 이용한 안전한 자원 공유
- 8장. FTP 작업
- 소개
- FTP 서비스 설치와 설정
- 가상 FTP 사용자로 작업
- FTP 서비스의 사용자 정의
- 사용자나 파일 전송과 관련된 문제 해결
- 9장. 도메인 작업
- 소개
- 캐시 전용 네임 서버의 설치와 설정
- 권한 전용 네임 서버 설정
- 통합 네임 서버 솔루션 구축
- 도메인 얻기
- 보조(슬레이브) DNS 서버 구축
- 10장. 데이터베이스 작업
- 소개
- 마리아DB 데이터베이스 설치
- 마리아DB 데이터베이스 관리
- 마리아DB의 원격 접근 허용
- PostgreSQL 서버 설치와 관리
- PostgreSQL에 대한 원격 연결 설정
- phpMyAdmin과 phpPgAdmin 설치
- 11장. 메일 서비스 제공
- 소개
- Postfix를 사용한 상위 도메인 메일 서비스 설정
- Postfix로 작업
- Dovecot로 메일 전송
- Fetchmail 사용
- 12장. 웹 서비스 제공
- 소개
- 아파치 설치와 웹 페이지 제공
- 시스템 사용자 활성화와 공개 디렉토리 구축
- 이름 기반의 호스팅 구현
- 펄과 루비로 CGI 구현
- PHP 설치, 설정, 테스트
- 아파치에 보안 기능 추가
- SSL로 HTTPS 설정
- 13장. 운영체제 레벨의 가상화
- 소개
- 도커 설치와 설정
- 이미지 다운로드와 컨테이너 실행
- 도커 파일 이미지 생성과 도커 허브에 업로드
- 사설 도커 레지스트리 설정과 작업
- 14장. SELinux 작업
- 소개
- 중요 SELinux 툴 설치와 설정
- SELinux 보안 문맥 작업
- 정책 적용
- SELinux 문제 해결
- 15장. IT 인프라 장비 모니터링
- 소개
- 나기오스 코어 설치와 설정
- 원격 클라이언트 장비에 NRPE 설치
- 원격 시스템의 중요한 지표 모니터링