Monthly Archives: outubro 2015

Comware 7: Autenticação com FreeRADIUS

A autenticação em Switches e Roteadores para fins de administração dos dispositivos pode ser efetuada com uma base de usuários configurados localmente ou em uma base de usuários remota que pode utilizar servidores RADIUS ou TACACS.

No exemplo abaixo montamos um ‘How to’ com o auxílio do Derlei Dias, utilizando o FreeRADIUS no Slackware para autenticação em um roteador HP VSR1000 que possui como base o Comware 7.

topologia freeRADIUS

Instalando Freeradius no Slackware

1 – Baixe os pacotes do slackbuilds.org e instale normalmente;

2 – Após instalação vá na pasta /etc/raddb/certs e execute o bootstrap;

3 – Usando de forma simples sem base de dados, abra o arquivo /etc/raddb/users;

4 – Adicione na primeira linha: student1   Cleartext-Password := “labhp”
! Usaremos como exemplo o usuário ‘student1’ com a senha ‘labhp’

5 – Depois use o comando a seguir para testar: radtest student1 labhp localhost 0 testing123
! O ‘testing123’ servirá como chave para autenticação entre o Switch/Roteador e o Radius

6 – A resposta deverá ser essa, se a autenticação ocorrer com sucesso:

Sending Access-Request of id 118 to 127.0.0.1 port 1812
User-Name = "student1"
User-Password = "labhp"
NAS-IP-Address = 10.12.0.102
NAS-Port = 0
Message-Authenticator = 0x00000000000000000000000000000000
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=118, length=20

7 – Lembre-se que ao inserir usuários no arquivo você deverá reiniciar o RADIUS.

8 – Editar o arquivo clients.conf e permitir a rede que fará acesso ao servidor.

10 – Alguns dispositivos requerem uma configuração especial no clients.conf e no users:

Configuração no RADIUS para Switches/Roteadores HP baseados no Comware7

Arquivo Clients.conf

client ip_do_device/máscara {
        secret          = testing123
}

ou

client vr1000 {
       ipaddr = ip_do_roteador
       secret          = testing123
}

Arquivo users

nome_usuario    Cleartext-Password := "senha"
                Service-Type = NAS-Prompt-User,
                Cisco-AVPair = "shell:roles=\"network-admin\"",

nome_usuario    Cleartext-Password := "senha"
                Service-Type = NAS-Prompt-User,
                Cisco-AVPair = "shell:roles=\"network-operator\""

Após ocorrer a autenticação do usuário com sucesso, o servidor RADIUS irá retornar uma das CiscoAVPairs para a autorização da ‘role’ que o usuário deve obter quando autentica no dispositivo. Você pode usar o network-admin, ou o network-operator, ou alguma role criada para RBAC.

Configurando o Comware7

#
interface GigabitEthernet1/0
 ip address 10.12.0.102 255.255.255.0
#
radius scheme rad
 primary authentication 10.12.0.100 key cipher $c$3$5mQHlUeQbVhRKAq3QxxN0NiB0Sc8jbyZFKyc3F0=
 primary accounting 10.12.0.100 key cipher $c$3$Q12zYBjRIkRGeQQL6gYm4wofbMfjDl/Cqalc17M=
 accounting-on enable
 user-name-format without-domain
! É possível enviar o usuário com ou sem o formato @dominio 
nas-ip 10.12.0.102
#
domain bbb
 authentication login radius-scheme rad
 authorization login radius-scheme rad
 accounting login radius-scheme rad
#
 domain default enable bbb
#
user-vty 0 63
authentication-mode scheme

Referências e observações

Após quebrar bastante a cabeça com diversos parâmetros e alguns dias de teste, usamos o documento http://h30499.www3.hp.com/hpeb/attachments/hpeb/switching-a-series-forum/5993/1/Freeradius%20AAA%20Comware%207.pdf como referência que cita a conexão do simulador HCL com FreeRADIUS no Ubuntu. 😉