소개
이 문서에서는 UCSM(Unified Compute System Manager)에서 TACACS+(Terminal Access Controller Access-Control System Plus) 인증의 컨피그레이션에 대해 설명합니다. TACACS+는 AAA(Authentication, Authorization and Accountability Services)에 사용되는 네트워크 프로토콜로서, 서버를 통해 규칙을 관리하고 생성할 수 있는 NAD(Network Access Devices)를 관리하기 위한 중앙 집중식 방법을 제공합니다. 이 활용 시나리오에서는 ISE(Identity Services Engine)를 사용합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- Cisco UCS Manager(UCSM)
- TACACS+(Terminal Access Controller Access-Control System Plus)
- Identity Services Engine(ISE)
사용되는 구성 요소
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
- UCSM 4.2(3d)
- Cisco ISE(Identity Services Engine) 버전 3.2
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
설정
TACACS+ 컨피그레이션 ISE
설정 TACACS+ ISE에서
1단계. 첫 번째 작업은 ISE에 TACACS+ 인증을 처리할 수 있는 올바른 기능이 있는지 검토하는 것입니다. PSN(Policy Service Node) 내에서 Device Admin Service(디바이스 관리 서비스) 기능을 원하는지 확인하고, Administration(관리) > System(시스템) > Deployment(구축) 메뉴를 탐색하고, ISE가 TACACS+를 수행할 노드를 선택한 다음 버튼 편집을 선택해야 합니다.
2단계. Device Administration Service라는 해당 기능이 표시될 때까지 아래로 스크롤합니다(이 기능을 활성화하려면 먼저 노드에서 Policy Server 페르소나를 활성화해야 하며 구축에서 TACACS+에 대한 라이센스를 사용할 수 있어야 함). 해당 확인란을 선택한 다음 컨피그레이션을 저장합니다.
3단계. ISE를 TACACS+로 서버로 사용할 NAD(Network Access Device)를 구성하고 Administration(관리) > Network Resources(네트워크 리소스) > Network Devices(네트워크 디바이스) 메뉴로 이동한 다음 +Add(추가) 버튼을 선택합니다.
4단계. 이 섹션에서는 다음을 구성합니다.
- TACACS+ 클라이언트가 될 UCSM의 이름.
- UCSM에서 ISE에 요청을 보내는 데 사용하는 IP 주소.
- TACACS+ 공유 암호 - UCSM과 ISE 간의 패킷을 암호화하는 데 사용되는 암호입니다.
참고: 클러스터 컨피그레이션의 경우 두 패브릭 인터커넥트의 관리 포트 IP 주소를 추가합니다. 이 컨피그레이션을 통해 첫 번째 패브릭 인터커넥트에 장애가 발생하고 시스템이 두 번째 패브릭 인터커넥트로 장애 조치될 경우 원격 사용자가 계속 로그인할 수 있습니다. 모든 로그인 요청은 Cisco UCS Manager에서 사용하는 가상 IP 주소가 아니라 이러한 IP 주소에서 소싱됩니다.
ISE에서 특성 및 규칙 구성
1단계. TACACS+ 프로필을 생성하고 Work Centers(작업 센터) > Device Administration(디바이스 관리) > Policy Elements(정책 요소) > Results(결과) > TACACS Profiles(TACACS 프로필) 메뉴로 이동한 다음 Add(추가)를 선택합니다.
2단계. 이 섹션에서는 이름을 사용하여 프로파일을 구성하고 Custom Attributes(맞춤형 특성) 섹션에서 Add(추가)를 선택한 다음 특성 MANDATORY(필수)의 특성을 하나 생성하고 이름을 cisco-av-pair로 지정합니다. 이 값에서 UCSM에서 사용 가능한 역할 중 하나를 선택하고 이를 셸 역할로 입력합니다. 이 예에서는 역할 관리자가 사용되며 선택한 입력은 아래에 표시된 shell:roles="admin"이어야 합니다.
동일한 메뉴에서 TACACS 프로필에 대한 Raw View를 선택하면 ISE를 통해 전송할 특성의 해당 컨피그레이션을 확인할 수 있습니다.
참고: cisco-av 쌍 이름은 TACACS+ 제공자에 대한 특성 ID를 제공하는 문자열입니다.
3단계. 선택 항목을 선택하고 컨피그레이션을 저장합니다.
4단계. UCSM에 사용할 Device Admin Policy Set(디바이스 관리 정책 집합)를 생성하고 Work Centers(작업 센터) > Device Administration(디바이스 관리) > Device Admin Policy Sets(디바이스 관리 정책 집합) 메뉴를 탐색한 다음, 기존 정책 집합에서 기어 아이콘을 선택하고 Insert new row above(위에 새 행 삽입)를 선택합니다
5단계. 이 새 정책 집합의 이름을 지정하고, UCSM 서버에서 진행될 TACACS+ 인증의 특성에 따라 조건을 추가하고, Allowed Protocols(허용되는 프로토콜) > Default Device Admin(기본 디바이스 관리)으로 선택하고 컨피그레이션을 저장합니다.
6단계. > 보기 옵션에서 선택하고 인증 정책 섹션에서 ISE가 UCSM에 입력할 사용자 이름 및 자격 증명을 쿼리할 외부 ID 소스를 선택합니다. 이 예에서는 자격 증명이 ISE에 저장된 내부 사용자에 해당합니다.
7단계. Authorization Policy(권한 부여 정책)라는 섹션이 Default(기본) 정책이 될 때까지 아래로 스크롤하여 기어 아이콘을 선택한 다음 위에 하나의 규칙을 삽입합니다.
8단계. 새 권한 부여 규칙의 이름을 지정하고, 그룹 멤버십으로 이미 인증될 사용자에 대한 조건을 추가하고, Shell Profiles(셸 프로파일) 섹션에서 이전에 구성한 TACACS 프로파일을 추가하고, 컨피그레이션을 저장합니다.
UCSM의 TACACS+ 컨피그레이션
로그인Cisco UCS Manager
GUI에 관리자 권한이 있는 사용자.
사용자에 대한 역할 생성
1단계. Navigation(탐색) 창에서 Admin(관리) 탭을 선택합니다.
2단계. Admin(관리) 탭에서 All(모두) > User Management(사용자 관리) > User Services(사용자 서비스) > Roles(역할)를 확장합니다.
3단계. 의Work
창에서General
탭을 클릭합니다.
4단계. 사용자 지정 역할에 대해 추가를 선택합니다. 이 샘플은 기본 역할을 사용합니다.
5단계. 이전에 TACACS 프로파일에서 구성된 이름과 역할 일치를 확인합니다.
TACACS+ 제공자 생성
1단계. Navigation(탐색) 창에서 Admin(관리) 탭을 선택합니다.
2단계. Admin(관리) 탭에서 All(모두) > User Management(사용자 관리) > TACACS+를 확장합니다.
3단계. 의Work
창에서General
탭을 클릭합니다.
4단계. 의Actions
영역, 선택Create TACACS+ Provider.
5단계. 의Create TACACS+ Provider
마법사에서 적절한 정보를 입력합니다.
- Hostname(호스트 이름) 필드에 TACACS+ 서버의 IP 주소 또는 호스트 이름을 입력합니다.
- Cisco UCS에서 사용자를 인증하는 데 이 공급자를 사용하는 순서입니다.
Cisco UCS가 이 Cisco UCS 인스턴스에 정의된 다른 공급자를 기준으로 다음 사용 가능한 주문을 할당하도록 하려면 1에서 16 사이의 정수를 입력하거나, 최저 가용성 또는 0(영)을 입력합니다.
- Key(키) 필드에서 데이터베이스에 대한 SSL 암호화 키입니다.
-
Confirm Key 필드에서 SSL 암호화 키가 확인을 위해 반복됩니다.
-
Port(포트) 필드에서 Cisco UCS가 TACACS+ 데이터베이스와 통신하는 데 사용되는 포트(포트 49 기본 포트).
-
Timeout 필드에서는 시간 초과되기 전에 시스템이 TACACS+ 데이터베이스에 연결을 시도하는 데 보낸 시간(초)입니다.
6단계. 확인을 선택합니다.
참고: IP 주소가 아닌 호스트 이름을 사용하는 경우 Cisco UCS Manager에서 DNS 서버를 구성해야 합니다.
TACAC+ 제공 기관 그룹 생성
1단계.의Navigation
창에서 Admin
탭을 클릭합니다.
2단계. 에Admin
탭, 확장 All > User Management > TACACS+
.
3단계. 의Work
창에서 General
탭을 클릭합니다.
4단계. 의Actions
영역, 선택Create TACACS+ Provider
그룹.
5단계. Create TACACS+ Provider Group(TACACS+ 제공자 그룹 생성) 대화 상자에서 요청한 정보를 입력합니다.
- Name(이름) 필드에 그룹의 고유한 이름을 입력합니다.
- TACACS+ Providers(TACACS+ 제공자) 테이블에서 그룹에 포함할 제공자를 선택합니다.
- 제공자를 >> 버튼을 선택하여 포함된 제공자 테이블에 추가합니다.
6단계. 확인을 선택합니다.
인증 도메인 생성
1단계. 의 Navigation
창에서 Admin
탭을 클릭합니다.
2단계. 에 Admin
탭, 확장 All > User Management > Authentication
3단계. 의Work
창에서 General
탭을 클릭합니다.
4단계. 의Actions
영역, 선택Create a Domain.
5단계. Create Domain(도메인 생성) 대화 상자에서 요청한 정보를 입력합니다.
- Name(이름) 필드에 도메인의 고유한 이름을 입력합니다.
- Realm에서 Tacacs 옵션을 선택합니다.
- Provider Group 드롭다운 목록에서 이전에 생성한 TACACS+ 제공자 그룹을 선택하고 OK를 선택합니다
문제 해결
UCSM의 일반적인 TACACS+ 문제
- 잘못된 키 또는 잘못된 문자입니다.
- 잘못된 포트.
- 방화벽 또는 프록시 규칙으로 인해 공급자와 통신하지 않습니다.
- FSM은 100%가 아닙니다.
UCSM TACACS+ 컨피그레이션 확인:
UCSM에서 FSM(Finite State Machine)의 상태를 확인하는 컨피그레이션이 100% 완료로 표시되었는지 확인해야 합니다.
UCSM 명령줄에서 컨피그레이션을 확인합니다
UCS-A# scope security
UCS-A /security # scope tacacs
UCS-A /security/tacacs # show configuration
UCS-A /security/tacacs # show fsm status
NXOS에서 Tacacs 컨피그레이션을 확인합니다.
UCS-A# connect nxos
UCS-A(nx-os)# show tacacs-server
UCS-A(nx-os)# show tacacs-server groups
NX-OS에서 인증을 테스트하려면test aaa
명령(NXOS에서만 사용 가능).
서버의 구성을 확인합니다.
UCS-A(nx-os)# test aaa server tacacs+ <TACACS+-server-IP-address or FQDN> <username> <password>
UCSM 검토
연결 가능성 확인
UCS-A# connect local-mgmt
UCS-A(local-mgmt)# ping <TACACS+-server-IP-address or FQDN>
포트 확인
UCS-A# connect local-mgmt
UCS-A(local-mgmt)# telnet <TACACS+-server-IP-address or FQDN> <Port>
오류를 확인하는 가장 효과적인 방법은 NXOS 디버그를 활성화하는 것입니다. 이 출력으로 그룹, 연결 및 잘못된 통신을 유발하는 오류 메시지를 볼 수 있습니다.
- UCSM에 대한 SSH 세션을 열고 관리자 권한이 있는 권한이 있는 모든 사용자(로컬 사용자 권장)와 로그인하고 NX-OS CLI 컨텍스트로 변경한 다음 터미널 모니터를 시작합니다.
UCS-A# connect nxos
UCS-A(nx-os)# terminal monitor
- 디버그 플래그를 활성화하고 로그 파일에 대한 SSH 세션 출력을 확인합니다.
UCS-A(nx-os)# debug aaa all
UCS-A(nx-os)# debug aaa aaa-request
UCS-A(nx-os)# debug tacacs+ aaa-request
UCS-A(nx-os)# debug tacacs+ aaa-request-lowlevel
UCS-A(nx-os)# debug tacacs+ all
- 이제 새 GUI 또는 CLI 세션을 열고 원격 사용자(TACACS+)로 로그인을 시도합니다.
- 로그인 실패 메시지가 표시되면 세션을 닫거나 아래 명령으로 디버그를 끕니다.
UCS-A(nx-os)# undebug all
ISE의 일반적인 TACAC 문제
이 오류는 다음 버그 때문에 발생합니다. https://bst.cloudapps.cisco.com/bugsearch/bug/CSCwc91917, 이 결함이 해결된 위치를 확인하십시오.
ISE 검토
1단계. TACACS+ 서비스 기능이 실행 중인지 검토합니다. 이 기능은 다음과 같이 체크 인할 수 있습니다.
- GUI: 노드가 Administration(관리) > System(시스템) > Deployment(구축)에서 DEVICE ADMIN(서비스 디바이스 관리)과 함께 나열되어 있는지 검토합니다.
- CLI: show ports 명령을 실행합니다 | tacacs+에 속하는 TCP 포트에 연결이 있는지 확인하려면 49를 포함합니다.
ise32/admin#show ports | include 49
tcp: 169.254.4.1:49, 169.254.2.1:49, 169.254.4.1:49, 10.31.123.57:49
2단계. TACACS+ 인증 시도와 관련된 livelogs가 있는지 확인합니다. 이는 Operations(작업) > TACACS(TACACS) > Live logs(라이브 로그) 메뉴에서 확인할 수 있습니다.
실패 사유에 따라 컨피그레이션을 조정하거나 실패 원인을 해결할 수 있습니다.
3단계. 어떤 라이브 로그도 표시되지 않는 경우 패킷 캡처를 계속 진행하려면 Operations(운영) > Troubleshoot(문제 해결) > Diagnostic Tools(진단 도구) > General Tools(일반 도구) > TCP Dump(TCP 덤프) 메뉴로 이동하고 추가에서 선택합니다.
UCSM에서 인증을 보내는 정책 서비스 노드를 선택한 다음 필터에서 인증이 전송되는 UCSM의 IP에 해당하는 ip 호스트 X.X.X.X를 입력하고 캡처 이름을 지정한 다음 아래로 스크롤하여 저장하고, 캡처를 실행한 다음 UCSM에서 로그인합니다.
4단계. PSN에서 디버그에서 구성 요소 런타임 AAA를 활성화 합니다. 여기서 인증이 수행 됩니다. 작업 > 문제 해결 > 디버그 마법사 > 디버그 로그 구성, PSN 노드를 선택 한 다음 편집 버튼에서 다음을 선택 합니다.
런타임 AAA 구성 요소를 찾아 그 수준을 debug로 변경하여 문제를 다시 재현하고 로그 분석을 진행합니다.
참고: 자세한 내용은 Cisco Youtube의 채널 How to Enable Debugs on ISE 3.x Versions https://www.youtube.com/watch?v=E3USz8B76c8에 있는 비디오를 참조하십시오.
관련 정보
Cisco UCS Manager 관리 가이드
Cisco UCS CIMC 컨피그레이션 가이드 TACACS+