서브메뉴

본문

리눅스 서버 관리 바이블 (CentOS 기반 필수 서버 프로그램 완벽 정리)
리눅스 서버 관리 바이블 (CentOS 기반 필수 서버 프로그램 완벽 정리)
저자 : 정철
출판사 : 에이콘출판
출판년 : 2016
ISBN : 9788960778924

책소개

에이콘 오픈소스 프로그래밍 시리즈. CentOS에 소개된 새로운 기술과 실무에 유용한 20가지 이상의 주요 네트워크 서버 프로그램을 충분한 실습 예제와 자세한 설명을 통해 집중적으로 소개한다. 충분한 개념 설명을 통해 독자들의 이해를 돕고, 명령어 및 설정 실습으로 실무 기능을 익히도록 하는 것이 이 책의 목표다. 리눅스 입문자부터 중.고급 실력자까지 모두 만족할 만한 새롭고 알찬 내용과 자세한 설명으로 구성돼 있다.
[알라딘에서 제공한 정보입니다.]

출판사 서평

★ 요약 ★



CentOS에 소개된 새로운 기술과 실무에 유용한 20가지 이상의 주요 네트워크 서버 프로그램을 충분한 실습 예제와 자세한 설명을 통해 집중적으로 소개한다. 충분한 개념 설명을 통해 독자들의 이해를 돕고, 명령어 및 설정 실습으로 실무 기능을 익히도록 하는 것이 이 책의 목표다. 리눅스 입문자부터 중?고급 실력자까지 모두 만족할 만한 새롭고 알찬 내용과 자세한 설명으로 구성돼 있다.



★ 이 책에서 다루는 내용 ★



■ CentOS 기반 네트워크 서버

■ Firewalld 방화벽 등 서버 관리에 필수적인 시스템 및 서버 관리 기술

■ 인터넷 서비스를 제공하는 핵심적인 서버 프로그램

■ 유용한 애플리케이션 서버 프로그램

■ 보안, 모니터링, 백업, 로그 서버 관리

■ 각 서버의 명령어와 설정 파일 및 동작 원리



★ 이 책의 대상 독자 ★



이 책은 다음과 같은 독자들에게 도움이 되리라 확신한다.

■ 리눅스 설치와 명령어는 알지만 서버 구축의 순서와 방법은 알지 못하는 리눅스 입문자

■ 다양한 종류의 리눅스 서버 프로그램을 이해하고 충분한 실습을 통해 더 높은 고급 수준

으로 도약하고 싶어 하는 리눅스 중급 사용자

■ 명령어와 설정 파일에 대한 간단한 소개만 제공하는 입문자 위주의 설명에 실망한 중고급 리눅스 사용자

■ 새로움이 없는 콘텐츠 구성에 실망한 중고급 사용자, 새로운 기술과 지식 습득에 열정과 흥미를 가진 사용자

■ 기존에 알고 있던 리눅스 서버 프로그램에 대해 더 깊고 넓은 지식을 갈구하는 중고급 리눅스 사용자

■ 1,000페이지 이상의 기술 서적도 체계적이고 자세한 정리로 지루함 없이 쉽게 읽고 싶은 리눅스 사용자

■ 리눅스 서버 구축에 대해 두려움을 갖고 있거나 먼 훗날의 계획으로 미뤄뒀던 윈도우 사용자

■ 서점에서 구입할 만한 리눅스 책이 별로 없다고 포기하거나 발걸음을 돌렸던 사용자

■ 책을 구입해서 읽은 후에 책값이 아깝다고 후회했던 사용자, 서평에 본인이 구입한 책을 사지 말라고 리뷰를 남긴 사용자

■ 책 구입 이후 사후 서비스에 만족하지 못한 독자

■ 주위 친구 또는 지인에게 추천할 만한 리눅스 책이 없다고 생각하는 독자

■ 명령어 하나까지도 놓치지 않는 자세한 설명을 기대하는 독자

■ 리눅스 서적의 수준이 아직 외국 서적에 비해 많이 뒤떨어진다고 생각하는 독자

■ 충분한 이해와 설명 없이 단지 따라 하기식 학습 방법에 대해 염증을 느낀 독자



★ 이 책의 구성 ★



이 책은 총 4개의 부와 24개의 장으로 구성돼 있다. 각 부에서 다루는 내용은 다음과 같다.

1부, '리눅스 서버 필수 시스템 관리 기술'에서는 리눅스 서버를 관리하기 위한 필수 시스템 관리 기술을 소개한다. 1부에서 소개하는 내용은 모두 서버 관리에 반드시 필요하며, 특히 3장의 Systemd를 이용한 서비스 관리와 4장의 Firewalld 방화벽 관리는 CentOS 7에 새롭게 소개된 서비스이므로 반드시 알아둬야 한다. 또한 1장의 사용자 관리와 2장의 패키지 관리를 통해 서버 프로그램을 쉽고 효율적으로 관리하기 위한 시스템 기술을 습득할 수 있다.

2부, '리눅스 핵심 네트워크 서버'에서는 리눅스 서버 프로그램 중에서 가장 중요한 서버 프로그램들을 정리했다. 현재 인터넷 서비스를 제공하는 가장 중요하면서도 핵심적인 서버 프로그램들을 망라했다. 5장의 Bind를 이용한 DNS 서버 관리 방법, 6장의 Apache 서버를 이용한 웹 서버 관리 방법, 7장의 Nginx를 이용한 웹 서버 관리 방법, 8장의 Postfix를 이용한 메일 서버 관리 방법, 9장의 MariaDB를 이용한 데이터베이스 서버 관리 방법, 10장의 VSFTP를 이용한 FTP 서버 관리 방법에 대해 각 서버의 원리와 실습 내용을 자세한 설명과 함께 소개한다. 각 장은 이러한 서버에 대한 기본 사용법과 고급 기술의 사용법은 물론 보안까지 총망라해 실습과 더불어 자세하게 설명한다.

3부, '리눅스 애플리케이션 네트워크 서버'에서는 2부에서 다룬 핵심 서버들 못지않게 자주 사용되는 애플리케이션 서버 프로그램들을 모두 정리했다. 11장의 Samba 서버와 12장의 NFS 서버를 이용해 파일 공유 서비스를 제공하는 방법, 13장의 SSH 서버와 14장의 VNC 서버를 이용해 커맨드라인과 GUI를 통한 원격 서버를 관리하는 방법, 15장의 OpenLDAP 서버를 이용해 디렉토리 서비스를 사용하는 방법, 16장의 Squid를 이용해 프록시 서버를 관리하는 방법, 17장의 Apache Tomcat 서버를 이용해 자바 애플리케이션 서버를 사용하는 방법, 18장의 DHCP 서버를 사용하는 방법, 19장의 NTP를 이용해 시간 서버를 관리하는 방법, 20장의 iSCSI 서버를 이용해 SAN 서비스를 제공하는 방법을 구체적인 실습 예제와 더불어 자세하게 설명한다.

4부, '리눅스 보안, 모니터링, 로그, 백업 서버'에서는 일반적인 서버 프로그램에 특별한 서비스를 제공하는 서버 프로그램들을 정리했다. 21장의 Kerberos 서버를 이용해 각 서버에 보안 인증 서비스를 제공하는 방법, 22장의 Nagios 서버를 이용해 각 서버를 모니터링하는 방법, 23장의 Log 서버를 이용해 각 서버가 생성한 로그를 관리하는 방법, 24장의 Bacula 서버를 이용해 각 서버의 데이터를 백업하고 복구하는 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.



각 장에서 다루는 내용들을 구체적으로 살펴보면 다음과 같다.

1장, '사용자 관리'에서는 리눅스의 서버 관리를 위해 필요한 사용자와 그룹을 관리하는 방법을 설명한다. 사용자와 그룹 관리에 필요한 파일과 디렉토리, 명령어를 이용한 사용자와 그룹 관리, 패스워드 관리와 에이징 사용, GUI 프로그램을 사용한 사용자 관리에 대해 구체적인 실습 예제와 더불어 자세히 설명한다.

2장, '패키지 관리'에서는 리눅스에서 서버 프로그램을 관리하기 위한 필수 기술인 패키지 관리 방법을 설명한다. 바이너리 프로그램을 관리하는 RPM, YUM과 DNF 사용법, 소스코드를 이용해 컴파일과 설치, GUI 프로그램을 이용한 패키지 관리 등을 실습 예제와 더불어 자세히 설명한다.

3장, '서비스 관리'에서는 이전 버전에서 시스템과 서비스 관리를 위해 사용하던 Init을 대신해 CentOS 7부터 새롭게 소개된 Systemd를 다루는 방법을 설명한다. Systemd의 구성 요소와 부팅 과정, Systemd Unit과 Target을 사용하는 방법, Unit 파일을 생성하는 방법과 Journalctl을 사용하는 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

4장, 'Firewalld 방화벽'에서는 기존 Iptables 방화벽을 대신해 CentOS 7에 새롭게 소개된 Firewalld 방화벽에 대해 설명한다. Firewalld 방화벽의 개념과 서비스 시작, Firewalld Zone 소개와 Firewalld 방화벽을 사용하는 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

5장, 'Bind DNS 서버'에서는 리눅스 서버에서 Bind를 이용해 DNS 서비스를 제공하는 방법을 설명한다. DNS의 원리와 구조, Bind 패키지를 이용한 DNS 서버 구현 방법, DNS 서버의 고급 기능 사용 방법과 DNS 서버 보안, DNSSEC의 구축, GUI 프로그램 Webmin의 사용 방법 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

6장, 'Apache 서버'에서는 리눅스 서버에서 가장 인기 있는 웹 서버인 Apache 서버의 관리 방법을 설명한다. Apache 서버 설치와 서비스 시작, CGI 사용 방법과 인증 방법, 가상 호스트의 사용법과 HTTPS 구현, Apache 보안과 GUI 사용자 분석 프로그램, CMS WordPress 설치 방법 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

7장, 'Nginx 서버'에서는 Apache 서버와 더불어 최근 가장 인기 있는 웹 서버 중 하나인 Nginx 서버의 관리 방법을 설명한다. Nginx의 이해, 서비스 시작, CGI 사용법 및 가상 호스트와 HTTPS, 리버스 프록시 사용 방법과 Nginx 보안에 대해 구체적인 실습 예제와 더불어 자세히 설명한다.

8장, 'Postfix 메일 서버'에서는 리눅스에서 가장 중요한 서버 중 하나인 Postfix 메일 서버의관리 방법을 설명한다. 이메일의 개념, Postfix 서버 및 Dovecot 서버 설정과 TLS를 사용한 인증 방법, Postfix 보안, 웹 메일과 DKIM의 사용 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

9장, 'MariaDB 서버'에서는 CentOS 7뿐 아니라 여러 리눅스 배포판에서 MySQL을 대체해 기본 데이터베이스 서버로 채택돼 사용되고 있는 MariaDB 서버를 설명한다. 데이터베이스의 개념, MariaDB 서버 시작, 데이터베이스와 테이블 관리, SQL을 이용한 데이터 다루기와 사용자 관리, 백업과 복구, 복제 설정, MariaDB GUI 툴을 사용하는 방법을 실습 예제와 더불어 자세히 설명한다.

10장, 'VSFTP 서버'에서는 리눅스에서 VSFTPD 패키지를 이용해 FTP 서버를 관리하는 방법을 설명한다. FTP 서버 파일 다운로드 및 업로드 설정 방법, 사용자 관리, SSH를 이용한 SFTP와 SSL/TLS를 이용한 안전한 FTPS 서버 구축 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

11장, 'Samba 서버'에서는 리눅스에서 리눅스 및 윈도우 클라이언트에게 파일 공유 서비스를 제공하는 Samba 서버를 설명한다. Samba Stand-alone 서버 설정, 액티브 디렉토리(Active Directory) PDC 및 멤버 서버 설정, 리눅스와 윈도우에서의 클라이언트 프로그램 사용 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

12장, 'NFS 서버'에서는 리눅스 및 유닉스 시스템에서 파일 공유 서비스를 제공하는 NFS 서버를 설명한다. NFS 서버 설정 및 NFS 클라이언트 사용 방법, NFS 서버 보안에 대해 구체적인 실습 예제와 더불어 자세히 설명한다.

13장, 'OpenSSH 서버'에서는 리눅스에서 암호화 기능을 지원해 안전한 서버 접속을 가능케 하는 OpenSSH 서버를 설명한다. SSH 서버의 이해, SSH 서버 시작과 인증 방법, SSH 서버의 고급 기능 사용, SSH 클라이언트 프로그램의 사용, SSH 서버 보안에 대한 내용을 실습 예제와 더불어 자세히 설명한다.

14장, 'VNC 서버'에서는 리눅스에서 데스크톱 환경을 원격지의 클라이언트에 제공하는 VNC 서버를 설명한다. VNC 서버의 개념 및 서버 시스템 시작, 리눅스와 윈도우에서 VNC 클라이언트 프로그램을 사용하는 방법, SSH 터널링 기법을 사용한 접속 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

15장, 'OpenLDAP 서버'에서는 리눅스의 중앙 서버에 저장된 정보에 클라이언트가 TCP/IP 기반의 네트워크를 통해 접근할 수 있게 허용하는 디렉토리 서비스를 제공하는 OpenLDAP 서버를 설명한다. OpenLDAP 서버의 개념 및 서버 시작, LDAPS 구현 및 LDAP 서버 복제, OpenLDAP 클라이언트 프로그램의 사용, GUI 프로그램을 사용한 LDAP 서버 관리에 대해 구체적인 실습 예제와 더불어 자세히 설명한다.

16장, 'Squid 서버'에서는 웹 서버와 클라이언트 사이에 위치해 웹 서버의 정보를 캐시에 저장해 클라이언트에게 제공하는 Squid 프록시 서버를 설명한다. Squid 프록시 서버의 종류 및 Squid 서버 시작, 인증 사용, 리눅스와 윈도우에서 Squid 서버를 이용하는 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

17장, 'Apache Tomcat 서버'에서는 웹에서 자바 프로그램을 사용할 수 있게 지원하는 Apache Tomcat 서버를 설명한다. Tomcat 서버의 개념 및 서버 시작, 자바 애플리케이션 사용과 가상 호스트 사용 방법, Apache 서버와의 연동 방법, SSL 사용 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

18장, 'DHCP 서버'에서는 리눅스 서버에서 클라이언트에게 자동으로 IP 주소를 비롯한 네트워크 정보를 할당하는 DHCP 서버를 구축하는 방법을 설명한다. DHCP의 개념, DHCPv4와 DHCPv6 서버 설정, DHCP 릴레이 에이전트의 사용, 클라이언트 테스트 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

19장, 'NTP 서버'에서는 리눅스 서버에서 정확한 시간과 날짜 서비스를 클라이언트에게 제공하는 NTP 서버를 설명한다. NTP 서버의 개념 및 서버 설정, 리눅스와 윈도우에서 NTP 클라이언트 설정 방법, Autokey를 이용한 인증 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

20장, 'iSCSI 서버'에서는 리눅스 서버에서 TCP/IP를 이용해 스토리지 공간을 원격지의 클라이언트에게 제공하는 iSCSI 서버를 설명한다. iSCSI 기본 개념 및 서버 설정, 리눅스와 윈도우에서 클라이언트 프로그램을 이용해 iSCSI 서비스를 사용하는 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

21장, 'Kerberos 서버'에서는 리눅스에서 안전한 인증 서비스를 클라이언트에 제공하는Kerberos 서버를 설명한다. Kerberos 작동 원리 및 Kerberos 서버 설정, 클라이언트에서 Kerberos의 인증을 이용해 서비스를 사용하는 방법 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

22장, 'Nagios 서버'에서는 리눅스 서버에서 다양한 기능을 제공하는 모니터링 서버인 Nagios 서버를 설명한다. Nagios 서버 설정, 리눅스와 윈도우 서버 시스템을 Nagios 서버로 모니터링하는 방법, GUI 프로그램을 사용해 Nagios 서버를 관리하는 방법 등을 구체적인 실습 예제와 더불어 자세히 설명한다.

23장, 'Log 서버'에서는 리눅스 시스템에서 발생하는 다양한 종류의 로그 파일, 로그 서버 관리 방법을 설명한다. 로그의 종류 및 로그를 관리하기 위한 Rsyslog 서버, GUI 로그 관리 프로그램인 ELK 스택의 사용 방법을 구체적인 실습 예제와 더불어 자세히 설명한다.

24장, 'Bacula 서버'에서는 리눅스 서버에서 네트워크를 통해 백업 서비스를 제공하는 Bacula 서버를 설명한다. Bacula 서버의 개념 및 구성 요소 설명, 서버 설정, 리눅스와 윈도우 서버를 Bacula 클라이언트로 추가하는 방법, 데이터를 백업 및 복구하는 방법, Bacula 서버 관리를 위한 GUI 프로그램의 사용 방법 등을 구체적인 실습 예제와 더불어 자세히 설명한다.
[알라딘에서 제공한 정보입니다.]

목차정보

1부. 리눅스 서버 필수 시스템 관리 기술



1장. 사용자 관리



__1.1. 사용자와 그룹 관리에 필요한 파일과 디렉토리

____1.1.1. 사용자와 그룹 관리에 필요한 기본 파일

____1.1.2. 사용자 생성 환경에 필요한 파일과 디렉토리

__1.2. 명령어를 이용한 사용자 관리

____1.2.1. 사용자 생성(useradd/adduser)

____1.2.2. 사용자 정보 수정(usermod)

____1.2.3. 사용자 제거(userdel)

____1.2.4. 파일과 디렉토리 소유권자 변경(chown)

____1.2.5. 모든 사용자 접근 불허

____1.2.6. 사용자 정보 모니터링

__1.3. 리눅스 패스워드 관리

____1.3.1. 두 파일의 구조 분석

____1.3.2. 파일 /etc/shadow에서 패스워드 없이 로그인

____1.3.3. SHA-512를 이용한 패스워드 생성 시 SALT 사용 테스트

____1.3.4. 명령어 pwconv와 pwunconv 사용

__1.4. 리눅스 패스워드 에이징 사용

____1.4.1. 사용자 정보 확인

____1.4.2. 최소(m), 최대(M), 경고 날짜(W) 변경

____1.4.3. 계정 만료 기간 설정

__1.5. 그룹 관리

____1.5.1. 리눅스 그룹의 몇 가지 특징

____1.5.2. 리눅스 그룹의 종류

____1.5.3. 그룹 관리에 사용되는 파일

____1.5.4. 명령어를 사용한 리눅스 그룹 관리

____1.5.5. 명령어 gpasswd를 이용한 그룹 관리

____1.5.6. 명령어 newgrp을 사용한 그룹 변경

____1.5.7. 명령어 grpconv와 grpunconv 이용

____1.5.8. 파일 무결성 검사

__1.6. Sudoers 파일을 이용한 root 권한 부여

____1.6.1. visudo를 이용한 /etc/sudoers 파일 편집

____1.6.2. 명령어 sudo를 이용한 일반 사용자의 root 권한 이용

__1.7. 사용자 관리를 위한 GUI 프로그램 사용

____1.7.1. 사용자 관리 GUI 프로그램의 설치와 실행

____1.7.2. GUI 프로그램 사용

__1.8. 참고문헌

__1.9. 요약

__1.10. 연습문제

__1.11. 연구과제





2장. 패키지 관리



__2.1. 패키지 관리 프로그램 RPM 사용

____2.1.1. RPM 패키지의 구성 방식

____2.1.2. RPM 패키지를 만드는 과정

____2.1.3. RPM 데이터베이스의 구조

____2.1.4. 명령어 rpm을 이용한 패키지 관리

____2.1.5. SRPM 다루기

__2.2. 패키지 관리 프로그램 YUM 사용

____2.2.1. YUM의 작동 원리 이해

____2.2.2. 명령어 yum 이해

____2.2.3. YUM 저장소 생성

____2.2.4. YUM 플러그인 다루기

__2.3. 패키지 관리 프로그램 DNF 사용

____2.3.1. DNF 패키지 설치

____2.3.2. 명령어 dnf 사용

__2.4. GUI 프로그램을 이용한 패키지 관리

____2.4.1. YUMEX 패키지의 설치와 실행

____2.4.2. YUMEX 사용

__2.5. 소스코드 관리

__2.6. 참고문헌

__2.7. 요약

__2.8. 연습문제

__2.9. 연구과제



3장. 서비스 관리



__3.1. Systemd 구성 요소 이해

____3.1.1. Systemd의 구성 요소

____3.1.2. Systemd 부팅 과정

__3.2. Systemd 명령어와 Unit 이해

____3.2.1. 명령어 비교

____3.2.2. Systemd Unit 이해

__3.3. Systemd를 이용한 서비스 관리

____3.3.1. 서비스 시작과 중지 관련 명령어

____3.3.2. 서비스 활성화 관련 명령어

____3.3.3. 서비스 상태 확인 명령어

__3.4. Systemd Unit 파일 다루기

____3.4.1. Systemd Unit 파일 이해

____3.4.2. Systemd Unit 파일 생성

__3.5. Systemd Target 사용

____3.5.1. Systemd Target 정보 확인

____3.5.2. Target 정보 변경

__3.6. Systemd Journalctl 사용

____3.6.1. Journalctl 기본 사용 방법

____3.6.2. 메시지 필터링 사용

__3.7. 참고문헌

__3.8. 요약

__3.9. 연습문제

__3.10. 연구과제



4장. Firewalld 방화벽



__4.1. Firewalld 서비스 이해

____4.1.1. 방화벽의 개념과 종류

____4.1.2. Netfilter의 작동 원리와 구성 요소

____4.1.3. Firewalld 이해

__4.2. Firewalld 서비스 시작과 사용

____4.2.1. Firewalld 서비스 시작

____4.2.2. Firewalld 기본 사용

__4.3. Firewalld Zone 사용

____4.3.1. Zone의 종류

____4.3.2. Zone 사용

__4.4. Firewalld를 이용한 서비스 사용

____4.4.1. 서비스와 포트 관리

____4.4.2. 머스커레이딩과 포트 포워딩

____4.4.3. 패닉 모드

____4.4.4. 다이렉트 인터페이스

____4.4.5. ICMP 사용

____4.4.6. 오프라인 설정과 백업

____4.4.7. Firewalld Rich Rule 생성

__4.5. 참고문헌

__4.6. 요약

__4.7. 연습문제

__4.8. 연구과제



2부. 리눅스 핵심 네트워크 서버



5장. Bind DNS 서버



__5.1. DNS 서비스 원리와 구조 이해

____5.1.1. DNS의 정의

____5.1.2. DNS의 구조

____5.1.3. DNS 작동 원리

____5.1.4. 리졸버와 Lookup

__5.2. DND 서버 구축

____5.2.1. BIND 설치와 DNS 서버 시작

____5.2.2. 도메인 설정(chul.com)

____5.2.3. 도메인 추가

____5.2.4. 라운드로빈 부하 분산

____5.2.5. 마스터와 슬레이브 네임 서버 구축

__5.3. DNS 서버의 고급 기능

____5.3.1. ACL

____5.3.2. Caching Only와 Forwarding 네임 서버

____5.3.3. BIND VIEW 사용

____5.3.4. DDNS

__5.4. DNS 클라이언트 프로그램 사용

____5.4.1. NSLOOKUP

____5.4.2. HOST

____5.4.3. DIG

__5.5. DNS 서버 보안

____5.5.1. TSIG를 이용한 파일 전송(Zone Transfer)

____5.5.2. RNDC

____5.5.3. Bind의 버전 정보 관리

__5.6. DNSSEC 구축

____5.6.1. DNSSEC의 개념 이해

____5.6.2. DNSSEC 구축

__5.7. DNS 서버 GUI 프로그램 Webmin 사용

____5.7.1. Webmin 설치와 서비스 시작

____5.7.2. Webmin 접속

__5.8. 참고문헌

__5.9. 요약

__5.10. 연습문제

__5.11. 연구과제



6장. Apache 서버



__6.1. Apache 웹 서버 설치와 서비스 시작

____6.1.1. Apache 서버 설치와 기본 설정

____6.1.2. Apache 서버 서비스 시작과 PHP 사용

____6.1.3. 방화벽 설정

__6.2. Apache CGI와 UserDir 사용

____6.2.1. Perl 사용

____6.2.2. 파이썬 사용

____6.2.3. 루비 사용

____6.2.4. USERDIR에서 CGI 사용

__6.3. Apache 인증 사용

____6.3.1. Basic 인증

____6.3.2. Digest 인증

__6.4. 가상 호스트 설정

____6.4.1. 이름 기반 가상 호스트

____6.4.2. IP 기반 가상 호스트

__6.5. HTTPS(HTTP + SSL/TLS) 구현

____6.5.1. HTTPS의 작동 원리

____6.5.2. 인증서 생성

____6.5.3. SSL 설정

____6.5.4. SSL 테스트

____6.5.5. 가상 호스트에서 HTTPS 사용

__6.6. Apache 모듈 사용

____6.6.1. mod_proxy 사용

____6.6.2. mod_ratelimit 사용

____6.6.3. mod_limitipconn 사용

__6.7. Apache 보안 설정

____6.7.1. Apache 버전 정보 감추기

____6.7.2. DDoS 공격 방어와 성능 향상 설정

____6.7.3. mod_evasive 사용

____6.7.4. mod_security 사용

__6.8. WordPress 설치

____6.8.1. 데이터베이스 설정

____6.8.2. WordPress 설치

__6.9. Piwik - GUI 이용 웹사이트 분석

____6.9.1. Piwik 설치

____6.9.2. 브라우저에서 Piwik 설정

__6.10. 참고문헌

__6.11. 요약

__6.12. 연습문제

__6.13. 연구과제



7장. Nginx 서버



__7.1. Nginx 이해

____7.1.1. Nginx 구조 이해

____7.1.2. Nginx와 Apache 서버

__7.2. Nginx 서비스 시작과 PHP 사용

____7.2.1. Nginx 서버 설치와 서비스 시작

____7.2.2. PHP 사용

__7.3. Nginx CGI 사용

____7.3.1. CGI Perl 사용

____7.3.2. CGI Python 사용

____7.3.3. 루비온레일즈 사용

____7.3.4. Ghost 설치

__7.4. Nginx UserDir 사용

____7.4.1. Nginx 서버 설정

____7.4.2. 테스트 페이지 작성과 테스트

__7.5. Server Block(가상 호스트) 사용

____7.5.1. Nginx 서버 설정

____7.5.2. 테스트 페이지 작성과 테스트

__7.6. Nginx 인증 사용

____7.6.1. 서버에서의 설정

____7.6.2. 인증 테스트

__7.7. Nginx HTTPS 사용

____7.7.1. SSL/TLS 설정

____7.7.2. SSL/TLS 테스트

__7.8. Apache 서버를 위한 리버스 프록시 사용

____7.8.1. 리버스 프록시 개념과 목적

____7.8.2. Nginx 리버스 프록시 설정하기

____7.8.3. Apache 서버 설정

__7.9. 부하 분산 사용

____7.9.1. Nginx 서버에서의 설정

____7.9.2. 부하 분산 테스트

__7.10. Nginx 보안 설정

____7.10.1. 버전 정보 숨기기

____7.10.2. IP 주소 접근 제한

____7.10.3. 접속자 수와 대역폭 제한

____7.10.4. Fail2ban 사용

__7.11. 참고문헌

__7.12. 요약

__7.13. 연습문제

__7.14. 연구과제



8장. Postfix 메일 서버



__8.1. 이메일 시스템 이해

____8.1.1. 이메일 시스템의 구조

____8.1.2. Postfix 메일 처리 과정 이해

__8.2. Postfix 설치와 서버 시작

____8.2.1. 선행 조건

____8.2.2. Postfix 패키지 설치와 서비스 시작

____8.2.3. Postfix 서버 기본 설정

__8.3. IMAP과 POP3 서버 설정

____8.3.1. Dovecot 서버 설정

____8.3.2. IMAP과 POP3 테스트

__8.4. Postfix Alias 사용

____8.4.1. 로컬 Aliases

____8.4.2. 가상 Aliases

__8.5. 백업 메일 서버 설정

____8.5.1. 백업 서버 설정

____8.5.2. 백업 서버 테스트

__8.6. SSL/TLS를 이용한 Postfix 인증 설정

____8.6.1. SMTPS 개요

____8.6.2. TLS를 이용한 SMTPS 구현

__8.7. Roundcubemail 웹 메일 사용

____8.7.1. Roundcubemail 소개와 전제 조건

____8.7.2. Roundcubemail 설정

__8.8. 메일 로그 프로그램 사용

____8.8.1. pflogsumm

____8.8.2. AWstats

__8.9. Postfix 보안 설정: ClamAV와 Amavisd

____8.9.1. Postfix와 필터링 프로그램 이해

____8.9.2. Amavisd와 Spamassassin 시작

____8.9.3. ClamAV 설정

____8.9.4. Postfix 서버 설정

__8.10. PostfixAdmin 사용

____8.10.1. PostfixAdmin 설치와 데이터베이스 설정

____8.10.2. PostfixAdmin 설정

____8.10.3. PostfixAdmin 접속

__8.11. DKIM(RFC 5585) 서비스 사용

____8.11.1. DKIM 소개

____8.11.2. DKIM 서비스 사용

____8.11.3. Postfix 설정과 테스트

__8.12. 참고문헌

__8.13. 요약

__8.14. 연습문제

__8.15. 연구과제



9장. MariaDB 서버



__9.1. 데이터베이스 기본 이해

____9.1.1. 데이터베이스 구성 요소

____9.1.2. 테이블 구성 요소

__9.2. MariaDB 서비스 시작

____9.2.1. MariaDB 설치와 서비스 시작

____9.2.2. MariaDB 서버 접속

__9.3. 데이터베이스와 테이블 관리

____9.3.1. 데이터베이스 사용

____9.3.2. 테이블 사용

__9.4. SQL을 이용한 데이터 사용

____9.4.1. INSERT 구문 사용

____9.4.2. SELECT 사용

____9.4.3. UPDATE 구문 사용

____9.4.4. DELETE와 TRUNCATE 사용

__9.5. MariaDB 사용자 관리

____9.5.1. 사용자 생성과 삭제

____9.5.2. 패스워드 관리

__9.6. MariaDB 백업과 복구

____9.6.1. 논리적 백업과 물리적 백업

____9.6.2. 백업

____9.6.3. 복구

__9.7. MariaDB 데이터 복제

____9.7.1. 마스터 서버 설정(master)

____9.7.2. 슬레이브 호스트 설정

____9.7.3. 복제 테스트

__9.8. MariaDB 보안: SSL 적용

____9.8.1. MariaDB 서버 설정(master)

____9.8.2. MariaDB 클라이언트 설정과 테스트(node1)

__9.9. MariaDB GUI 툴 사용

____9.9.1. phpMyAdmin

____9.9.2. Database Workbench

__9.10. 참고문헌

__9.11. 요약

__9.12. 연습문제

__9.13. 연구과제



10장. VSFTP 서버



__10.1. FTP 서비스의 작동 원리와 VSFTP 소개

____10.1.1. FTP 서비스 작동 원리

____10.1.2. VSFTP 프로그램에 대한 간단한 소개

__10.2. VSFTP 기본 설정

____10.2.1. VSFTP 서비스 시작

____10.2.2. Anonymous 사용자 파일 업로드와 다운로드 설정

____10.2.3. FTP 사용자 계정을 위한 설정

__10.3. VSFTP 고급 및 기타 기능 설정

____10.3.1. 접근과 연결 제한

____10.3.2. VSFTP 가상 사용자 사용

____10.3.3. 기타 기능 설정

__10.4. VSFTP 보안 기능 설정: SFTP와 FTPS

____10.4.1. SFTP 사용

____10.4.2. SSL/TLS 이용한 FTPS 사용

__10.5. 참고문헌

__10.6. 요약

__10.7. 연습문제

__10.8. 연구과제



3부. 리눅스 애플리케이션 네트워크 서버



11장. Samba 서버



__11.1. Samba 데몬 소개

__11.2. Samba 서버 설치와 서비스 시작

____11.2.1. Samba 서버 설치

____11.2.2. Samba 서비스 시작

____11.2.3. Samba 서비스 방화벽 설정

__11.3. Samba Stand-alone 서버 설정

____11.3.1. 임의의 사용자를 위한 공유 디렉토리 설정

____11.3.2. 공유 디렉토리 인증 설정

____11.3.3. 사용자 홈 디렉토리 접근 설정

__11.4. Samba AD PDC 설정

____11.4.1. Samba AD PDC 설정(master)

____11.4.2. Samba PDC 사용자 관리

____11.4.3. 윈도우 7 클라이언트를 PDC에 가입

__11.5. Samba AD 멤버(Member) 서버 설정(node1)

____11.5.1. DNS와 NTP

____11.5.2. PAM과 NSS

____11.5.3. Kerberos 설정

____11.5.4. Samba 멤버 서버 설정

____11.5.5. Samba 멤버 서버 테스트

____11.5.6. 도메인 사용자에게 공유 디렉토리 제공

____11.5.7. GUI를 이용한 멤버 서버 가입

__11.6. 참고문헌

__11.7. 요약

__11.8. 연습문제

__11.9. 연구과제



12장. NFS 서버



__12.1. NFS 프로토콜 이해

____12.1.1. NFS 시스템 구조

____12.1.2. NFS 버전 이해

__12.2. NFS 서버 설정

____12.2.1. NFS 패키지 설치와 공유 디렉토리 지정

____12.2.2. NFS 서버 시작

____12.2.3. 방화벽 설정

__12.3. NFS 클라이언트 사용

____12.3.1. NFS 리눅스 클라이언트(node1)

____12.3.2. NFS 윈도우 클라이언트

__12.4. NFS 서버 보안

____12.4.1. RPCSEC_GSS를 통한 NFS 보안

____12.4.2. RPCSEC_GSS를 설정하는 방법

__12.5. 참고문헌

__12.6. 요약

__12.7. 연습문제

__12.8. 연구과제



13장. SSH 서버



__13.1. SSH(RFC 4251) 서비스 이해

____13.1.1. SSH 프로토콜 이해

____13.1.2. SSH 공개 키 인증 과정의 이해

__13.2. SSH 서버 설치와 서비스 시작

____13.2.1. OpenSSH 패키지 설치

____13.2.2. OpenSSH 서버 시작

____13.2.3. OpenSSH 서버를 위한 방화벽 설정

__13.3. SSH 서버 인증 설정

____13.3.1. 패스워드 기반 인증 설정

____13.3.2. 공개 키 기반 인증 설정

__13.4. SSH 서버 고급 기능 사용

____13.4.1. 포트 포워딩

____13.4.2. X11 포워딩

__13.5. SSH 클라이언트 프로그램 사용

____13.5.1. SSH

____13.5.2. SCP

____13.5.3. SFTP

__13.6. SSH 서버 보안 설정

____13.6.1. SSH 서버 기본 보안

____13.6.2. 사용자 접근 제어

____13.6.3. TCP 래퍼 사용

__13.7. 참고문헌

__13.8. 요약

__13.9. 연습문제

__13.10. 연구과제



14장. VNC 서버



__14.1. VNC 서비스 이해

__14.2. VNC 서버 구축

____14.2.1. VNC 서버 설치와 기본 설정

____14.2.2. VNC 서버 시작

____14.2.3. 방화벽 설정

__14.3. 리눅스 클라이언트 사용

__14.4. 윈도우 클라이언트 사용

__14.5. 웹 클라이언트 NOVNC 사용

____14.5.1. VNC 서버에서 설정(master)

____14.5.2. 웹 클라이언트에서 테스트(windows)

__14.6. SSH를 이용한 안전한 VNC 서버 사용

____14.6.1. Master 서버 설정

____14.6.2. 클라이언트 설정과 연결 테스트

__14.7. 참고문헌

__14.8. 요약

__14.9. 연습문제

__14.10. 연구과제



15장. OpenLDAP 서버



__15.1. LDAP 프로토콜 소개

____15.1.1. LDAP의 역사

____15.1.2. LDAP 프로토콜 이해

__15.2. OpenLDAP 서버 설치와 서비스 시작

____15.2.1. OpenLDAP 패키지 설치

____15.2.2. OpenLDAP 서비스 시작

____15.2.3. OpenLDAP 서버를 위한 방화벽 설정

__15.3. OpenLDAP 서버 설정

____15.3.1. LDAP 패스워드와 스키마 설정

____15.3.2. LDAP 데이터베이스에 도메인 설정

____15.3.3. LDAP 사용자 생성

____15.3.4. OpenLDAP 클라이언트 설정

__15.4. Migrationtools 사용

____15.4.1. LDAP 서버에서 설정(master)

____15.4.2. LDAP 클라이언트에서 테스트(node1)

__15.5. OpenLDAP 클라이언트 프로그램 사용

____15.5.1. LDAPSEARCH

____15.5.2. LDAPADD와 LDAPMODIFY

____15.5.3. LDAPPASSWD

____15.5.4. LDAPWHOAMI

____15.5.5. LDAPDELETE

____15.5.6. LDAPMODRDN

__15.6. OpenLDAP 보안(LDAP+SSL) 사용

____15.6.1. 서버 설정(master)

____15.6.2. 클라이언트 설정(node1)

__15.7. OpenLDAP 복제

____15.7.1. 모든 LDAP 마스터 설정(master와 node2)

____15.7.2. LDAP 클라이언트(node1) 설정과 테스트

__15.8. phpLDAPadmin를 이용한 LDAP 서버 관리

____15.8.1. phpLDAPadmin 패키지 설치와 설정

____15.8.2. phpLDAPadmin 사용

__15.9. 참고문헌

__15.10. 요약

__15.11. 연습문제

__15.12. 연구과제



16장. Squid 서버



__16.1. Squid 서버 서비스 이해

____16.1.1. 프록시 서비스의 종류

__16.2. Squid 서버 서비스 시작

____16.2.1. Squid 프락시 서버 설치와 서비스 시작

____16.2.2. Squid 서버 기본 설정 변경

____16.2.3. Squid 서버 방화벽 설정

____16.2.4. Squid 서버 사용을 위한 클라이언트 설정

__16.3. Squid 프록시 서버 인증

____16.3.1. Squid Basic 인증 설정

____16.3.2. Basic 인증 클라이언트에서 테스트

__16.4. Squid 서버 접근 제어(ACL) 사용

____16.4.1. 도메인을 이용한 접근 제어

____16.4.2. 특정 키워드를 사용한 접근 제어

____16.4.3. MAC 주소를 사용한 접근 제어

____16.4.4. 동시 접속 사이트 숫자 제한

____16.4.5. 특정 포트 접속 제한

__16.5. 리버스 프록시 서버 사용

____16.5.1. 리버스 프록시 서버 설정

____16.5.2. 리버스 프록시 서버 테스트

__16.6. SquidGuard 사용

____16.6.1. SquidGuard 설정

____16.6.2. 클라이언트 테스트

__16.7. 참고문헌

__16.8. 요약

__16.9. 연습문제

__16.10. 연구과제



17장. Tomcat 서버



__17.1. Tomcat 서버 이해

____17.1.1. Tomcat 서버의 역할

____17.1.2. Tomcat 서버의 구성 요소와 디렉토리

__17.2. Tomcat 서버 시작

____17.2.1. Tomcat 서버 설치와 서비스 시작

____17.2.2. Tomcat 서버를 위한 방화벽 설정

__17.3. Tomcat 서버 설정

____17.3.1. Tomcat 서버 설정

____17.3.2. 클라이언트에서 연결 테스트

____17.3.3. JSP 파일

__17.4. 가상 호스트 사용

____17.4.1. 설정 파일 편집

____17.4.2. 브라우저에서 확인

__17.5. Apache 서버와 Tomcat 서버 연동

____17.5.1. 연동 목적과 모듈 종류

____17.5.2. mod_proxy_ajp 모듈 사용

____17.5.3. mod_jk 모듈 사용

__17.6. SSL/TLS 사용

____17.6.1. SSL/TLS 설정

____17.6.2. SSL 설정 테스트

__17.7. 참고문헌

__17.8. 요약

__17.9. 연습문제

__17.10. 연구과제



18장. DHCP 서버



__18.1. DHCP 프로토콜 이해

____18.1.1. DHCP의 작동 과정

____18.1.2. DHCP 서버의 IP 할당 방식

____18.1.3. DHCP 서비스의 구성 요소

__18.2. DHCP 서버 서비스 시작

____18.2.1. DHCP 서버 설정

____18.2.2. 클라이언트 설정 테스트

__18.3. DHCP 서버 기능 확장

__18.4. DHCP 릴레이 에이전트 설정

____18.4.1. DHCP 릴레이 에이전트(RFC 3046) 개념 이해

____18.4.2. DHCP 릴레이 에이전트 설정

__18.5. DHCPv6 서버 설정

____18.5.1. DHCPv6 서버 설정(master)

____18.5.2. DHCPv6 클라이언트 설정

__18.6. 참고문헌

__18.7. 요약

__18.8. 연습문제

__18.9. 연구과제



19장. NPT 서버



__19.1. 시간과 날짜 설정

____19.1.1. 명령어 date

____19.1.2. 명령어 timedatectl

____19.1.3. 명령어 hwclock

____19.1.4. ntpdate 서비스

__19.2. NTP 서버 시작

____19.2.1. NTP 서버 설치와 서비스 시작

____19.2.2. NTP 서비스를 위한 방화벽 설정

__19.3. NTP 서버와 클라이언트 설정

____19.3.1. NTP 서버 설정

____19.3.2. NTP 클라이언트 설정(node1)

__19.4. NTP Autokey 인증 사용

____19.4.1. NTP 서버의 Autokey 설정

____19.4.2. NTP 클라이언트 Auto 설정

__19.5. 참고문헌

__19.6. 요약

__19.7. 연습문제

__19.8. 연구과제



20장. iSCSI 서버



__20.1. iSCSI 서비스 이해

____20.1.1. iSCSI 정의

____20.1.2. iSCSI 구성 요소

__20.2. iSCSI 서버(Target) 서비스 시작

____20.2.1. iSCSI 서버 패키지 설치

____20.2.2. iSCSI 서버 시작

____20.2.3. iSCSI 서버를 위한 방화벽 설정

__20.3. LVM을 이용한 LUN 생성

____20.3.1. LVM 이용한 스토리지 생성

____20.3.2. ISCSI 서버 Target과 LUN 생성

__20.4. 리눅스 클라이언트(Initiator) 설정

____20.4.1. iSCSI Initiator 서비스 시작

____20.4.2. iSCSI Target 서버로 로그인

____20.4.3. iSCSI Target 서버 스토리지 이용

__20.5. 윈도우 클라이언트(Initiator) 설정

__20.6. 참고문헌

__20.7. 요약

__20.8. 연습문제

__20.9. 연구과제



4부. 리눅스 보안, 모니터링, 로그, 백업 서버



21장. Kerberos 서버



__21.1. Kerberos 서비스 이해

____21.1.1. Kerberos 구성 요소

____21.1.2. Kerberos 작동 원리

____21.1.3. Kerberos 용어 설명

__21.2. Kerberos 서버 설정과 서비스 시작

____21.2.1. Kerberos 서버 설치

____21.2.2. 설정 파일 편집

____21.2.3. Kerberos 서비스 시작

____21.2.4. KDC 서버를 위한 Principal 생성

____21.2.5. Kerberos 서비스를 위한 방화벽 설정

__21.3. Kerberos 클라이언트 설정

__21.4. Kerberos를 이용한 서비스 사용

____21.4.1. SSH 서버 사용

__21.5. 참고문헌

__21.6. 요약

__21.7. 연습문제

__21.8. 연구과제



22장. Nagios 서버



__22.1. Nagios 서버 설치와 서비스 시작

____22.1.1. Nagios 서버 설치

____21.1.2. Nagios 서버 시작

__22.2. 리눅스 서버 모니터링

____22.2.1. 리눅스 호스트와 Ping 서비스 추가

____22.2.2. NRPE 플러그인 사용

__22.3. 윈도우 서버 2012 모니터링

____22.3.1. 윈도우 서버 2012에 NSClint++ 설치

____22.3.2. Nagios에서 설정

__22.4. pnp4nagios 이용

____22.4.1. pnp4nagios 사용

____22.4.2. Nagios 파일 수정

__22.5. 참고문헌

__22.6. 요약

__22.7. 연습문제

__22.8. 연구과제



23장. Log 서버



__23.1. 로그 종류 이해

____23.1.1. 시스템 로그

____23.1.2. 애플리케이션 로그

____23.1.3. 바이너리 로그

__23.2. Rsyslog 로그 서버 사용

____23.2.1. Log 서버 서비스 시작

____23.2.2. Rsyslog 설정 파일 이해

____23.2.3. Rsyslog 원격지 로그 서버 사용

____23.2.4. Rsyslog 데이터베이스 사용

____23.2.5. LogAnalyzer 사용

__23.3. 로그 GUI 프로그램 ELK 스택 사용

____23.3.1. ELK 스택 구성 요소

____23.3.2. ELK 스택 설치

____24.3.3. 클라이언트에 Filebeat 설치(node1)

____24.3.4. Kibana 접속 테스트

__23.4. 참고문헌

__23.5. 요약

__23.6. 연습문제

__23.7. 연구과제



24장. Bacula 서버



__24.1. Bacula 서비스 이해

____24.1.1. Bacula 시스템 정의

____24.1.2. Bacula 구성 요소

____24.1.3. 용어 설명

__24.2. Bacula 서버 서비스 시작

____24.2.1. Bacula 서버 패키지 설치와 데이터베이스 생성

____24.2.2. Bacula 서버 파일 설정

____24.2.3. Bacula 서버 서비스 시작

____24.2.4. Bacula 서버를 위한 방화벽 설정

__24.3. Bacula 클라이언트 설정

____24.3.1. 리눅스 클라이언트 설정(node1)

____24.3.2. 윈도우 클라이언트 설정(winserver)

__24.4. 백업과 복구 테스트

____24.4.1. Bacula 백업 테스트

____24.4.2. Bacula 복구 테스트

__24.5. Bacula GUI 툴 사용

____24.5.1. Bacula-Web 사용

____24.5.2. Bacula Bat 사용

__24.6. 참고문헌

__24.7. 요약

__24.8. 연습문제

__24.9. 연구과제
[알라딘에서 제공한 정보입니다.]