소개
이 문서에서는 Cisco ASA(Adaptive Security Appliances)에서 Firepower Device Manager(FDM)에서 로컬로 관리되는 Cisco Firepower Threat Defense(FTD)로 DAP(Dynamic Access Policies) 및 HostScan 컨피그레이션을 마이그레이션하는 방법에 대해 설명합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- FDM에서 RA VPN 구성에 대한 기본 지식
- ASA에서 DAP 및 Hostscan 작업
- REST API 및 FDM Rest API 탐색기에 대한 기본 지식
사용되는 구성 요소
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
- Cisco FTD 실행 버전 6.7.0
- Cisco AnyConnect Secure Mobility Clientversion 4.9.00086
- Postman 또는 기타 API 개발 툴
참고: 이 문서의 정보는 특정 랩 환경의 디바이스에서 생성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.네트워크가 작동 중인 경우 컨피그레이션 변경의 잠재적 영향을 이해해야 합니다.
FTD에는 RAVPN(Remote Access VPN) 컨피그레이션이 지원되지만 DAP에 대한 지원이 없습니다.릴리스 6.7.0부터 FTD의 DAP에 대한 API 지원이 추가되었습니다.ASA에서 FTD로 마이그레이션하는 매우 기본적인 활용 사례를 지원하기 위한 것입니다.ASA에 DAP가 구성되어 있고 FTD로 마이그레이션하는 중인 사용자는 이제 RA VPN 컨피그레이션과 함께 DAP 컨피그레이션을 마이그레이션할 수 있는 경로를 갖게 되었습니다.
DAP 컨피그레이션을 ASA에서 FTD로 성공적으로 마이그레이션하려면 다음 조건을 확인하십시오.
- DAP/Hostscan이 구성된 ASA입니다.
- ASA에서 TFTP/FTP 서버 액세스 또는 ASA에 대한 ASDM 액세스
- 버전 6.7.0 이상을 실행하는 Cisco FTD는 FDM(Firepower Device Manager)에서 관리합니다.
- RA VPN이 구성되어 FTD에서 작업 중입니다.
라이센싱
- Export Controlled Features(제어 기능 내보내기)가 활성화된 스마트 라이센싱 포털에 FTD가 등록되었습니다(RA VPN 컨피그레이션 탭을 사용하도록 허용하기 위해).
- 활성화된 AnyConnect 라이센스(APEX, Plus 또는 VPN 전용)
라이센스를 확인하려면Devices(디바이스) > Smart Licenses(Smart 라이센스)로 이동합니다.
기능 제한
- 이러한 기능은 FDM/FTD REST API 인터페이스를 통해서만 지원됩니다.
- DAP 이름에는 REST API의 공백 문자를 포함할 수 없습니다.
구성
1단계. dap.xml을 ASA에서 로컬 PC/TFTP 서버로 복사합니다.두 가지 방법으로 동일한 것을 달성할 수 있습니다.
ASDM:
Tools(툴)> File Management(파일 관리) >Fi Transfer(파일 전송)>Between Local PC and Flash(로컬 PC 및 플래시 간)로 이동합니다.
CLI:
ASA# copy flash: tftp:
Source filename []? dap.xml
Address or name of remote host []? 10.197.161.160
Destination filename [dap.xml]?
440 bytes copied in 0.40 secs
2단계. hostscan config 파일(data.xml) 및 hostscan 이미지를 ASA에서 로컬 디바이스로 복사합니다.
ASDM:
Tools(툴) > File Management(파일 관리)> Fi Transfer(파일 전송)>Between Local PC and Flash(로컬 PC 및 플래시 간)로 이동합니다.
CLI:
ASA# copy flash: tftp:
Source filename []? data.xml
Address or name of remote host []? 10.197.161.160
Destination filename [data.xml]?
500 bytes copied in 0.40 secs
ASA# copy flash: tftp:
Source filename []? hostscan_4.9.03047-k9.pkg
Address or name of remote host []? 10.197.161.160
Destination filename [hostscan_4.9.03047-k9.pkg]?
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
56202408 bytes copied in 34.830 secs (1653012 bytes/sec)
ASA#
3단계. dap.xml 및 data.xml의 base64 인코딩 값을 가져옵니다.
Mac: base64 -i <file>
Windows Powershell의 경우:certutil -encode dap.xml tmp.b64 ;findstr /v /c:- tmp.b64 > dap.b64
data.xml에 대해 동일한 절차를 수행합니다.
4단계. 브라우저 창에서 FTD의 API 탐색기를 시작합니다.
https://<FTD Management IP>/api-explorer로 이동합니다.
여기에는 FTD에서 사용할 수 있는 전체 API 목록이 포함됩니다.FDM에서 지원하는 여러 GET/POST/PUT/DELETE 요청이 있는 기본 기능을 기반으로 분할됩니다.
DAPXml 및 HostScanPackageFile은 사용되는 API입니다.
5단계. DAP에 대한 Postman 컬렉션을 추가합니다.
컬렉션의 이름을 제공합니다.이 이미지에 표시된 대로 Create(생성)를 클릭합니다.
6단계. 새 요청 추가 인증 POST/GET/PUT 요청을 승인하는 토큰을 가져오기 위해 FTD에 대한 로그인 POST 요청을 생성합니다.Save(저장)를 클릭합니다.
POST 요청의 본문에는 다음이 포함되어야 합니다.
유형 |
raw - JSON(application/json) |
grant_type |
암호 |
사용자 이름 |
FTD에 로그인하기 위한 관리자 사용자 이름 |
암호 |
관리자 사용자 계정과 연결된 비밀번호 |
POST 요청:https://<FTD Management IP>/api/fdm/latest/fdm/token
응답의 본문에는 FTD에서 PUT/GET/POST 요청을 전송하는 데 사용되는 액세스 토큰이 포함되어 있습니다.
7단계. DAP 컨피그레이션을 추가하기 위해 DAP 컨피그레이션 요청을 생성합니다.이 이미지에 표시된 대로 Save to DAP(DAP에 저장)를 클릭합니다.
Authorization(권한 부여) 탭에는 이후의 모든 POST 요청에 대해 다음 항목이 포함되어야 합니다.
유형 |
전달자 토큰 |
토큰 |
인증 POST 요청을 실행하여 받은 액세스 토큰 |
POST 요청: https://<FTD Management IP>/api/fdm/latest/object/dapxml
요청의 본문에는 3단계에서 변환된 dap.xml 및 data.xml의 base64 인코딩 값이 포함되어야 합니다. 권한 부여 특성은 수동으로 추가해야 하며 DAP 레코드 이름, 작업, 네트워크 ACL 및 우선 순위를 가져야 합니다.
dapXMLConfig |
dap.xml의 base64 인코딩 값 |
dap레코드 이름 |
기록된 DAP의 이름 |
메시지 |
DAP를 선택한 경우 사용자에게 표시되는 메시지를 입력합니다. |
우선 순위 |
DAP의 우선 순위 추가 |
네트워크 ACL |
필요한 경우 ACL 객체 추가 |
|
base64 encoded data.xml 값 |
응답의 Body에는 디바이스에 푸시될 준비가 된 DAP 컨피그레이션이 표시됩니다.
8단계. 호스트 스캔 이미지 업로드 요청을 생성합니다.이 이미지에 표시된 대로 Save to DAP(DAP에 저장)를 클릭합니다.
filetoUpload 섹션에 hostscan 파일을 업로드합니다.
POST 요청: https://<FTD Management IP>/api/fdm/latest/action/uploaddiskfile
요청의 본문에는 Body에 추가된 hostscan 파일이 양식 데이터 형식으로 포함되어야 합니다.HostScan 다운로드에서 Hostscan 파일 다운로드 가능 또는 2단계에서 ASA에서 복사한 hostscan 이미지를 사용할 수 있습니다.
키 유형은 File toUpload의 File이어야 합니다.
응답 본문은 호스트 스캔 컨피그레이션을 생성하는 데 사용되는 id/파일 이름을 제공합니다.
9단계. hostscan 패키지 구성에 대한 요청을 생성합니다.Save(저장)를 클릭합니다.
POST 요청: https://<FDM IP>/api/fdm/latest/object/hostscanpackagefiles
요청의 본문에는 이전 단계에서 얻은 id/파일 이름이 diskFileName으로 포함되어 있습니다. hostscan 패키지 이름을 running-config에 표시된 Name으로 추가합니다.
응답의 Body에는 디바이스에 푸시될 준비가 된 Hostscan 파일이 표시됩니다.
12단계. 디바이스에 컨피그레이션을 구축합니다.구성은 FDM을 통해 배포할 수 있습니다.보류 중인 변경 내용에는 푸시될 DAP 및 Hostscan 권한 부여 특성이 표시됩니다.
구축 성공 후 FTD CLI에 구성 푸시됨:
!--- RA VPN Configuration ---!
webvpn
enable outside
hostscan image disk0:/hostscan_4.9.03047-k9.pkg
hostscan enable
anyconnect image disk0:/anyconnpkgs/anyconnect-win-4.9.00086-webdeploy-k9.pkg 2
anyconnect profiles defaultClientProfile disk0:/anyconncprofs/defaultClientProfile.xml
anyconnect enable
tunnel-group-list enable
!--- DAP Authorization Configuration ---!
dynamic-access-policy-record Test
user-message "User Selected is Test"
priority 1
dynamic-access-policy-record DfltAccessPolicy
dynamic-access-policy-record Cisco
user-message "Welcome locally authenticated User"
priority 2
다음을 확인합니다.
FTD GUI에서 구축 확인
Deployment Tab(구축 탭(오른쪽 상단)) > Deployment History(구축 기록)로 이동합니다.
FTD CLI에서 구축 확인
show run webvpn
show run all dynamic-access-policy-record
show flash: | inc dap.xml
show flash: | inc data.xml
문제 해결
이 섹션에서는 컨피그레이션 문제를 해결하는 데 사용할 수 있는 정보를 제공합니다.
Dap 디버그
참고: FTD에서는 다양한 디버그 레벨을 설정할 수 있습니다.기본적으로 level 1이 사용됩니다.디버그 수준을 변경하면 디버그의 세부 정보가 증가할 수 있습니다.특히 프로덕션 환경에서 주의하여 수행합니다.
debug dap trace 127
debug dap errors 127