RADIUS Change of Authorization (CoA)

Em uma implantação tradicional com AAA utilizando RADIUS, após a autenticação, o Servidor RADIUS apenas assina a autorização como resultado de uma requisição de autenticação.

No entanto, existem muitos casos em que é desejável que hajam alterações sem a exigência do NAS para iniciar a troca de mensagens. Por exemplo, pode haver a necessidade de um administrador da rede ser capaz de encerrar a ‘sessão’ de uma porta autenticada com 802.1x.

Alternativamente, se o usuário alterar o nível de autorização, isto pode exigir que novos atributos de autorização sejam adicionados ou excluídos para o usuário.

Outro exemplo, é a limitação da banda disponível a um usuário após exceder a banda liberada em uma rede wifi, por exemplo.

Para superar essas limitações, vários fabricantes implementaram comandos RADIUS adicionais a fim de permitir que mensagens ‘não solicitadas’ sejam enviada para o NAS . Estes comandos estendidos fornecem suporte para desconectar (disconnect) e mudar de autorização (CoA – Change-of-Authorization).

CoA

Com o avanço da tecnologia e o surgimento de novas demandas, o padrão RADIUS CoA (Change of Authorization) permite ao Servidor iniciar a conversação com o equipamento de rede aplicando comandos:  shut/ no shut, alterar a VLAN, ACL, banda ou então apenas re-autenticar o usuário. As vezes um endpoint pode ser roubado, infectado, ter o anti-virus desabilitado, ultrapassar do limite dos dados disponíveis para navegação ou então ocorrer outros fatores que possam afetar a postura. Nesse caso a rede deve ser capaz de interagir à essas mudanças e atualizar o nível de acesso e autorização para esse dispositivo.

Coa - NAD-ASExemplo

RADIUS Coa - Comutadores

No cenário acima, o cliente (suplicante) inicia a autenticação;  após a troca de certificados e credenciais, o servidor autoriza o usuário enviando uma mensagem RADIUS Access-Accept ao NAD. Uma vez o usuário autenticado, o NAD enviará atualizações de accouting RADIUS para o servidor para atualizá-lo com informações da sessão do usuário: como largura de banda, tempo da sessão etc.

Usando as mensagens de Accounting, o servidor de autenticação  pode correlacionar o MAC e o endereço IP de um usuário com o tempo da conexão.

Se pensarmos em uma rede sem fio, podemos habilitar a desconexão com uma mensagem RADIUS Coa Disconnect-Request para a Controller quando um cliente atingir o limite de 100Mb de trafego.

Referências

https://tools.ietf.org/html/rfc5176

https://tools.ietf.org/html/rfc3576

ClearPass Essentials Student Guide – HP Education Services

Comware – Configurando o 802.1x

O IEEE 802.1X (também chamado de dot1x) é um padrão IEEE RFC 3748 para controle de acesso à rede. Ele prove um mecanismo de autenticação para hosts que desejam conectar-se a um Switch ou Access Point, por exemplo. A funcionalidade é também bastante poderosa para vinculo de VLANs, VLANs Guest e ACL’s dinâmicas. Essas informações são enviadas durante o processo de autenticação utilizando o  RADIUS como servidor. As funcionalidades do 802.1x permitem por exemplo, que caso um computador não autentique na rede, a máquina seja redirecionada para uma rede de visitantes, etc.

O padrão 802.1x descreve como as mensagens EAP são encaminhadas entre um suplicante (dispositivo final, como uma máquina de um usuário) e o autenticador (Switch ou Access Point), e  entre o autenticador e o servidor de autenticação. O autenticador encaminha as informações EAP para o servidor de autenticação pelo protocolo RADIUS.

Uma das vantagens da arquitetura EAP é a sua flexibilidade. O protocolo EAP é utilizado para selecionar o mecanismo de autenticação. O protocolo 802.1x é chamado de encapsulamento EAP over LAN (EAPOL). Atualmente ele é definido para redes Ethernet, incluindo o padrão 802.11 para LANs sem fios.

Os dispositivos que compõem a topologia para o funcionamento do padrão 802.1x são:

Suplicante (Supplicant): um suplicante pode ser um host com suporte a 802.1x com software cliente para autenticação, um telefone IP com software com suporte a 802.1x etc.

Autenticador (Authenticator): Dispositivo (geralmente o Switch, AP, etc) no meio do caminho que efetua a interface entre o Autenticador e o Suplicante. O autenticador funciona como um proxy para fazer o relay da informação entre o suplicante e o servidor de autenticação. O Switch recebe a informação de identidade do suplicante via frame EAPoL (EAP over LAN) que é então verificado e encapsulado pelo protocolo RADIUS e encaminhado para o servidor de autenticação. Os frames EAP não são modificados ou examinados durante o encapsulamento. Já quando o Switch recebe a mensagem do RADIUS do Servidor de autenticação, o cabeçalho RADIUS é removido, e o frame EAP é encapsulado no formato 802.1x e encaminhado de volta ao cliente.

Servidor de Autenticação (Authentication Server): O Servidor RADIUS é responsável pelas mensagens de permissão ou negação após validação do usuário. Durante o processo de autenticação o Authentication Server continua transparente para o cliente pois o suplicante comunica-se apenas com o authenticator. O protocolo RADIUS com as extensões EAP são somente suportados pelo servidor de autenticação.

802.1x

  1. O suplicante envia uma mensagem start para o autenticador.
  2. O autenticador envia uma mensagem solicitando um login ao suplicante.
  3. O suplicante responde com o login com as credenciais do usuário ou do equipamento.
  4. O autenticador verifica o quadro EAPoL e encapsula-o no formato RADIUS, encaminhando posteriormente o quadro para o servidor RADIUS.
  5. O servidor verifica as credenciais do cliente e envia uma resposta ao autenticador com a aplicação das políticas.
  6. Baseado ne mensagem da resposta, o autenticador permite ou nega o acesso à rede para a porta do cliente.

Exemplo de Configuração em Switches HP baseados no Comware

Neste, post forneceremos apenas a configuração de um Switch HP com o Comware 5. As configurações do suplicante e do Servidor de autenticação devem ser verificadas na documentação dos seus respectivos SO.

Passo 1: Configure o servidor RADIUS 
 radius scheme <nome do radius scheme>
  primary authentication <ip do servidor> key <chave> 
  ! Configure o IP do servidor RADIUS e a chave 
  user-name-format without-domain
  ! o formato do nome de usuário sem o envio do @dominio 
  nas-ip <endereço IP do Switch> 
  ! O NAS-IP permite forçar o IP para as mensagens trocadas entre o Switch e RADIUS
 quit

Passo 2: Configure o Domínio
domain <nome do domain>
  authentication lan-access radius-scheme <nome do radius scheme>
  authorization lan-access radius-scheme  <nome do radius scheme>
  ! Configurando a autenticação e a autorização do acesso a LAN 
 quit 

Passo 3: Configure o 802.1x globalmente no Switch
dot1x 
dot1x authentication-method eap

Passo 4: Configure o dot1x nas portas do switch
interface GigabitEthernet 1/0/x
   dot1x
   ! A porta utiliza o modo auto do 802.1x e solicita autenticação

cenário comware 802.1x

Referências

CCNP Security SISAS 300-208 Official Cert Guide, Cisco Press 2015, Aaron Woland and Kevin Redmon
http://blog.ccna.com.br/2009/02/25/pr-o-que-e-8021x/
https://tools.ietf.org/html/rfc3748
http://certifiedgeek.weebly.com/blog/hp-comware-and-wired-8021x

Até logo! 🙂

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. 😉

Links interessantes para Configuração do 802.1x em Switches HPN, H3C e 3Com

IEEE 802.1X é um padrão IEEE para controle de acesso à rede que provê um mecanismo de autenticação para dispositivos que desejam juntar-se à uma porta na LAN, prevenindo acesso para esta porta se a autenticação falhar. A feature é também bastante poderosa para vinculo de VLANs, VLANs Guest e ACL’s dinâmicas.

Segue abaixo alguns links com modelos e soluções bem interessantes. Infelizmente nunca participei diretamente em projetos envolvendo esse modelo de autenticação, mas os documentos possuem detalhes importantes e vale a pena a leitura caso haja interesse em implementar a solução.

IEEE 802.1x Authentication –
http://h20195.www2.hp.com/v2/GetPDF.aspx/4AA3-7309ENW.pdf
! Esse arquivo PDF foi muito bem escrito e possui alguns modelos de autenticação de 802.1x com Software Livre, infelizmente o documento está em inglês.

Estudo de caso: Autenticação IEEE 802.1x baseada no Protocolo RADIUS e Serviço de Diretório LDAP aplicado a rede GIGAUFOPNET
http://www.decom.ufop.br/menotti/monoII102/files/BCC391-102-vf-04.1.4174…
! Documento muito bem escrito pelo Tiago Rodrigues Chaves como trabalho de conclusão de curso, utilizando Switches 3Com modelo 5500 e 4500

801.1x Configuration – H3C
http://www.h3c.com/portal/Technical_Support___Documents/Technical_Documents/Switches/H3C_…
! Material bem técnico elaborado pela H3C, infelizmente o documento está em inglês.

Se algum link estiver quebrado, mande email ou deixe um comentário

Boa leitura

Switches 3Com 4800G – Autenticação de MAC via RADIUS

Publicado originamente em 13 DE ABRIL DE 2011

A autenticação de endereços MAC permite a autenticação da máquina do usuário baseada no endereço de Hardware. O cenário é bastante útil quando não há a possibilidade de utilização de 802.1x devido a diversos fatores, como software client, autenticação manual de usuários e etc.

O servidor RADIUS deverá possui a base de endereços MAC para validação da interface de rede do Switch para o usuário conectar-se a rede.

Configuração

#
mac-authentication
! Habilitando a autenticação por endereço MAC
#
radius scheme comutadores
! Criando o esquema para o RADIUS com o nome comutadores
server-type extended
primary authentication 192.168.99.6 
! Atribuindo endereço IP do Servidor RADIUS para autenticação
primary accounting 192.168.99.6 
key authentication s3nharadius
! Atribuindo a chave s3nharadius para autenticação com o RADIUS
key accounting s3nharadius
user-name-format without-domain
#
domain comutadores 
! Criando o domínio comutadores
authentication login local
! Autenticação para administração do Switch com a base de usuários locais
authorization login local
authentication default radius-scheme comutadores
! Autenticação do Switch com a base no esquema de RADIUS comutadores
authorization default radius-scheme comutadores
#
interface GigabitEthernet1/0/1
mac-authentication
!Habilitando a autenticação de MAC na interface Giga1/0/1
#

Obs: Por default o Switch encaminhará o endereço MAC como usuário e senha para validação no RADIUS

Um agradecimento especial pela equipe de Redes da UNESP Botucatu e o mestre Camilo Quitério que encaminharam o script!

Switches 3Com 5500 – Guia rápido de Configuração!!! Parte 2

Publicado originalmente em 30 DE DEZEMBRO DE 2010

Olá amigos, para comemorar um ótimo ano profissional e para fechar 2010 com “chave de ouro”, hoje eu escrevo a continuação do Post mais popular desse ano. “Switches 3Com 5500 – Guia rápido de Configuração!!!”

Desejo a todos um Feliz 2011!!

Syslog
[Switch]info-center loghost 10.1.1.1
Encaminhando mensagens os Logs para o Servidor de Syslog 10.1.1.1

NTP
[Switch]ntp-service unicast-server 10.1.1.2
Configurando o sincronismo do relógio com o servidor 10.1.1.2

BANNER
header motd %
=================================================================

“This system resource are restricted to Corporate official business and subject to being monitored at any time. Anyone using this network device or system resource expressly consents to such monitoring and to any evidence of unauthorized access, use or modification being used for criminal prosecution.”

=================================================================
%
Mensagem exibida para os usuários que farão acesso ao Switch. O inicio e fim da mensagem é delimitado por um caractere especial, no nosso exemplo, utilizamos o %

Atualizando o Switch via Servidor TFTP
<Switch> tftp 10.1.1.10 get s4e04_02.btm
<Switch> tftp 10.1.1.10 get s4m03_03_02s168ep05.app
Copiando os arquivos .btm e .app do Servidor de TFTP para o SWitch
<Switch>boot bootrom s4e04_02.btm
Forçando o Bootrom com o arquivo s4e04_02.btm 
<Switch> boot boot-loader s4m03_03_02s168ep05.app
Forçando o .app (Sistema Operacional) com o arquivo s4m03_03_02s168ep05.app
<Reboot>

Atribuindo as portas como Edged(portfast)
[Switch]interface Ethernet 1/0/1
[Switch-Ethernet1/0/1] stp edged-port enable
A porta configurada como edged-port entrará automaticamente em estado encaminhamento (pulando os estados iniciais do STP ou RSTP) e não gerará mensagens de notificação à topologia em caso de UP ou DOWN

STP Root Protection
[Switch]interface Ethernet1/0/3
[Switch-Ethernet1/0/3]stp root-protection
Se a porta configurada com Root-protection receber um BPDU Superior ao Root (querendo tornar-se Root no STP), a mesma não trafegará dados até cessar o recebimento dos BPDUs superiores naquela porta

Configurando SSH
[Switch] rsa local-key-pair create
Gerando as chaves RSA
[Switch] user-interface vty 0 4
[Switch-ui-vty0-4] authentication-mode scheme
[Switch-ui-vty0-4] protocol inbound ssh
Configurando modo de autenticação SOMENTE para SSH
[Switch-ui-vty0-4] quit
[Switch] local-user clientex
[Switch-luser-clientex] password simple 3com
[Switch-luser-clientex] service-type ssh level 3
Permitindo o usuário clientex conectar via SSH com permissão de administrador (3)
[Switch-luser-client2] quit
[Switch] ssh authentication-type default all

Configurando autenticação no Switch via RADIUS
radius scheme empresax
Criando o Scheme para o RADIUS chamado empresax
primary authentication 10.110.91.164 1645
Configurando o servidor de autenticação com o IP 10.110.91.164 com a porta 1645
primary accounting 10.110.91.164 1646
Configurando o servidor de contabiilidade com o IP 10.110.91.164 com a porta 1646
key authentication Swsec2011
Configurando a chave Swsec2011 compartilhada entre o RADIUS e o Switch
key accounting Swsec2011
Configurando a chave para contabilidade Swsec2011 compartilhada entre o RADIUS e o Switch
user-name-format without-domain
Configurando a autenticação para encaminhamento do usuário sem o formato nome@dominio (nome@empresax)
#
domain empresax
Criando o domínio empresax
authentication radius-scheme empresax
Efetuando o vinculo do radius empresax com o domínio empresax
#
domain default enable empresax
Na utilização de mais de um domínio, o domínio default será o domínio empresax
#
user-interface vty 0 4
authentication-mode scheme
Habilitando a utilização na interface vty 0 4 de Telnet ou SSH para utilização do RADIUS para
autenticação ao Switch

Configurando uma porta conectada a um Telefone IP e um Host (na mesma porta).
[Switch] interface ethernet 1/0/6
[Switch-Ethernet1/0/6] port link-type trunk
[Switch-Ethernet1/0/6] port trunk permit vlan 2 4
Configurando a porta para permitir a VLAN 2 ( telefonia) e VLAN 4 (Host)
[Switch-Ethernet1/0/6] port trunk pvid vlan 4
Configurando a porta para enviar e receber frames não-tagueados na VLAN 4

Port Security
[Switch] port-security enable
[Switch] interface Ethernet 1/0/1
[Switch-Ethernet1/0/1] port-security max-mac-count 1
Configurando o Port Security para permitir o aprendizado de somente um endereço MAC
[Switch-Ethernet1/0/1] port-security port-mode autolearn
Configurando o Port Security para aprender dinamicamente o endereço MAC “amarrado a porta”. Se outro endereço MAC for aprendido após o primeiro aprendizado a porta entra´ra em estado de violação e não trafegará dados! 

DHCP-Relay 
[Switch] dhcp enable
Ativando o serviço DHCP
[Switch] dhcp –server 1 ip 10.1.1.1
Adicionando o servidor DHCP 10.1.1.1 dentro do grupo 1.
[Switch] interface vlan-interface 2
[Switch-Vlan-interface2] ip address 192.168.1.1 255.255.255.0
[Switch-Vlan-interface2] dhcp-server 1
Correlacionando a VLAN-interface 2 para o grupo DHCP 1

Saúde e Sucesso a todos!!!!

 

 

Controladora HP A-WX5002 – Configurando Autenticação do Portal via RADIUS

O Script abaixo foi encaminhado pelo Luiz Santos para autenticação do Web Portal via RADIUS. Após habilitarmos o Web Portal, poderemos utilizar as linhas abaixo:

#
radius scheme Comutadores
!Criando o esquema RADIUS com o nome Comutadores 
primary authentication 192.168.2.1 
! IP do Servidor RADIUS primário para autenticação
key authentication rad1us
! Chave rad1us para autenticação do RADIUS com o suplicante (controladora WX5002)
 user-name-format without-domain 
! Encaminhamento do usuário sem o formato @dominio
#
 domain default enable comutadores.com.br
! Configurando o domínio comutadores.com.br como padrão
#
domain comutadores.com.br
!Criando o domínio comutadores.com.br
 authentication portal radius-scheme wx5002 
! Esquema Comutadores para autenticação do portal
 authorization portal radius-scheme wx5002 
 accounting portal radius-scheme wx5002 
 access-limit disable 
 state active 
 idle-cut disable 
 self-service-url disable 
 accounting optional 

Até a próxima! 🙂