목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

구성

운영 방식

네트워크 다이어그램

설정

다음을 확인합니다.

문제 해결

소개

이 문서에서는 FTD에서 WCCP의 컨피그레이션 및 트러블슈팅 단계에 대해 설명합니다.

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- WCCP(Web Cache Communications Protocol) 버전 2(v2)

- FMC(Firepower Management Center)

- FTD(Firepower Threat Defense)

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.

- FMCv(Secure Firewall Management Center) v7.4.2

- FTDv(Secure Firewall Threat DefenseVirtual) v7.4.2

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

구성

WCCP(Web Cache Communication Protocol)는 웹 트래픽을 캐시 서버로 리디렉션하는 데 사용됩니다. 일반적으로 Cisco 라우터 및 방화벽과 같은 네트워크 장치에서 HTTP, HTTP 및 FTD over HTTP 요청을 프록시 서버로 리디렉션하도록 구현됩니다.

WCCP는 WCCP v1, v2 및 v3을 비롯한 다양한 버전에서 사용할 수 있으며 각 버전에서는 향상된 기능과 확장성을 제공합니다.

운영 방식

- 사용자 컴퓨터 Win10-0이 HTTPS 요청을 합니다.

- 여기서 FTD 방화벽은 사용자 PC의 게이트웨이입니다. HTTP/HTTPS 요청을 수신합니다.

- FTD는 목적지 포트가 443임을 이해하고 트래픽을 DMZ로 리디렉션합니다

- DMZ는 패킷을 GRE와 함께 캡슐화하고 프록시 서버에 요청을 전달합니다.

- 프록시 서버는 해당 캐시를 조사하거나 원래 서버에 대한 새 연결을 시작하고 사용자 시스템에 직접 응답합니다.

네트워크 다이어그램

네트워크 토폴로지

설정

이 단계에서는 FMC의 WCCP 컨피그레이션을 보여줍니다. 포트 80 및 443의 트래픽은 내부 영역에서 DMZ 영역으로 리디렉션되어야 합니다.

참고: 이 문서에서는 동적 service-id 단계에 대해 설명합니다. 포트 정보는 WCCP 클라이언트에서 학습되었습니다.

1단계: FMC GUI에 로그인하고 Object(개체) > Object Management(개체 관리) > Access List(액세스 목록) > Extended(확장) > Add Extended Access List(확장 액세스 목록 추가)로 이동합니다.

확장 액세스 목록 2개를 만듭니다.

1) Create Access List(액세스 목록 생성)를 클릭하여 사용자 트래픽을 리디렉션하고 Save(저장)를 클릭합니다.

사용자 트래픽 리디렉션

참고: 이 액세스 목록을 사용하면 WCCP 클라이언트에서 FTD로 들어오는 트래픽에 대해 Action Block(작업 차단)을 수행하여 네트워크에서 루프를 방지할 수 있습니다.

또한 내부 호스트 간의 통신이 프록시 서버로 전송되지 않도록 Action Block을 사용하여 다른 문을 만들 수 있습니다.

최종 명령문은 프록시로 리디렉션할 수 있는 다른 모든 트래픽을 허용해야 합니다.

2) WCCP 클라이언트를 식별하기 위한 액세스 목록을 생성하고 Save를 클릭합니다.

WCCP 클라이언트를 식별하는 액세스 목록

참고: WCCP 서버의 IP 주소를 포함하도록 확장 액세스 목록 구성

2단계: Object(개체) > Object Management(개체 관리) > FlexConfig > Text Object(텍스트 개체) > Add Text Object(텍스트 개체 추가)로 이동하여 WCCP 서비스를 추가하고 저장합니다.

wccp 서비스 개체를 만드는 중

참고: 이 예에서 서비스 ID는 97입니다. 일반적으로 특정 프로토콜에 할당된 다른 서비스 ID와 충돌하지 않는 사용자 지정 서비스 ID이므로 90에서 97 사이의 서비스 ID를 선택하는 것이 좋습니다.

자세한 내용은 ASA의 WCCP를 참조하십시오. 개념, 제한 사항 및 구성

3단계:

- Object(개체) > Object Management(개체 관리) > FlexConfig > Text Object(텍스트 개체)로 이동하고 isServiceIdentifier를 검색합니다.

isServiceIdentifer 검색

- isServiceIdentifier를 false에서 true로 수정합니다.

- isServiceIdentifier - false인 경우 표준 web-cacheservice 식별자를 사용합니다.Firepower Management Center 컨피그레이션 가이드 문서 참조

값을 false에서 true로 수정합니다.

참고: 또한 2단계에 표시된 사용자 정의 텍스트 객체를 생성할 수 있습니다.

4단계:

- Object(개체) > Object Management(개체 관리) > Flex Config(Flex 구성) > FlexConfig Object(FlexConfig 개체)로 이동합니다.

- wccp 키워드를 검색합니다.

- Wccp_Configure 템플릿에 대한 Clone 옵션을 클릭합니다.

wccp_configure 템플릿 복제

참고: FlexConfig 개체에 미리 정의된 템플릿 Wccp_Configure가 있습니다. 템플릿을 디바이스에 연결할 수 없습니다. 반드시 복제해야 합니다.

5단계:

- 세 번째 줄에서 $serviceIdentifier 변수를 제거하고 고유한 변수를 제공합니다.

서비스 식별자 제거

- 2단계에서 만든 변수로 Text Objectwccp-service를 삽입합니다.

- 드롭다운 메뉴에서 Insert > Insert Policy Object > Text Object를 선택합니다

wccp-service 객체를 변수로 삽입합니다.

- Variable Namewccp -service를 제공합니다.

- 사용 가능한 개체에서 wccp-service-object를 검색합니다.

- 객체를 추가하고 저장합니다.

wccp-service 개체 추가

6단계:

- wccpGroupList 변수 이름을 복사하고 고유한 변수를 제공합니다.

사전 정의된 wccpGroupList 변수 제거

- 드롭다운 메뉴에서 Insert(삽입) > Insert Policy Object(정책 개체 삽입) > Extended ACL Object(확장 ACL 개체)를 선택합니다.

wccpGrouplist 확장 ACL 추가

- 이전 단계에서 복사한 wccpGroupList 이름을 변수 이름 섹션에 붙여 넣습니다.

- 1단계에서 생성된 Available Objects(사용 가능한 개체)에서 WCCP-CLIENT를 검색합니다.

- 추가 및 저장합니다.

WCCP-CLIENT 확장 목록 추가

7단계:

- wccpRedirectList를 선택하여 고유한 변수를 복사하고 제공합니다.

wccpRedirectList 제거

- 드롭다운 메뉴에서 Insert > Insert Policy Object > Extended ACL Object를 선택합니다.

wccpRedirectList에 대한 확장 ACL 개체 선택

- 변수 이름에 wccpRedirectList를 붙여넣습니다.

- Available Object에서 Redirect_traffic을 검색합니다.

- Add(추가)를 선택하고 저장합니다.

Redirect_traffic ACL 추가

8단계:

- @wccpPassword 제거

사전 정의된 wccppassword를 제거했습니다.

- 드롭다운 메뉴에서 Key(키)를 선택합니다. Insert(삽입) > Insert Secret Key(비밀 키 삽입).

비밀 키 선택

- Add Secret Key(비밀 키 추가)를 클릭합니다.

비밀 키 추가

- 비밀 키 이름에 이름을 입력합니다.

- Password(비밀번호)를 입력합니다.

- Confirm Password(비밀번호 확인)에 동일한 비밀번호를 입력하고 Add(추가)를 클릭합니다.

사용자 정의 암호 키 추가

참고: 이 예에서 내부 인터페이스는 의 보안 영역에 속합니다.

9단계:

- 미리 정의된 보안 영역을 복사하고 $ security-zone을 고유한 변수로 교체합니다.

이름 보안 영역 복사

- 드롭다운 메뉴에서 Security Zones(보안 영역)를 선택하고 Insert(삽입) > Insert Policy Object(정책 개체 삽입)를 선택합니다.

보안 영역 선택

- 변수 이름을 보안 영역으로 붙여넣습니다.

- Available Objects(사용 가능한 개체)에서 Add(추가)할 인터페이스를 선택합니다.

- 저장을 클릭합니다.

보안 영역 추가

10단계:

- Devices(디바이스) > FlexConfig(FlexConfig)로 이동하여 New Policy(새 정책) 또는 Edit an existing policy(기존 정책 수정)를 클릭합니다.

- 구성된 Wccp_configure_clone 객체를 선택하고 >를 클릭하여 할당합니다.

- 저장을 클릭합니다.

참고: 새 정책의 경우 FTD 디바이스에 정책을 할당해야 합니다. 기존 정책의 경우 정책이 이미 할당되어 있어야 합니다.

구성된 FlexConfig를 디바이스에 할당합니다.

11단계: Deploy(구축) > Select the FTD Device(FTD 디바이스 선택) > Deploy(구축)로 이동합니다.

다음을 확인합니다.

1단계: 실행 중인 컨피그레이션을 확인합니다.

FTD CLI에 로그인하고 명령을 실행합니다show running-config wccp.

컨피그레이션 예시:

wccp 97 redirect-list Redirect_traffic group-list WCCP-CLIENT password *****

wccp interface inside 97 redirect in

컨피그레이션에 올바른 비밀번호가 있는지 확인하려면 명령을 실행합니다.

1) system support diagnostic-cli

2) enable

3) 비밀번호 없이 Enter를 누릅니다.

4) more system:running-config | include wccp

2단계: WCCP 상태 확인

명령 실행  show wccp

Global WCCP information:

Router information:

Router Identifier:                   -not yet determined-

Protocol Version:                    2.0

Service Identifier: 97

Number of Cache Engines:             1

Number of routers:                   2

Total Packets Redirected:            0

Redirect access-list:                Redirect_traffic

Total Connections Denied Redirect:   0

Total Packets Unassigned:            0

Group access-list:                   WCCP-CLIENT

Total Messages Denied to Group:      0

Total Authentication failures:       0

Total Bypassed Packets Received:     0

명령 실행 show wccp 97 서비스

WCCP service information definition:

Type:          Dynamic

Id:            97

Priority:      240

Protocol:      6

Options:       0x00000012

--------

Hash:      DstIP

Alt Hash:  -none-

Ports:     Destination:: 80 443 0 0 0 0 0 0

참고: 여기서 97은 service-id입니다. WCCP 클라이언트에서 학습한 포트 번호를 [포트]에서 볼 수 있습니다. 섹션을 참조하십시오.

3) Run the command show wccp 97 view

문제 해결

1단계: FTD가 프록시 서버에서 WCCP 요청을 받은 것과 동일한 인터페이스의 경로를 가지고 있는지 확인합니다.

이 예에서는 트래픽이 DMZ 인터페이스로 리디렉션됩니다.

>show route

S        10.xx.xx.xx 255.yyy.yyy.yyy [1/0] via 10.zz.zz.z, dmz

참고: 여기서 10.xx.xx.xx은 프록시 서버 IP이고, 255.yyy.yyy는 넷마스크이며,  10.zz.zz.z는 다음 홉 게이트웨이입니다.

2단계: 내부 및 dmz 인터페이스에서 캡처를 수행하여 트래픽이 리디렉션되도록 합니다.

포트 443의 내부 인터페이스에서 캡처

capture capinside interface inside trace detail  match tcp any any eq 443

DMZ 인터페이스의 캡처:

capture capdmz interface dmz trace detail match gre any any

참고: DMZ 인터페이스에서 GRE 프로토콜로 필터링해야 합니다. 리디렉션 패킷은 GRE 패킷에서 wccp 클라이언트로 캡슐화됩니다.

3단계: wccp에 대한 디버그

명령을 실행합니다.

debug wccp event debu wccp packet

WCCP 컨피그레이션을 위한 FDM 및 FMC 기본 모드를 지원하기 위한 Cisco 버그 IDCSCvn90518이 향상되었습니다.