AAA - Configuración

AAA (Authentication, Authorization, Accounting) centraliza el control de acceso a los dispositivos: quién entra (autenticación), qué puede hacer (autorización) y qué registró (accounting), usando una base local o servidores RADIUS/TACACS+. Incluye Role-Based CLI (Parser View). La validación está en AAA - Verificación y el diagnóstico en AAA - Troubleshooting.


Prerrequisitos

  • Un usuario local (o un servidor RADIUS/TACACS+ alcanzable).
  • Para servidores externos: conectividad IP y una llave compartida.

Conceptos previos (mínimos)

  • Authentication: verifica la identidad (usuario/contraseña).
  • Authorization: define qué está autorizado a hacer el usuario.
  • Accounting: registra lo que hizo.

TACACS+ vs RADIUS

TACACS+RADIUS
ProtocoloPropietario (Cisco)Estándar
TransporteTCP puerto 49UDP 1812 y 1813 (o 1645 y 1646)
Separación de funciones AAAProcesos diferentes para cada funciónAuthentication y Authorization son un mismo proceso
RecursosConsume más recursosProtocolo liviano
EncriptaciónEncripta todo el paqueteEncripta solo la contraseña intercambiada
Función generalRemote Access (CLI)Network Access

Habilitar AAA

Router(config)# aaa new-model

Definir servidores RADIUS/TACACS+ (añadido pro)

Estas líneas exactas son estándar de Cisco (tus diapositivas muestran la comparación y el uso, no la definición del servidor).

! TACACS+
Router(config)# tacacs server NOMBRE
Router(config-server-tacacs)# address ipv4 IP-servidor
Router(config-server-tacacs)# key LLAVE-COMPARTIDA

! RADIUS
Router(config)# radius server NOMBRE
Router(config-server-radius)# address ipv4 IP-servidor auth-port 1812 acct-port 1813
Router(config-server-radius)# key LLAVE-COMPARTIDA

! Agrupar servidores (opcional)
Router(config)# aaa group server tacacs+ GRUPO-TACACS
Router(config-sg)# server name NOMBRE

Authentication (autenticación)

Se define una lista de métodos que se prueban en orden:

Router(config)# aaa authentication login NOMBRE-LISTA método1 [método2] ...

Métodos disponibles (del menú de ayuda): group (grupo de servidores), local (usuario local), enable (contraseña enable), line (contraseña de línea), none (sin autenticación), entre otros.

Aplicar la lista a las líneas:

Router(config)# line vty 0 4
Router(config-line)# login authentication NOMBRE-LISTA

Buena práctica: poner local (o enable) como método de respaldo tras group, para no quedar fuera si el servidor no responde.


Authorization (autorización)

Router(config)# aaa authorization exec NOMBRE-LISTA método1 [método2] ...

La autorización EXEC controla el acceso a la sesión y se apoya en:

  • Privilegios (niveles 0-15).
  • Role Based CLI Access (Parser View): define vistas con solo ciertos comandos permitidos.

Parser View (Role-Based CLI) — añadido pro (CLI estándar)

Router(config)# enable view
Router# enable view                         ! entrar a la vista root (pide enable secret)
Router(config)# parser view NOMBRE-VISTA
Router(config-view)# secret CONTRASEÑA
Router(config-view)# commands exec include show ip route
Router(config-view)# commands exec include show version
Router(config-view)# commands exec include ping

Asociar un usuario a la vista:

Router(config)# username USUARIO view NOMBRE-VISTA secret CONTRASEÑA

Dos ejemplos completos de configuración

Ejemplo 1 — Autenticación AAA local para las líneas VTY

Diseño: R1 usa AAA con base local para el acceso remoto. La lista se llama ACCESO_LINEASVTY.

R1# configure terminal
R1(config)# aaa new-model
R1(config)# username admin privilege 15 secret Cisco12345

! Lista de autenticación: usuario local
R1(config)# aaa authentication login ACCESO_LINEASVTY local

! Aplicarla a las VTY
R1(config)# line vty 0 4
R1(config-line)# login authentication ACCESO_LINEASVTY
R1(config-line)# transport input ssh
R1(config-line)# end
R1# copy running-config startup-config

Ejemplo 2 — Autorización con Parser View (Role-Based CLI)

Diseño (datos de tu diapositiva): usuario carlosp / carlos123, grupo Parser View Practicantes, autenticación y autorización locales. La vista Practicantes solo permite show ip route, show version y ping.

R1# configure terminal
R1(config)# aaa new-model
R1(config)# aaa authentication login default local
R1(config)# aaa authorization exec default local

! Habilitar Role-Based CLI y crear la vista
R1(config)# enable secret EnableFuerte
R1(config)# end
R1# enable view
R1# configure terminal
R1(config)# parser view Practicantes
R1(config-view)# secret carlos123
R1(config-view)# commands exec include show ip route
R1(config-view)# commands exec include show version
R1(config-view)# commands exec include ping
R1(config-view)# exit

! Usuario asociado a la vista
R1(config)# username carlosp view Practicantes secret carlos123
R1(config)# end
R1# write memory

Verificación rápida (comprobar que quedó bien)

La verificación detallada está en AAA - Verificación.

! Configuración AAA aplicada
R1# show running-config | include aaa

! Vistas Parser View
R1# show parser view

! Servidores (si aplica)
R1# show tacacs
R1# show aaa servers

De tus diapositivas quedan la comparación TACACS+/RADIUS, aaa authentication login con sus métodos, y la autorización EXEC con Parser View. La definición de servidores y la CLI exacta del Parser View son estándar de Cisco, marcadas como añadido. Si quieres que quite algo, dime.