책 소개
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약
pfSense 시스템을 이용해 엔터프라이즈급 방화벽을 만드는 방법을 배울 수 있다. 네트워크에서 VLAN, 트래픽 셰이핑, 이중화 등의 고급 기능을 구현하고 다양한 서드파티 패키지를 활용해 침입 방지 시스템, 프록시 서버 등으로 확장할 수 있다. 네트워크 관리자 혹은 보안 담당자는 pfSense를 사용해 저렴한 가격으로 완벽에 가까운 방화벽/라우터를 설치할 수 있을 것이다.
이 책에서 다루는 내용
■ DHCP, 동적 DNS, 종속 포털, DNS, NTP, SNMP 등의 pfSense 서비스 설정
■ VLAN 사용을 위한 관리형 스위치 설정
■ pfSense를 사용한 트래픽 허용, 차단, 금지
■ 트래픽 특정 유형의 우선순위 조절을 위한 트래픽 셰이퍼 사용
■ pfSense와 VPN 터널의 설정 및 연결
■ 부하 분산과 CARP(Common Address Redundancy Protocol)를 활용한 이중화와 고가용성의 통합
■ 네트워크의 문제를 해결하는 pfSense의 진단 도구 탐구
이 책의 대상 독자
pfSense의 고급 기능 활용 방법에 대해 자세히 배우고자 하는 pfSense 중급 사용자를 위한 책이다. 컴퓨터 네트워킹에 익숙하고 네트워크 설정 경험이 있는 사람에게 추천한다. 이전에 pfSense를 다뤄본 경험이 있다면 더욱 좋다.
이 책의 구성
1장. 'pfSense 핵심'에서는 pfSense 시스템 및 실행에 관한 전반적인 정보를 제공한다. pfSense의 개념 및 장점, 하드웨어 고려 사항, 설치 및 설정 팁과 설치 및 업그레이드 시에 자주 발생하는 문제의 해결 방법을 다룬다.
2장. '고급 설정'에서는 DHCP, 종속 포털(captive portal), DNS, 동적 DNS, NTP와 같이 널리 쓰이는 pfSense 서비스들의 설정 방법을 설명한다. 여기서 설명한 서비스는 수많은 네트워크 구성 시나리오에서 사용된다.
3장. 'VLAN 작업'에서는 가상 LAN의 장점과 pfSense에서 구현하는 방법을 설명한다. VLAN을 사용하기 위해서는 관리형(managed) 스위치가 필요하므로 스위치 설정도 짧게 다룬다. 그리고 VLAN 설정 시 자주 발생하는 문제 해결도 소개한다.
4장. '방화벽으로서의 pfSense'에서는 주로 방화벽 규칙을 작성하는 방법을 알려주며, 인터페이스 지정 규칙과 유동 규칙도 설명한다. NAT, 앨리어스, 스케줄 등의 관련 주제도 다룬다.
5장. '트래픽 셰이핑'에서는 pfSense에서 트래픽 셰이핑을 구현하는 방법을 설명한다. 트래픽 셰이퍼 마법사를 이용한 설정뿐 아니라, 수동으로 트래픽 셰이핑 규칙을 설정하는 방법도 설명한다.
6장. 'VPN'에서는 VPN의 장점을 설명하고 몇 가지 기본 개념을 다룬 후 pfSense가 지원하는 세 개의 프로토콜(IPsec, L2TP, OpenVPN)을 사용해 VPN 터널을 구현하는 방법을 보여준다. 서버와 클라이언트 설정을 모두 설명한다.
7장. '이중화와 고가용성'에서는 네트워크 내의 단일 장애 지점을 제거하기 위한 pfSense 사용 방법을 설명한다. 게이트웨이 그룹, 부하 분산, CARP(방화벽 이중화 설정을 가능케 하는 프로토콜)를 다룰 것이다.
8장. '라우팅과 브리징'에서는 네트워크가 크고 복잡해짐에 따라 발생하기 쉬운 두 개의 주제를 다룬다. 인터페이스 간의 브리징, 정적 및 동적 라우팅을 설명하고 pfSense에서 브리지를 설정 방법과 관련된 문제들을 논의한다.
9장. '패키지를 통한 pfSense 확장'에서는 유용한 패키지와 패키지 설치 방법을 간략히 소개한다. pfSense 2.3 버전에서 패키지들의 목록이 상당히 정리됐지만 Squid, pfBlocker, Nmap 등과 같은 나머지 패키지들도 여전히 유용한 기능을 제공한다.
10장. 'pfSense 문제 해결'에서는 네트워크 문제를 해결하기 위한 프레임워크를 제공하고 일반적인 네트워킹 문제 중 일부를 설명한다. 그리고 pfSense가 제공하고 문제 해결에 유용한 몇 가지 진단 도구를 설명한다.
목차
목차
- 1장. pfSense 핵심
- pfSense 프로젝트 개요
- 설치 시나리오
- 하드웨어 요구 사항 및 규모 산정 지침
- 최소 사양
- 하드웨어 규모 산정 지침
- 노트북 사용하기
- VLAN과 DNS 소개
- VLAN 소개
- DNS 소개
- 설치 및 설정 사례
- 설치 과정에서 자주 발생하는 문제들
- pfSense 설정
- 콘솔에서의 설정
- 웹 GUI에서의 설정
- 추가 인터페이스 설정하기
- 일반 설정
- 고급 설정
- 업그레이드, 백업, 복구
- 백업 및 복구
- PFI로 설정 복구
- 요약
- 2장. 고급 설정
- DHCP
- 콘솔에서 DHCP 설정
- 웹 GUI에서의 DHCP 설정
- 웹 GUI에서 DHCPv6 설정
- DHCP 릴레이와 DHCPv6 릴레이
- DHCP와 DHCPv6 임대
- DNS
- DNS 변환자
- DNS 전달자
- DDNS
- DDNS 업데이트
- RFC 2136 업데이트
- DDNS 문제 해결
- 종속 포털
- 종속 포털 구현
- 종속 포털과 관련된 문제 해결법
- NTP
- NTP 설정
- NTP 관련 문제 해결법
- SNMP
- SNMP 설정
- SNMP 관련 문제 해결
- 요약
- DHCP
- 3장. VLAN 설정하기
- VLAN의 기본 개념
- 예제 네트워크
- 하드웨어, 설정, 보안 고려 사항
- 콘솔에서의 VLAN 설정
- 웹 GUI에서의 VLAN 설정
- 스위치에서의 VLAN 설정
- VLAN 설정 예제 1 TL-SG108E
- VLAN 설정 예제 2: 시스코 스위치
- 고정 VLAN 생성
- 동적 트렁킹 프로토콜
- VLAN 트렁킹 프로토콜
- VLAN 관련 문제 해결
- 일반적인 문제 해결 팁
- 스위치 설정 확인하기
- pfSense 설정 확인
- 문제 해결 사례
- 요약
- VLAN의 기본 개념
- 4장. 방화벽으로서의 pfSense
- 예제 네트워크
- 방화벽의 기본 개념
- 방화벽 설정의 권장 지침
- 입구 필터링을 위한 지침
- 출구 필터링을 위한 지침
- 방화벽 규칙 생성 및 편집
- 유동 규칙
- 규칙 예제
- 스케줄링
- 스케줄링 예제
- NAT/포트 포워딩
- 인바운드 NAT(포트 포워딩)
- 1:1 NAT
- 아웃바운드 NAT
- NPT
- NAT 규칙 예제
- 앨리어스
- 앨리어스 예제
- 가상 IP
- VIP 예제
- 문제 발생 시 해결 방법
- 요약
- 5장. 트래픽 셰이핑
- 예제 네트워크
- 트래픽 셰이핑 핵심
- 대기열 정책
- pfSense에서 트래픽 셰이핑 설정
- Multiple LAN/WAN 설정 마법사
- Dedicated Links 마법사
- 트래픽 셰이핑 고급 설정
- 대기열 변경
- 리미터
- 7계층 트래픽 셰이핑
- 규칙 변경하기
- 트래픽 셰이핑 예제
- 예제 #1: 리미터 추가하기
- 예제 #2: 스카이프의 우선순위 높이기
- 예제 #3: P2P 트래픽의 우선순위 낮추기
- 트래픽 셰이핑 관련 문제 해결
- 요약
- 6장. VPN
- VPN 기초
- IPSec
- L2TP
- OpenVPN
- VPN 프로토콜 선택
- VPN 터널 설정
- IPSec 설정
- IPSec 피어/서버 설정하기
- IPSec 모바일 클라이언트 설정
- 클라이언트 설정
- L2TP 설정
- OpenVPN 설정
- OpenVPN 서버 설정
- 마법사로 서버 설정
- OpenVPN 클라이언트 설정
- 클라이언트별 재정의
- OpenVPN 클라이언트 내보내기 유틸리티
- IPSec 설정
- VPN 연결이 안 될 때의 해결 방법
- 요약
- VPN 기초
- 7장. 이중화 및 고가용성
- 예제 네트워크
- 기초 개념
- 부하 분산 설정
- 게이트웨이 부하 분산
- 앨리어스를 사용해 아웃바운드 트래픽을 부하 분산
- 서버 부하 분산
- 게이트웨이 부하 분산
- CARP 설정
- 방화벽 페일오버와 CARP
- CARP로 다중 WAN 설정
- 설정 예제: 부하 분산과 CARP
- 부하 분산 및 CARP 문제 발생 시 해결 방법
- 요약
- 8장. 라우터와 브리지
- 기초 개념
- 브리징
- 라우팅
- pfSense를 통한 라우팅 설정
- 고정 경로
- 방화벽 뒤의 공개 IP 주소
- 동적 라우팅
- RIP
- OpenBGPD
- Quagga OSPF
- 정책 라우팅
- pfSense를 통한 브리징
- 브리지로 인터페이스들을 연결
- 특별한 이슈
- 브리징 예제
- 라우팅과 브리징 관련 문제 해결
- 요약
- 기초 개념
- 9장. 패키지를 통한 pfSense 기능 확장
- 기본적으로 고려할 사항
- 패키지 설치 방법
- 널리 사용되는 패키지들
- Squid
- 스퀴드와 관련된 이슈
- 역방향 프락시 서버로서의 스퀴드
- SquidGuard
- LightSquid
- pfBlockerNG
- ntopng
- Nmap
- Squid
- 기타 패키지들
- Snort
- 수리카타
- HAProxy
- 요약
- 10장. pfSense 문제 해결
- 문제 해결의 기초
- 자주 접하는 네트워크 문제
- 잘못된 서브넷 마스크 또는 게이트웨이
- 잘못된 DNS 구성
- IP 주소 중복
- 네트워크 루프
- 라우팅 문제
- 포트 설정
- 블랙홀
- 물리적 문제
- 자주 접하는 네트워크 문제
- pfSense 문제 해결 도구
- 시스템 로그
- 대시보드
- Interfaces
- Services
- Monitoring
- Traffic Graphs
- Firewall states
- States
- States summary
- pfTop
- tcpdump
- tcpflow
- ping, traceroute, netstat
- ping
- traceroute
- netstat
- 문제 해결 시나리오
- 사용자가 웹사이트에 연결할 수 없음
- VLAN 설정 문제
- 요약
- 문제 해결의 기초