Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Configurar

Configuración de FreeRADIUS para la Autenticación UCSM

Configuración de autenticación RADIUS de UCSM

Verificación

Información Relacionada

Introducción

Este documento describe la configuración de la autenticación UCSM mediante RADIUS.

Prerequisites

Requirements

- FreeRADIUS está operativo.

- UCS Manager, Fabric Interconnects y el servidor FreeRADIUS se comunican entre sí.

El público objetivo son los administradores de UCS que tienen conocimientos básicos de las funciones de UCS.

Cisco recomienda que tenga conocimientos o esté familiarizado con estos temas:

- Edición del archivo de configuración de Linux

- UCS Manager

- FreeRADIUS

- Ubuntu o cualquier otra versión de Linux

Componentes Utilizados

La información que contiene este documento se basa en las siguientes versiones de software y hardware.

- UCS Manager (UCSM) 4.3(3a) o superior.

- Fabric Interconnect 6464

- Ubuntu 22.04.4 LTS

- FreeRADIUS versión 3.0.26

La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.

Configurar

Configuración de FreeRADIUS para la Autenticación UCSM

Estos pasos requieren el privilegio de acceso raíz al servidor freeRADIUS.

Paso 1. Configure el dominio UCSM como cliente.

Navegue hasta el archivo clients.conf ubicado en el directorio /etc/freeradius/3.0 y edite el archivo usando un editor de texto de su preferencia. Para este ejemplo, se ha utilizado el editor 'vim' y se ha creado el cliente 'UCS-POD'.

root@ubuntu:/etc/freeradius/3.0# vim clients.conf

*Inside clients.conf file*

client UCS-POD {

ipaddr = 10.0.0.100/29

secret = PODsecret

}

El campo ipaddr sólo puede contener la IP de la Fabric Interconnect principal. En este ejemplo, se utilizó la IP 10.0.0.100/29 IP para incluir la IP VIP + mgmt0 de ambos FI.

El campo secret contiene la contraseña que se utiliza en la configuración RADIUS de UCSM (Paso 2).

Paso 2. Configure la lista de usuarios con permiso para autenticarse en UCSM.

En el mismo directorio - /etc/freeradius/3.0 - abra el archivo users y cree un usuario. Para este ejemplo, se definió el usuario 'alerosa' con la contraseña 'password' para iniciar sesión como administrador en el dominio UCSM.

root@ubuntu:/etc/freeradius/3.0# vim users

*Inside users file*

alerosa Cleartext-Password := "password"

Reply-Message := "Hello, %{User-Name}",

cisco-avpair = "shell:roles=admin"

El atributo cisco-avpair es obligatorio y debe seguir la misma sintaxis.

El rol de administrador se puede cambiar para cualquier rol configurado en UCSM en Admin > User Management > Roles. En esta configuración específica, existen estos roles

Si un usuario necesita tener varias funciones, se puede utilizar una coma entre las funciones y la sintaxis debe ser similar a cisco-avpair = "shell:roles=aaa,facility-manager,read-only". Si se define en el usuario una función que no se ha creado en UCSM, la autenticación en UCSM falla.

Paso 3. Habilite/Inicie FreeRADIUS daemon.

Active el inicio automático para FreeRADIUS en el arranque del sistema.

systemctl enable freeradius

Inicie el daemon FreeRADIUS:

systemctl restart freeradius

Precaución: Cuando se realizan cambios en los archivos 'clients.conf' o 'users', el demonio FreeRADIUS debe reiniciarse, de lo contrario los cambios no se aplican

Configuración de autenticación RADIUS de UCSM

La configuración de UCS Manager sigue las instrucciones de este documento: https://www.cisco.com/en/US/docs/unified_computing/ucs/sw/gui/config/guide/141/UCSM_GUI_Configuration_Guide_141_chapter7.html#topic_5827616698166149965

Paso 1. Propiedades predeterminadas configuradas para proveedores RADIUS.

Vaya a Admin > User Management > RADIUS y utilice los valores predeterminados.

Paso 2. Crear un proveedor RADIUS.

En Admin > User Management, seleccione RADIUS y haga clic en Create RADIUS Provider.

Nombre de host/FQDN (o dirección IP) es la dirección IP o FQDN del servidor/máquina virtual.

Key es la clave/secreto definida en el servidor RADIUS en el archivo 'clients.conf' (Paso 1. de la configuración de FreeRADIUS).

Paso 3. Cree un Grupo de Proveedores RADIUS.

En Admin > User Management, seleccione RADIUS y haga clic en Create RADIUS Provider Group.

Proporciónele un nombre, en este caso se utilizó 'FreeRADIUS'. A continuación, agregue el proveedor RADIUS creado en el paso 2 a la lista de proveedores incluidos.

Paso 4. Cree un nuevo dominio de autenticación (opcional).

El siguiente paso no es obligatorio. Sin embargo, se llevó a cabo para tener un dominio de autenticación independiente, distinto del que utilizaban los usuarios locales, que está visible en la pantalla de inicio de sesión inicial de UCS Manager.

Sin un dominio de autenticación independiente, la pantalla de inicio de sesión de UCS Manager tiene el siguiente aspecto:

Pantalla de inicio de sesión de UCS Manager sin un dominio de autenticación independiente

Mientras que con un dominio de autenticación independiente, esta es la pantalla de inicio de sesión de UCS Manager que agrega una lista de los dominios de autenticación creados.

Pantalla de inicio de sesión de UCS Manager con un dominio de autenticación independiente

Esto resulta útil si desea separar la autenticación RADIUS de otros tipos de autenticación que también se utilizan en el dominio UCS.

Vaya a Admin > User Management > Authentication > Create a Domain.

Elija el nombre del dominio de autenticación recién creado y elija el botón de opción RADIUS. En el grupo de proveedores, seleccione el grupo de proveedores creado en el paso 3 de esta sección.

Verificación

FreeRADIUS tiene un par de herramientas de depuración y solución de problemas como las que se describen a continuación:

1. El comando journalctl -u freeradius proporciona información valiosa sobre el daemon freeRADIUS, como errores en la configuración y marcas de tiempo de errores o inicializaciones. En el siguiente ejemplo podemos ver que el archivo users fue modificado incorrectamente. (mods-config/files/authorized es el enlace simbólico del archivo de usuarios):

Sep 14 12:18:50 ubuntu freeradius[340627]: /etc/freeradius/3.0/mods-config/files/authorize[90]: Entry does not begin with a user name

Sep 14 12:18:50 ubuntu freeradius[340627]: Failed reading /etc/freeradius/3.0/mods-config/files/authorize

2. El directorio /var/log/freeradius contiene algunos archivos log que contienen una lista de todos los logs registrados para el servidor RADIUS. En este ejemplo:

Tue Sep 24 05:48:58 2024 : Error: Ignoring request to auth address * port 1812 bound to server default from unknown client 1.1.1.1 port 60574 proto udp

3. El comando systemctl status freeradius proporciona información sobre el servicio freeRADIUS:

root@ubuntu:/# systemctl status freeradius

● freeradius.service - FreeRADIUS multi-protocol policy server

Loaded: loaded (/lib/systemd/system/freeradius.service; enabled; vendor preset: enabled)

Active: active (running) since Mon 2024-09-16 11:43:38 UTC; 1 week 4 days ago

Docs: man:radiusd(8)

man:radiusd.conf(5)

http://wiki.freeradius.org/

http://networkradius.com/doc/

Main PID: 357166 (freeradius)

Status: "Processing requests"

Tasks: 6 (limit: 11786)

Memory: 79.1M (limit: 2.0G)

CPU: 7.966s

CGroup: /system.slice/freeradius.service

└─357166 /usr/sbin/freeradius -f

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Auth-Type PAP for attr Auth-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Auth-Type CHAP for attr Auth-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Auth-Type MS-CHAP for attr Auth-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Autz-Type New-TLS-Connection for attr Autz-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Post-Auth-Type REJECT for attr Post-Auth-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Post-Auth-Type Challenge for attr Post-Auth-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: Compiling Post-Auth-Type Client-Lost for attr Post-Auth-Type

Sep 16 11:43:38 ubuntu freeradius[357163]: radiusd: #### Skipping IP addresses and Ports ####

Sep 16 11:43:38 ubuntu freeradius[357163]: Configuration appears to be OK

Sep 16 11:43:38 ubuntu systemd[1]: Started FreeRADIUS multi-protocol policy server.

Para obtener más información sobre la solución de problemas y las comprobaciones de FreeRADIUS, consulte este documento: https://documentation.suse.com/smart/deploy-upgrade/pdf/freeradius-setup-server_en.pdf.

Para UCSM, los inicios de sesión correctos e incorrectos que utilizan usuarios RADIUS se pueden rastrear en el FI principal mediante los siguientes comandos:

- connect nxos

- show logging logfile

El inicio de sesión correcto debe tener el siguiente aspecto:

2024 Sep 16 09:56:19 UCS-POD %UCSM-6-AUDIT: [session][internal][creation][internal][2677332][sys/user-ext/web-login-ucs-RADIUS\alerosa-web_8291_A][id:web

_8291_A, name:ucs-RADIUS\alerosa, policyOwner:local][] Web A: remote user ucs-RADIUS\alerosa logged in from X.X.X.X

Un inicio de sesión fallido se parece a:

2024 Sep 16 09:51:49 UCS-POD %AUTHPRIV-3-SYSTEM_MSG: pam_aaa:Authentication failed from X.X.X.X - svc_sam_samcproxy

Donde X.X.X.X es la dirección IP de la máquina utilizada para conectar SSH a Fabric Interconnect.

Información Relacionada

- Configuración de la autenticación en UCSM

- Configuración del servidor FreeRADIUS

- Wiki de FreeRADIUS