네트워크 구성
ZFW GNS Config 파일
- CBAC의 경우 기존 인터페이스 기반의 패킷 필터링에 SPI 기능을 추가한 방식이다.
- 다수의 인터페이스에 CBAC 정책을 구성하는 경우 각 인터페이스마다 설정을 입력해야 한다.
- ZFW의 경우 인터페이스 기반이 아닌 Zone(영역) 기반의 Firewall 방식으로 동작한다.
- 각 인터페이스를 특정 Zone에 할당한다.
- 동일 Zone에 포함된 인터페이스 사이에서 통신은 기본적으로 허용이 되고 서로 다른 Zone 사이에서 전송되는 통신은 기본적으로 차단된다.
- 서로 다른 Zone에 포함된 인터페이스 사이의 통신은 관리자가 CPL(Cisco Policy Language)이라는 명령어 체계를 사용하여 보안정책을 구성해야만 가능하다.
ZFW 구성 방법
1. Zone 생성 및 인터페이스 할당
IOS_FW Router 설정
1. Zone 생성
- 3개의 Zone을 생성한다.
zone security Inside
inside Zone을 생성한다.
<IOS_FW> conf t |
- show zone security 명령어로 정상적으로 Zone이 생성되었다.
2. 생성한 Zone을 할당
- 3개의 영역을 각 인터페이스에 적용한다.
<IOS_FW> conf t int range fa 0/0 - 1 |
- show zone security 명령어를 통해 각 Zone마다 인터페이스가 추가되었다.
- Inside 망에 있는 장비끼리는 통신이 가능하고 다른 Zone에 있는 장비는 통신이 되지 않는다.
2. CPL을 사용하여 서로 다른 Zone 사이의 보안 정책을 구성한다.
1) 필요한 경우 Access-list를 사용하여 네트워크 대역을 정의한다.
2) Class-map을 생성하여 트래픽을 분류한다.
3) Policy-map을 생성 후 위에서 설정한 Class-map을 호출하여 정책을 정의한다.
4) Zone-Pair를 생성하여 위에서 설정한 Policy-map을 적용한다.
3. Zone-Pair를 생성하여 위에서 설정한 Policy-map을 적용
- ZFW의 경우 CoPP와 동일하게 QoS 명령어 체계인 MQC(Modular Qos Command)를 활용하게 된다.
- Cisco 방화벽 장비인 ASA의 MPF(Modular Policy Framework) 기능과 거의 비슷하다.
ZFW 기능
1. SPI(Stateful Packet Inspection)을 지원
2. URL Filter
3. DoS Attack 완화 기법
4. Troughput 제한(QoS Policing 사용)
5. DPI(Deep Packet Inspection)
- Application 계층 검사 및 제어
설정 적용
1. Inside -> Outside 모든 트래픽 허용.
2. Inside -> DMZ DNS / Web(HTTP,HTTPS) / FTP / Mail(SMTP,POP3,IMAP) 트래픽 허용.
3. DMZ -> Inside 모든 트래픽 차단.
4. DMZ -> Outside DNS / SMTP
5. Outside -> Inside 모든 트래픽 차단.
6. Outside -> DMZ DNS / Web(HTTP,HTTPS) / FTP / Mail(SMTP,POP3,IMAP)
1. Inside → Outside
- 모든 트래픽을 허용한다.
1. Access-list를 사용하여 네트워크 대역 정의
<IOS_FW> conf t ip access-list extended All_Packets |
- show access-list로 확인한다.
2. Class-map을 생성하여 트래픽 분류
- 프로토콜로 트래픽을 분류하는 경우에는 Access-list를 사용하지 않고 match protocol [protocol] 명령어를 사용한다.
- 모든 트래픽을 지정하거나, 특정 네트워크 대역을 지정하는 경우에는 Access-list를 적용 후 Class-map에 등록해야 한다. (모든 트래픽 허용이므로 Access-list가 필요하다.)
match access-group name ALL-Packets
ALL-Packets Access-list를 Class-Map에 적용한다.
<IOS_FW> conf t class-map type inspect IN->OUT_Class |
3. Policy-map을 생성 후 위에서 설정한 Class-map을 호출하여 정책을 정의
policy-map type inspect IN->OUT_Policy
IN->OUT_Policy라는 이름의 정책 생성
class type inspect IN->OUT_Class inspect
정책을 정의하기 위해서 IN->OUT_Class를 호출한 후 SPI 기능을 허용한다.
<IOS_FW> conf t policy-map type inspect IN->OUT_Policy |
- 해당 메시지는 모든 패킷을 Inspect 하니 주의하라는 의미이다. (경고 표시)
4. Zone-Pair를 생성하여 위에서 설정한 Policy-map을 적용
zone-pair security IN->OUT source Inside destination Outside
IN->OUT이름의 Zone-Pair를 생성하고 Inside에서 Outside로가는 흐름을 설정한다.
<IOU_FW> conf t zone-pair security IN->OUT source Inside destination Outside |
- show zone-pair security 명령어를 통해 확인한다.
- IN->OUT이라는 Zone Fair를 만들었고 Inside에서 Outside로 이동하고 IN->OUT_Policy 정책을 적용한 것을 확인할 수 있다.
- Win7_A에서 외부로 정상적으로 통신이 가능하다.
- show policy-map type inspect zone-pair sessions 명령어를 확인해 보면 Win7_A에서 외부로 나간 세션을 확인할 수 있다.
2. Inside → DMZ
- DNS / Web(HTTP, HTTPS) / FTP / Mail(SMTP, POP3, IMAP) 트래픽을 허용한다.
1. Access-list를 사용하여 네트워크 대역 정의
- 외부에서 각각의 서버로 들어오는 패킷을 허용하는 ACL을 설정한다.
conf t ip access-list extended WINSVR_A permit ip any host 100.1.1.250 ! ip access-list extended WINSVR_B permit ip any host 100.1.1.251 ! ip access-list extended WINSVR_C permit ip any host 100.1.1.252 ! |
2. Class-map을 생성하여 트래픽 분류
class-map type inspect match-any WEB
WEB이름의 class-map을 match-any로 생성한다.
match-any는 http 또는 https 프로토콜 일 경우를 의미한다. (OR 연산)
class-map type inspect match-all WEB_SVR
match access-group name WINSVR_B
match class-map WEB
WINSVR_B이름의 class-map을 match-all로 생성한다.
match-all은 WINSVR_B과 WEB을 둘 다 만족시키는 경우이다. (AND 연산)
class-map type inspect match-any WEB match protocol http match protocol https ! class-map type inspect match-any MAIL match protocol smtp match protocol pop3 match protocol imap ! class-map type inspect match-all DNS_SVR match access-group name WINSVR_A match protocol dns ! class-map type inspect match-all WEB_SVR match access-group name WINSVR_B match class-map WEB ! class-map type inspect match-all FTP_SVR match access-group name WINSVR_C match protocol ftp ! class-map type inspect match-all MAIL_SVR match access-group name WINSVR_C match class-map MAIL ! |
3. Policy-map을 생성 후 위에서 설정한 Class-map을 호출하여 정책을 정의
policy-map type inspect IN->DMZ_Policy
class type inspect DNS_SVR
inspect
IN->DMZ_Policy라는 이름의 policy-map 생성한다.
DNS_SVR Class-Map을 SPI로 설정한다.
<IOS_FW> policy-map type inspect IN->DMZ_Policy class type inspect DNS_SVR inspect exit class type inspect WEB_SVR inspect exit class type inspect FTP_SVR inspect exit class type inspect MAIL_SVR inspect exit ! |
4. Zone-Pair를 생성하여 위에서 설정한 Policy-map을 적용
zone-pair security IN->DMZ source Inside destination DMZ
zone-pair에 Inside에서 DMZ로 가는 패킷으로 지정하고 이름을 IN->DMZ로 설정한다.
service-policy type inspect IN->DMZ_Policy
service-policy에 IN->DMZ_Policy Policy-Map을 적용한다.
<IOS_FW> zone-pair security IN->DMZ source Inside destination DMZ service-policy type inspect IN->DMZ_Policy |
- Inside에서 DMZ로 HTTP 프로토콜 통신이 가능하므로 Win7_A에서 Web서버에 정상적으로 접근이 가능하다.
- Win7_A에서 FTP 서버에 SPI를 허용해 주어서 Active 모드로 정상적으로 접근이 가능하다.
3. DMZ → Inside
- 모든 트래픽을 차단한다.
- Zone을 설정하면 기본 설정이 모든 트래픽을 차단하므로 설정할 필요가 없다.
4. DMZ → Outside
- DNS(외부 도메인 조회) / SMTP(메일 전송) 트래픽을 허용한다.
1. Class-map을 생성하여 트래픽 분류
- DNS와 STMP 프로토콜을 설정한 Class-map을 각각 생성한다.
<IOU_FW> class-map type inspect DNS_Class |
2. Policy-map을 생성 후 위에서 설정한 Class-map을 호출하여 정책을 정의
- 위에서 생성한 Class-Map을 DMZ->OUT_Policy라는 이름으로 각각 Policy-map에 등록한다.
<IOU_FW> policy-map type inspect DMZ->OUT_Policy |
3. Zone-Pair를 생성하여 위에서 설정한 Policy-map을 적용
- 위에서 설정한 Policy-map을 DMZ->OUT이라는 이름으로 zone-pair를 설정한다.
zone-pair security DMZ->OUT source DMZ destination Outside service-policy type inspect DMZ->OUT_Policy ! |
5. Outside → DMZ
- DNS / Web(HTTP, HTTPS) / FTP / Mail(SMTP, POP3, IMAP) 트래픽을 허용한다.
- 외부에서 내부로 오는 트래픽을 허용해 주는 것이므로 Inside → DMZ로 가는 ACL과 Class-Map을 사용하여 Policy-map을 생성하면 된다.
1. Policy-map을 생성 후 위에서 설정한 Class-map을 호출하여 정책을 정의
<IOS_FW> conf t |
2. Zone-Pair를 생성하여 위에서 설정한 Policy-map을 적용
<IOS_FW> zone-pair security OUT->DMZ source Outside destination DMZ |
6. Outside → Inside
- 모든 트래픽을 차단한다.
- Zone을 설정하면 기본 설정이 모든 트래픽을 차단하므로 설정할 필요가 없다.
모든 ZFW 설정 파일
ZFW, ZPF 추가기능 구현
https://peemangit.tistory.com/109
'Network > CIsco Router FW' 카테고리의 다른 글
[Firewall] ZFW, ZPF 추가기능 구현 (0) | 2019.11.22 |
---|---|
[Firewall] CBAC(Context-Based ACL) 설정 (0) | 2019.11.21 |
[Firewall] DACL(Dynamic ACL) 설정 (0) | 2019.11.21 |
[Firewall] Extended ACL 방화벽설정 추가기능들 (0) | 2019.11.20 |
[Firewall] ACL Established, RACL 설정 (0) | 2019.11.20 |
공부&일상 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요! 질문은 언제나 환영입니다😊