목차

소개

개요

설명서 사용

사전 요구 사항

요구 사항

사용되는 구성 요소

라이센싱

디바이스 관리를 위한 ISE 구성

TACACS+ 서버 인증을 위한 인증서 서명 요청 생성

TACACS+ 서버 인증을 위한 루트 CA 인증서 업로드

ISE에 서명된 CSR(Certificate Signing Request) 바인딩

TLS 1.3 활성화

ISE에서 디바이스 관리 활성화

TACACS Over TLS 활성화

네트워크 장치 및 네트워크 장치 그룹

ID 저장소 구성

TACACS+ 셸 프로파일 구성

NX-OS 관리자

NX-OS 헬프데스크

디바이스 관리 정책 집합 구성

TLS를 통한 TACACS+용 Cisco NX-OS 구성

TACACS+ 서버 컨피그레이션

신뢰 지점 컨피그레이션

TACACS+ TLS 컨피그레이션

AAA 설정

NX-OS에 대한 사용자 액세스 테스트 및 문제 해결

확인

문제 해결

소개

이 문서에서는 Cisco ISE(Identity Services Engine)를 서버로, Cisco NX-OS 디바이스를 클라이언트로 사용하는 TACACS+ over TLS의 예를 설명합니다.

개요

TACACS+(Terminal Access Controller Access-Control System Plus) 프로토콜[RFC8907]은 하나 이상의 TACACS+ 서버를 통해 라우터, 네트워크 액세스 서버 및 기타 네트워크 디바이스에 대한 중앙 집중식 디바이스 관리를 가능하게 합니다. 특히 디바이스 관리 활용 사례에 맞게 맞춤화된 AAA(Authentication, Authorization, and Accounting) 서비스를 제공합니다.

TACACS+ over TLS 1.3 [RFC8446]은 보안 전송 계층을 도입하여 프로토콜을 개선하고 매우 중요한 데이터를 보호합니다. 이러한 통합으로 TACACS+ 클라이언트와 서버 간의 연결 및 네트워크 트래픽에 대한 기밀성, 무결성 및 인증이 보장됩니다.

설명서 사용

이 설명서는 ISE가 Cisco NX-OS 기반 네트워크 디바이스에 대한 관리 액세스를 관리할 수 있도록 활동을 두 부분으로 나눕니다.

· 1부 - 디바이스 관리를 위한 ISE 구성

· 2부 - TACACS+ over TLS용 Cisco NX-OS 구성

사전 요구 사항

요구 사항

TLS를 통해 TACACS+를 구성하기 위한 전제 조건:

- TACACS+에서 TLS를 통해 ISE 및 네트워크 디바이스의 인증서를 서명하는 데 사용되는 인증서를 서명하는 CA(Certificate Authority).

- CA(Certificate Authority)의 루트 인증서

- 네트워크 디바이스 및 ISE는 DNS 연결성을 가지며 호스트 이름을 확인할 수 있습니다.

사용되는 구성 요소

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

- ISE VMware 가상 어플라이언스, 릴리스 3.4 패치 2.

- Nexus 9000 스위치 모델 C9364D-GX2A, Cisco NX-OS 버전 10.6(1)+.

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

라이센싱

Device Administration 라이센스를 사용하면 정책 서비스 노드에서 TACACS+ 서비스를 사용할 수 있습니다. 고가용성(HA) 독립형 구축에서 디바이스 관리 라이센스를 사용하면 HA 쌍의 단일 정책 서비스 노드에서 TACACS+ 서비스를 사용할 수 있습니다.

디바이스 관리를 위한 ISE 구성

TACACS+ 서버 인증을 위한 인증서 서명 요청 생성

1단계. 지원되는 브라우저 중 하나를 사용하여 ISE 관리 웹 포털에 로그인합니다.

기본적으로 ISE는 모든 서비스에 자체 서명 인증서를 사용합니다. 첫 번째 단계는 CSR(Certificate Signing Request)을 생성하여 CA(Certificate Authority)에서 서명하도록 하는 것입니다.

2단계. Administration(관리) > System(시스템) > Certificates(인증서)로 이동합니다.

3단계.  Certificate Signing Requests(인증서 서명 요청) 아래에서 Generate Certificate Signing Request(인증서 서명 요청 생성)를 클릭합니다.

4단계. Usage(사용)에서 TACACS를 선택합니다.

5단계. TACACS+가 활성화된 PSN을 선택합니다.

6단계. Subject(제목) 필드에 적절한 정보를 입력합니다.

7단계. SAN(주체 대체 이름) 아래 DNS 이름 및 IP 주소를 추가합니다.

8단계. Generate(생성)를 클릭한 다음 Export(내보내기)를 클릭합니다.

이제 CA(Certificate Authority)에서 서명한 인증서(CRT)를 사용할 수 있습니다.

TACACS+ 서버 인증을 위한 루트 CA 인증서 업로드

1단계. Administration(관리) > System(시스템) > Certificates(인증서)로 이동합니다. Trusted Certificates(신뢰할 수 있는 인증서) 아래에서 Import(가져오기)를 클릭합니다.

2단계. TACACS CSR(Certificate Signing Request)에 서명한 CA(Certificate Authority)에서 발급한 인증서를 선택합니다. ISE 내에서 인증을 위한 신뢰 옵션이 활성화되었는지 확인합니다.

Submit(제출)을 클릭합니다. 이제 인증서가 Trusted Certificates(신뢰할 수 있는 인증서) 아래에 표시되어야 합니다.

ISE에 서명된 CSR(Certificate Signing Request) 바인딩

CSR(Certificate Signing Request)에 서명하면 ISE에 서명된 인증서를 설치할 수 있습니다.

1단계. Administration(관리) > System(시스템) > Certificates(인증서)로 이동합니다. Certificate Signing Requests(인증서 서명 요청) 아래에서 이전 단계에서 생성된 TACACS CSR을 선택하고 Bind Certificate(인증서 바인딩)를 클릭합니다.

2단계. 서명된 인증서를 선택하고 Usage(사용) 아래의 TACACS(TACACS) 확인란이 선택된 상태로 유지되는지 확인합니다.

3단계. Submit(제출)을 클릭합니다. 기존 인증서 교체에 대한 경고가 표시되면 Yes(예)를 클릭하여 계속 진행합니다.

이제 인증서가 올바르게 설치되어야 합니다. System Certificates(시스템 인증서)에서 이를 확인할 수 있습니다.

TLS 1.3 활성화

TLS 1.3은 ISE 3.4.x에서 기본적으로 활성화되지 않습니다. 수동으로 활성화해야 합니다.

1단계. Administration(관리) > System(시스템) > Settings(설정)로 이동합니다.

2단계. Security Settings(보안 설정)를 클릭하고 TLS Version Settings(TLS 버전 설정)에서 TLS1.3 옆의 확인란을 선택한 다음 Save(저장)를 클릭합니다.

경고: TLS 버전을 변경하면 Cisco ISE 애플리케이션 서버가 모든 Cisco ISE 구축 시스템에서 다시 시작됩니다.

ISE에서 디바이스 관리 활성화

디바이스 관리 서비스(TACACS+)는 ISE 노드에서 기본적으로 활성화되지 않습니다. PSN 노드에서 TACACS+를 활성화합니다.

1단계. Administration(관리) > System(시스템) > Deployment(구축)로 이동합니다. ISE 노드 옆의 확인란을 선택하고 Edit(수정)를 클릭합니다.

2단계. General Settings(일반 설정) 아래에서 아래로 스크롤하여 Enable Device Admin Service(디바이스 관리 서비스 활성화) 옆의 확인란을 선택합니다.

3단계. 구성을 저장합니다. 이제 ISE에서 디바이스 관리 서비스가 활성화됩니다.

TACACS Over TLS 활성화

1단계. Work Centers(작업 센터) > Device Administration(디바이스 관리) > Overview(개요)로 이동합니다.

2단계. Deployment(구축)를 클릭합니다. TACACS over TLS를 활성화할 PSN 노드를 선택합니다.

3단계. 기본 포트 6049를 유지하거나 TACACS over TLS에 대해 다른 TCP 포트를 지정한 다음 Save(저장)를 클릭합니다.

네트워크 장치 및 네트워크 장치 그룹

ISE는 여러 디바이스 그룹 계층을 사용하여 강력한 디바이스 그룹화를 제공합니다. 각 계층 구조는 네트워크 장치의 개별적이고 독립적인 분류를 나타냅니다.

1단계. Work Centers(작업 센터) > Device Administration(디바이스 관리) > Network Resource(네트워크 리소스)로 이동합니다. Network Device Groups(네트워크 디바이스 그룹)를 클릭합니다.

모든 디바이스 유형 및 모든 위치는 ISE에서 제공하는 기본 계층입니다. 사용자 자신의 계층을 추가 하고 정책 조건에서 나중에 사용 할 수 있는 네트워크 장치를 식별 하는 데 다양 한 구성 요소를 정의 합니다.

2단계. 이제 NS-OX 디바이스를 네트워크 디바이스로 추가합니다. Work Centers(작업 센터) > Device Administration(디바이스 관리) > Network Resources(네트워크 리소스)로 이동합니다. Add(추가)를 클릭하여 새 네트워크 디바이스 POD2IPN2를 추가합니다.

3단계. 디바이스의 IP 주소를 입력하고 디바이스의 위치 및 디바이스 유형을 매핑합니다. 마지막으로, TACACS+ over TLS 인증 설정을 활성화합니다.

팁: 디바이스에 명령을 전송할 때마다 TCP 세션이 다시 시작되지 않도록 하려면 단일 연결 모드를 활성화하는 것이 좋습니다.

ID 저장소 구성

이 섹션에서는 디바이스 관리자를 위한 ID 저장소를 정의합니다. 이 저장소는 ISE 내부 사용자 및 지원되는 모든 외부 ID 소스가 될 수 있습니다. 여기서는 외부 ID 소스인 AD(Active Directory)를 사용합니다.

1단계. Administration(관리) > Identity Management(ID 관리) > External Identity Stores(외부 ID 저장소) > Active Directory로 이동합니다. 새 AD 조인트 포인트를 정의하려면 Add(추가)를 클릭합니다.

2단계. Join Point 이름과 AD 도메인 이름을 지정하고 Submit(제출)을 클릭합니다.

3단계 "Would you like to Join all ISE Nodes to this Active Directory Domain?(이 Active Directory 도메인에 모든 ISE 노드를 조인하시겠습니까?)" 프롬프트가 나타나면 Yes(예)를 클릭합니다.

4단계. AD 조인 권한이 있는 자격 증명을 입력하고 ISE를 AD에 조인합니다. 작동 여부를 확인하려면 Status(상태)를 선택합니다.

5단계. Groups(그룹) 탭으로 이동한 다음 Add(추가)를 클릭하여 디바이스 액세스 권한이 부여된 사용자에 따라 필요한 모든 그룹을 가져옵니다. 이 예는 이 가이드의 권한 부여 정책에 사용된 그룹을 보여줍니다.

TACACS+ 셸 프로파일 구성

권한 부여 권한 레벨을 사용하는 Cisco IOS 디바이스와 달리 Cisco NX-OS 디바이스는 RBAC(role-based access control)를 구현합니다. ISE에서 Nexus-type Common Tasks를 사용하여 Cisco NX-OS 디바이스의 사용자 역할에 TACACS+ 프로필을 매핑할 수 있습니다.

NX-OS 디바이스에서 사전 정의된 역할은 NX-OS 플랫폼마다 다릅니다. 두 가지 일반적인 방법은 다음과 같습니다.

- network-admin - 미리 정의된 네트워크 관리자 역할은 스위치의 모든 명령에 대한 완전한 읽기 및 쓰기 액세스를 갖습니다. 디바이스(예: Nexus 7000)에 여러 VDC가 있는 경우에만 기본 VDC(가상 디바이스 컨텍스트)에서 사용할 수 있습니다. NX-OS CLI 명령 show cli 구문 roles network-admin을 사용하여 이 역할에 사용할 수 있는 전체 명령 목록을 확인합니다.

- network-operator - 미리 정의된 네트워크 관리자 역할은 스위치의 모든 명령에 대한 완전한 읽기 액세스 권한을 갖습니다. 디바이스(예: Nexus 7000)에 여러 VDC가 있는 경우에만 기본 VDC에서 사용할 수 있습니다. NX-OS CLI 명령 show cli 구문 roles network-operator를 사용하여 이 역할에 사용 가능한 전체 명령 목록을 확인합니다.

다음으로 TACACS 프로필 2개(NXOS 관리 및 NXOS 헬프데스크)를 정의합니다.

NX-OS 관리자

1단계. 다른 프로필을 추가하고 이름을 NX-OS Admin으로 지정합니다.

2단계. 속성 설정 드롭다운에서 필수를 선택합니다. 일반 작업의 네트워크 역할 옵션에서 관리자를 선택합니다.

3단계. Submit(제출)을 클릭하여 프로파일을 저장합니다.

NX-OS 헬프데스크

1단계. ISE UI에서 Work Centers(작업 센터) > Device Administration(디바이스 관리) > Policy Elements(정책 요소) > Results(결과) > TACACS Profiles(TACACS 프로필)로 이동합니다. 새 TACACS 프로필을 추가하고 이름을 NXOS HelpDesk로 지정합니다. Common Task Type(공통 작업 유형) 드롭다운으로 이동하여 Nexus.

사용자 역할과 관련된 템플릿 변경 사항을 확인할 수 있습니다. 구성하려는 사용자 역할에 따라 이러한 옵션을 선택할 수 있습니다.

2단계. 속성 설정 드롭다운에서 필수를 선택합니다. 일반 작업 아래의 네트워크 역할 옵션에서 운영자를 선택합니다.

3단계.  Save(저장)를 클릭하여 프로필을 저장합니다.

디바이스 관리 정책 집합 구성

Policy Sets(정책 집합)는 Device Administration(디바이스 관리)에 대해 기본적으로 활성화되어 있습니다. 정책 집합은 TACACS 프로파일을 쉽게 적용할 수 있도록 디바이스 유형에 따라 정책을 구분할 수 있습니다. 예를 들어 Cisco IOS 디바이스는 권한 레벨 및/또는 명령 세트를 사용하는 반면 Cisco NX-OS 디바이스는 사용자 지정 특성을 사용합니다.

1단계. Work Centers(작업 센터) > Device Administration(디바이스 관리) > Device Admin Policy Sets(디바이스 관리 정책 집합)로 이동합니다. 새 정책 집합 NX-OS 디바이스를 추가합니다. 조건에서 DEVICE:Device Type EQUALS All Device Types#NXOS를 지정합니다. Allowed Protocols(허용된 프로토콜) 아래에서 Default Device Admin(기본 디바이스 관리)을 선택합니다.

2단계. Save(저장)를 클릭하고 오른쪽 화살표를 클릭하여 이 정책 집합을 구성합니다.

3단계. 인증 정책을 생성합니다. 인증의 경우 AD를 ID 저장소로 사용합니다. If Auth fail(인증 실패), If User not found(사용자를 찾을 수 없는 경우) 및 If Process fail(프로세스가 실패한 경우)에 기본 옵션을 그대로 둡니다.

4단계. 권한 부여 정책을 정의합니다.

AD(Active Directory)의 사용자 그룹을 기반으로 권한 부여 정책을 생성합니다.

예를 들면 다음과 같습니다.

· AD 그룹 장치 관리자의 사용자에게는 NXOS 관리자 TACACS 프로필이 할당됩니다.

· AD 그룹 디바이스 RO의 사용자에게는 NXOS 헬프데스크 TACACS 프로필이 할당됩니다.

TLS를 통한 TACACS+용 Cisco NX-OS 구성

주의: 콘솔 연결에 연결할 수 있고 제대로 작동하는지 확인합니다.

팁: 디바이스에서 잠기지 않도록 컨피그레이션을 변경하는 동안 TACACS 대신 로컬 자격 증명을 사용하도록 임시 사용자를 구성하고 AAA 인증 및 권한 부여 방법을 변경하는 것이 좋습니다.

TACACS+ 서버 컨피그레이션

1단계. 초기 컨피그레이션

POD2IPN2# sho run tacacs

feature tacacs+

tacacs-server host 10.225.253.209 key 7 "F1whg.123"

aaa group server tacacs+ tacacs2

server 10.225.253.209

use-vrf management

신뢰 지점 컨피그레이션

1단계. 키 레이블을 생성합니다. 이 경우 ecc 키 쌍을 사용합니다.

POD2IPN2(config)# crypto key generate ecc label ec521-label exportable modulus 521

2단계. 이를 신뢰 지점과 연결합니다.

POD2IPN2(config)# crypto ca trustpoint ec521-tp

POD2IPN2(config-trustpoint)# ecckeypair ec521-label

3단계. CA 공개 키를 설치합니다.

POD2IPN2(config)# crypto ca authenticate ec521-tp

input (cut & paste) CA certificate (chain) in PEM format;

end the input with a line containing only END OF INPUT :

-----BEGIN CERTIFICATE-----

MIIFlDCCA3ygAwIBAgIIIM10AsTaN/UwDQYJKoZIhvcNAQELBQAwajELMAkGA1UE

BhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRAwDgYDVQQHEwdSYWxlaWdo

MQ4wDAYDVQQKEwVDaXNjbzEMMAoGA1UECxMDU1ZTMRIwEAYDVQQDEwlTVlMgTGFi

Q0EwHhcNMjUwNDI4MTcwNTAwWhcNMzUwNDI4MTcwNTAwWjBqMQswCQYDVQQGEwJV

UzEXMBUGA1UECBMOTm9ydGggQ2Fyb2xpbmExEDAOBgNVBAcTB1JhbGVpZ2gxDjAM

BgNVBAoTBUNpc2NvMQwwCgYDVQQLEwNTVlMxEjAQBgNVBAMTCVNWUyBMYWJDQTCC

AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJvZUOyn2vIn6gKbx3M7vaRq

2YjwZlzSH6EkEvxnJTy+kksiFD33GyHQepk7vfp4NFU5OtQ4HC7t/A0v9grDa3QW

VwvV4MBbJhFM3s0J/ejgDYcMZhIAaPy0Zo5WLboOkXEiKjPLatkXojB8FVrhLF3O

jMBSqwa4/Wlniy5S+7s4FFxsCf20COWfBAsnrs0tatIIhmcnx+VLJP7MRm8f0w4m

mutNo7IhbJSrgAFXmjlbBjMmgspObULo/wxMHdTbtPBf11HRHTkNIo3qy04UADL2

WpoGhgT/FaxxBo2UBcnYVaP+jjRE0NYT973MCbVAAxtNVU6bEBR0z+LWniACzupm

+qh23SL43uW5A3iSw/BuU1E9p7B0e8oDNKU6gXlojKyLP/gC7j8AeP03ir+KZui8

b8X4iYn/67SbzZFhwxn3chkW4JYhQ4AImW1An2Q1+DMoZL7zRtSqQ3g9ZqRIMzQN

gJ+kQXe7QtT/u6m1MrtjE3gAEVpL334rTIxy9hpKZIkB86t2ZA3JX8CLsbCa13sA

z1XCoONX+6a1ekmXuAOI+t3c1sNbN2AtFi4cJovTA01xh60I4QnK+MNQKpTjt/E4

ydHl0rrurXsZummj9QBnkX4pqY7cDLHhdMKpbjDwg7jVLl783nTc9wYptQEPi5sw

83g9EMgKV0ARIiVUa/qlAgMBAAGjPjA8MAwGA1UdEwQFMAMBAf8wEQYJYIZIAYb4

QgEBBAQDAgAHMBkGCWCGSAGG+EIBDQQMFgpTVlMgTGFiIENBMA0GCSqGSIb3DQEB

CwUAA4ICAQAIT308oL2L6j/7Kk9VdcouuaBsN9o2pNEk3KXeZ8ykarNoxa87sFYr

AwXIwfAtk8uEHfnWu1QcZ3LkEJM9rHVCZuKsYd3D6qojo54HTpxRLgo5oKOdGayi

iSEkSSX9qyfLfINHR2JSVqJU6jLsy86X7q7RmIPMS7XfHzuddFNI4YDoXRX67X+v

O+ja6zTQqjO6lqJhmrSkyFbYf/ZTpe4d1OzJsZjNsNOr8bF9nOA/7qNZLp3Z3cpU

PU0KdbiSvRqnPw3e8TfITVmAzcx8COI2SrYFMSUazolVBvDy+xRKxyAtMbneGz6n

YdykCimThCKoKwp/pWpYBEqIEOf5ay1PKURO/8aj/B7aluJapXkmnj5qPeGhN0pB

Q9r14reov4so2EspkXS7CrH9yGfpIyTprokz1UvZBZ8vloI7YZmjFmem+5rT6Gnk

eU/lX7nV61SYG5W5K+I8uaKuyBHOMn7Amy3DYL5c5GJBqxpSZERbLXV+Q1tIgRU8

8ggzlPOdsS/i6Lo7ypYX0eB9HgVDCkzQsLXQuHGj/2WsgPgdRcjkvnyURk4Jx+Ib

xDrmo7e0XPpSW4l72a6Kl8CR3U2Cr4wsuvndPEq/qd2NRSBWffF0XE/AJHQG7STT

HaXLU9r2Ko603oecu8ysGTwLlIt/9T1/FOb0xZRugWcpJrVoTgDGuA==

-----END CERTIFICATE-----

END OF INPUT

Fingerprint(s): SHA1

Fingerprint=0E:B1:81:E9:5A:3E:D7:80:3B:C5:A8:05:9A:85:4A:95:C8:3A:C7:37

Do you accept this certificate? [yes/no]:yes

POD2IPN2(config)#

POD2IPN2(config)# show crypto ca certificates ec521-tp

Trustpoint: ec521-tp

CA certificate 0:

subject=C = US, ST = North Carolina, L = Raleigh, O = Cisco, OU = SVS, CN = SVS LabCA

issuer=C = US, ST = North Carolina, L = Raleigh, O = Cisco, OU = SVS, CN = SVS LabCA

serial=20CD7402C4DA37F5

notBefore=Apr 28 17:05:00 2025 GMT

notAfter=Apr 28 17:05:00 2035 GMT

SHA1 Fingerprint=0E:B1:81:E9:5A:3E:D7:80:3B:C5:A8:05:9A:85:4A:95:C8:3A:C7:37

purposes: sslserver sslclient

POD2IPN2(config)#

4단계. 스위치 ID 인증서 요청을 생성합니다.

POD2IPN2(config)# crypto ca enroll ec521-tp

Create the certificate request ..

Create a challenge password. You will need to verbally provide this

password to the CA Administrator in order to revoke your certificate.

For security reasons your password will not be saved in the configuration.

Please make a note of it.

Password:C1sco.123

The subject name in the certificate will be the name of the switch.

Include the switch serial number in the subject name? [yes/no]:yes

The serial number in the certificate will be: FDO26490P4T

Include an IP address in the subject name [yes/no]:yes

ip address:10.225.253.177

Include the Alternate Subject Name ? [yes/no]:no

The certificate request will be displayed...

-----BEGIN CERTIFICATE REQUEST-----

MIIBtjCCARcCAQAwKTERMA8GA1UEAwwIUE9EMklQTjIxFDASBgNVBAUTC0ZETzI2

NDkwUDRUMIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQBGYT0iw7OvqIKQ/a22Lkg

Na9IhqWQvetjxKq485gqTSBEo6LzpkOhPAGE4jBveNHxYeIA7PfNWvJ7xTBWjDNX

/IYBm6E7Hd7q42OmCe8Mef+bqJBdJ9wzpyEjhI2lIIoXt4814nBxObkIWWyR5cZN

IiXTLk8P4IMZvPq8jRnELRxd8RGgSTAYBgkqhkiG9w0BCQcxCwwJQzFzY28uMTIz

MC0GCSqGSIb3DQEJDjEgMB4wHAYDVR0RAQH/BBIwEIIIUE9EMklQTjKHBArh/bEw

CgYIKoZIzj0EAwIDgYwAMIGIAkIAtzQ/knrW2ovCVoHAuq1v2cr0n3NenS/44lul

+3H1y52vn4Rm4CGU3wkzXU3qGO3YjhNjCXjhp3+uN2afFf1Wf3ECQgC4bumHVsfj

b5rwPIC5tvXS/A8upqIzqc0yt3OhpaDDOTWzzvZY7qFflCOl5p6pvUpHigqoZNg5

9xhNdM1CQSykOg==

-----END CERTIFICATE REQUEST-----

5단계. CA에서 서명한 스위치 ID 인증서를 가져옵니다.

POD2IPN2(config)# crypto ca import ec521-tp certificate

input (cut & paste) certificate in PEM format:

-----BEGIN CERTIFICATE-----

MIIDzTCCAbWgAwIBAgIIC6zS76XYDm8wDQYJKoZIhvcNAQELBQAwajELMAkGA1UE

BhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRAwDgYDVQQHEwdSYWxlaWdo

MQ4wDAYDVQQKEwVDaXNjbzEMMAoGA1UECxMDU1ZTMRIwEAYDVQQDEwlTVlMgTGFi

Q0EwHhcNMjUwNTA3MTkxMDAwWhcNMjYwNTA3MTkxMDAwWjApMREwDwYDVQQDDAhQ

T0QySVBOMjEUMBIGA1UEBRMLRkRPMjY0OTBQNFQwgZswEAYHKoZIzj0CAQYFK4EE

ACMDgYYABAEZhPSLDs6+ogpD9rbYuSA1r0iGpZC962PEqrjzmCpNIESjovOmQ6E8

AYTiMG940fFh4gDs981a8nvFMFaMM1f8hgGboTsd3urjY6YJ7wx5/5uokF0n3DOn

ISOEjaUgihe3jzXicHE5uQhZbJHlxk0iJdMuTw/ggxm8+ryNGcQtHF3xEaNAMD4w

HgYJYIZIAYb4QgENBBEWD3hjYSBjZXJ0aWZpY2F0ZTAcBgNVHREBAf8EEjAQgghQ

T0QySVBOMocECuH9sTANBgkqhkiG9w0BAQsFAAOCAgEANWGb6zm9TDPaM1yhPMx7

8uai/pF7VQC8NSCdOKqr4w4+695ZjJuzqFL3msodOQK0EdgxpQ4+pEa5msRtK0i8

mms2X/Px3/EShxoHrZO1PUXNTyZidXpGd/yTrdQAl5JzpW4pEudrbCJMZEEYtqoP

wD+4OE8vKoYEgyWlDrpRZOZG1usZczuUhLZ8orkjXMhWC26Q5aqiCKkyg10Nt6nb

liToeYy2Q0cTesSZCKvRBv6Ewj5JuSLemURyB4GHY+LT+A9UNmEUM2n+OSVEL329

3hS0qd/YVaEuxjjlg7jNiZb+UsW7IRx3Q8Rouo++ISACpH/PJ61LnlVxhXombiS6

INoa0GvQONrl+lFT8ADIdZ/Ukd5Ubhc9bh/sYzf4MWtkK1wVO16Hv7vGpSMYonD6

a271im+tJPyKnnezQ6OykzlGqsL/Ta6JOdip/fEYp8UmRq9InDh23gDjqrojWL7k

1R/bZpc+baMYXd/2pohHMSN0sKN3zNrJTlnuk5KCqFx//4P7mAoyZYiTIDp1pkYS

VK65fJKD+pYxIhSP9wN8rnwtzSCWb0Z78sg006Y6wIXyTP0UB3FWhD+GxtTkmEce

ZnAQbgxpgrg5lhpAEVabpC/zRU4UzTuBmv/WoY12zwXCr5WLXEOWtIe8CwFjSnch

lfKuuebdZkbwz72r7OyyX/U=

-----END CERTIFICATE-----

POD2IPN2(config)#

스위치 ID 인증서가 등록되었는지 확인합니다.

POD2IPN2(config)# show crypto ca certificates ec521-tp

Trustpoint: ec521-tp

certificate:

subject=CN = POD2IPN2, serialNumber = FDO26490P4T

issuer=C = US, ST = North Carolina, L = Raleigh, O = Cisco, OU = SVS, CN = SVS LabCA

serial=0BACD2EFA5D80E6F

notBefore=May  7 19:10:00 2025 GMT

notAfter=May  7 19:10:00 2026 GMT

SHA1 Fingerprint=CA:B2:BF:3F:ED:2F:06:0B:C1:E4:DC:21:9F:9D:54:61:98:32:C5:13

purposes: sslserver sslclient

CA certificate 0:

subject=C = US, ST = North Carolina, L = Raleigh, O = Cisco, OU = SVS, CN = SVS LabCA

issuer=C = US, ST = North Carolina, L = Raleigh, O = Cisco, OU = SVS, CN = SVS LabCA

serial=20CD7402C4DA37F5

notBefore=Apr 28 17:05:00 2025 GMT

notAfter=Apr 28 17:05:00 2035 GMT

SHA1 Fingerprint=0E:B1:81:E9:5A:3E:D7:80:3B:C5:A8:05:9A:85:4A:95:C8:3A:C7:37

purposes: sslserver sslclient

POD2IPN2(config)#

TACACS+ TLS 컨피그레이션

주의: 로컬 자격 증명이 있는 콘솔을 통해 이러한 컨피그레이션 변경을 수행합니다.

1단계. 전역 tacacs tls를 구성합니다.

POD2IPN2(config)# tacacs-server secure tls

2단계. ISE 포트를 ISE 서버가 구성된 TLS 포트로 변경합니다.

POD2IPN2(config)# tacacs-server host 10.225.253.209 port 6049 timeout 60 single-connection

3단계. 스위치에서 구성한 ISE 서버를 TLS 연결을 위한 신뢰 지점에 연결합니다.

POD2IPN2(config)# tacacs-server host 10.225.253.209 tls client-trustpoint ec521-tp

4단계. tacacs 서버 그룹을 생성합니다.

POD2IPN2(config)# aaa group server tacacs+ tacacs2

POD2IPN2(config-tacacs+)# server 10.225.253.209

POD2IPN2(config-tacacs+)# use-vrf management

5단계. 구성을 확인합니다.

POD2IPN2# sho run tacacs

feature tacacs+

tacacs-server secure tls

tacacs-server host 10.225.253.209 port 6049 timeout 60 single-connection

tacacs-server host 10.225.253.209 tls client-trustpoint ec521-tp

aaa group server tacacs+ tacacs2

server 10.225.253.209

use-vrf management

6단계. AAA 인증을 구성하기 전에 원격 사용자를 테스트합니다.

POD2IPN2# test aaa group tacacs2

user has been authenticated

POD2IPN2#

AAA 설정

주의: AAA 컨피그레이션을 진행하기 전에 원격 사용자 인증이 성공적인지 확인합니다.

1단계. AAA 원격 인증을 구성합니다.

POD2IPN2(config)# aaa authentication login default group tacacs2

2단계. 명령을 테스트한 후 AAA 원격 권한 부여를 구성합니다.

주의: authorization-status"가 "AAA_AUTHOR_STATUS_PASS_ADD로 표시되는지 확인합니다.

POD2IPN2#    test aaa authorization command-type config-commands default user

command "feature bgp"

sending authorization request for: user: pamemart, author-type:3, cmd "feature bgp"

user pamemart, author type 3, command: feature bgp, authorization-status:0x1(AAA_AUTHOR_STATUS_PASS_ADD)

3단계. AAA 명령 및 config-command 권한 부여를 구성합니다.

POD2IPN2(config)# aaa authorization config-commands default group tacacs2 local

POD2IPN2(config)# aaa authorization commands default group tacacs2 local

NX-OS에 대한 사용자 액세스 테스트 및 문제 해결

확인

Cisco NX-OS에 대한 디바이스 관리 컨피그레이션이 완료되었습니다. 컨피그레이션을 검증해야 합니다.

1단계. SSH를 수행하고 다양한 역할로 NX-OS 디바이스에 로그인합니다.

2단계. 디바이스 CLI(Command Line Interface)에서 사용자가 올바른 명령에 액세스할 수 있는지 확인합니다. 예를 들어 헬프데스크 사용자는 일반 IP 주소(예: 10.225.253.129)를 ping할 수 있어야 하지만 실행 중인 컨피그레이션을 표시하려면 거부됩니다.

POD2IPN1# ping 10.225.253.129 vrf management

PING 10.225.253.129 (10.225.253.129): 56 data bytes

64 bytes from 10.225.253.129: icmp_seq=0 ttl=254 time=0.817 ms

64 bytes from 10.225.253.129: icmp_seq=1 ttl=254 time=0.638 ms

64 bytes from 10.225.253.129: icmp_seq=2 ttl=254 time=0.642 ms

64 bytes from 10.225.253.129: icmp_seq=3 ttl=254 time=0.651 ms

64 bytes from 10.225.253.129: icmp_seq=4 ttl=254 time=0.712 ms

--- 10.225.253.129 ping statistics ---

5 packets transmitted, 5 packets received, 0.00% packet loss

round-trip min/avg/max = 0.638/0.692/0.817 ms

POD2IPN1#

POD2IPN1# show running-config

% Permission denied for the role

문제 해결

NX-OS 구성 검증.

POD2IPN2# show crypto ca certificates

POD2IPN2# show crypto ca trustpoints

POD2IPN2# show tacacs-server statistics <server ip>

사용자 연결 및 역할을 표시하려면 다음 명령을 사용합니다.

show users

show user-account [<user-name>]

A sample output is shown below:

POD2IPN1# show users

NAME LINE TIME IDLE PID COMMENT

Admin-ro pts/5 May 15 23:49 . 16526 (10.189.1.151) session=ssh *

POD2IPN1# show user-account Admin-ro

user:Admin-ro

roles:network-operator

account created through REMOTE authentication

Credentials such as ssh server key will be cached temporarily only for this user account

Local login not possible...

TACACS+ 트러블슈팅에 유용한 디버깅입니다.

debug TACACS+ aaa-request

2016 Jan 11 03:03:08.652514 TACACS[6288]:  process_aaa_tplus_request:Checking for state of mgmt0 port with servergroup demoTG

2016 Jan 11 03:03:08.652543 TACACS[6288]:  process_aaa_tplus_request: Group demoTG found. corresponding vrf is management

2016 Jan 11 03:03:08.652552 TACACS[6288]:  process_aaa_tplus_request: checking for mgmt0 vrf:management against vrf:management of requested group

2016 Jan 11 03:03:08.652559 TACACS[6288]:  process_aaa_tplus_request:port_check will be done

2016 Jan 11 03:03:08.652568 TACACS[6288]:  state machine count 0

2016 Jan 11 03:03:08.652677 TACACS[6288]:  is_intf_up_with_valid_ip(1258):Proper IOD is found.

2016 Jan 11 03:03:08.652699 TACACS[6288]:  is_intf_up_with_valid_ip(1261):Port is up.

2016 Jan 11 03:03:08.653919 TACACS[6288]:  debug_av_list(797):Printing list

2016 Jan 11 03:03:08.653930 TACACS[6288]:  35 : 4 : ping

2016 Jan 11 03:03:08.653938 TACACS[6288]:  36 : 12 : 10.1.100.255

2016 Jan 11 03:03:08.653945 TACACS[6288]:  36 : 4 : <cr>

2016 Jan 11 03:03:08.653952 TACACS[6288]:  debug_av_list(807):Done printing list, exiting function

2016 Jan 11 03:03:08.654004 TACACS[6288]:  tplus_encrypt(659):key is configured for this aaa sessin.

2016 Jan 11 03:03:08.655054 TACACS[6288]:  num_inet_addrs: 1 first s_addr: -1268514550 10.100.1.10 s6_addr : fd49:42a0:033a:22e9::/64

2016 Jan 11 03:03:08.655065 TACACS[6288]:  non_blocking_connect(259):interface ip_type: IPV4

2016 Jan 11 03:03:08.656023 TACACS[6288]:  non_blocking_connect(369): Proceeding with bind

2016 Jan 11 03:03:08.656216 TACACS[6288]:  non_blocking_connect(388): setsockopt success error:22

2016 Jan 11 03:03:08.656694 TACACS[6288]:  non_blocking_connect(489): connect() is in-progress for server 10.1.100.21

2016 Jan 11 03:03:08.679815 TACACS[6288]:  tplus_decode_authen_response: copying hostname into context 10.1.100.21

SSL 디버그를 활성화합니다.

touch '/bootflash/.enable_ssl_debugs'

디버그 파일 내용을 표시합니다.

cat /tmp/ssl_wrapper.log.*

ISE GUI에서 Operations(운영) > TACACS Livelog(TACACS 라이브 로그)로 이동합니다. 모든 TACACS 인증 및 권한 부여 요청은 여기에서 캡처되며, 세부 정보 버튼은 특정 트랜잭션이 통과/실패한 이유에 대한 자세한 정보를 제공합니다.

내역 보고서의 경우: Work Centers(작업 센터) > Device Administration(디바이스 관리) > Reports(보고서) > Device Administration(디바이스 관리)으로 이동하여 인증, 권한 부여 및 계정 관리 보고서를 가져옵니다.