Comware 7: Utilizando o “RBAC – Role Based Access Control”

A feature RBAC – Role Based Access Control permite administrarmos a forma como os outros usuários locais poderão interagir com a configuração do Switch/Roteador (com o Comware 7) para os seguintes parametros:

  • VLANs
  • Interfaces (físicas e lógicas)
  • features : read/write/execute
  • comandos CLI
  • Processo da VRF (VPN instances)

Por exemplo, vamos imaginar que você queira permitir para um usuário apenas o acesso para leitura das configurações.

role name usuarioX
 rule 1 permit read feature
! A regra permitirá apenas a leitura do arquivo de configuração
quit
#
 local-user usuarioX 
 password simple 123
 service-type ssh telnet terminal
 authorization-attribute user-role usuarioX
! Vinculando a regra usuarioX 
undo authorization-attribute user-role network-operator
! removendo a regra padrão de novos usuários
 quit  
#

Caso não tenha configurado a interface VTY aplique os comandos abaixo

#
 line vty 0 63
 authentication-mode scheme
 quit
#

Durante o teste é possível acessar o modo system-view e visualizar os comandos “display”. Mas para alterar as configurações o usuário terá a permissão negada.

<pre> system
[Sw1] inter?
permission denied.
[Sw1]

O site http://abouthpnetworking.com/2014/04/03/rbac-protecting-the-bfd-mad-vlan/ nos dá um exemplo bem bacana para a criação de regras para proteger a VLAN e as interfaces do MAD BFD para o IRF.

role name sysadmin
 rule 1 permit read write execute feature
! permitindo todas as features RWX 
 vlan policy deny
  permit vlan 1 to 4000
  permit vlan 4002 to 4094
! Controlando a configuração de VLANs, permitindo todas exceto a vlan 4001
 interface policy deny
  permit interface GigabitEthernet1/0/1 to GigabitEthernet1/0/23
  permit interface GigabitEthernet2/0/1 to GigabitEthernet2/0/23
! Controlando a config. de interfaces, permitindo todas exceto as do MAD BFD.
! que são as interfaces Giga 1/0/24 e 2/0/24. 

quit
quit
#
local-user sysadmin 
 password simple hp
 service-type ssh telnet terminal
 authorization-attribute user-role sysadmin
 undo authorization-attribute user-role network-operator
#

Testes

[HP]
# Acesso restrito para as interfaces BFD MAD 
[HP]int g1/0/24
Permission denied.
# Acesso permitido para outras interfaces
interface GigabitEthernet1/0/1
 port link-mode bridge
 shutdown
# Qualquer configuração pode ser aplicada as outras interfaces
[HP-GigabitEthernet1/0/1]undo shut
[HP-GigabitEthernet1/0/1]port link-type trunk

# ...mas o 'permit vlan all' falhará (tentativa para adicionar a vlan 4001)
[HP-GigabitEthernet1/0/1]port trunk permit vlan all
Permission denied.

# A permissão para todas as outras VLANs funcionará normalmente:
[HP-GigabitEthernet1/0/1]port trunk permit vlan 1 to 4000
[HP-GigabitEthernet1/0/1]port trunk permit vlan 4002 to 4094

Até logo.

Comware – Desconectando um usuário travado (free user-interface)

O TBrecci nos enviou uma dica para desconectar um usuário travado em uma conexão SSH durante o ajuste do AAA. O procedimento pode ser utilizado em qualquer outra situação.

A história era que estava tentando aplicar o TACACS no equipamento. Para isso, criei um outro domain, me conectei por ele, para somente assim alterar a autenthicação do domain system. Porém o bichinho reclamava quando tem alguém conectado no outro domain, e não deixava fazer a modificação.

Neste caso, era a minha propria conexão de outro Putty que estava impedindo.

No exemplo abaixo o usuário netwsuporte estava travado na VTY 0

[Switch]display users

The user application information of the user interface(s):
  Idx UI      Delay    Type Userlevel
  20  VTY 0   00:22:16 SSH  3
+ 21  VTY 1   00:00:00 SSH  3
Following are more details.
VTY 0   :
        User name: netwsuporte
        Location: 192.168.219.62
VTY 1   :
        User name: tbrecci@empresa
        Location: 192.168.219.62
+    : Current operation user.
F    : Current operation user work in async mode.
[Switch]

Abaixo a desconexão do usuário conectado na VTY 0
 

<Switch> free user-interface vty 0
Are you sure to free user-interface vty0? [Y/N]:y
[OK]

<Switch> display users

The user application information of the user interface(s):

  Idx UI      Delay    Type Userlevel
+ 21  VTY 1   00:00:00 SSH  3

Following are more details.
VTY 1   :
        User name: tbrecci@empresa
        Location: 192.168.219.62+    
     
     : Current operation user.

F    : Current operation user work in async mode.

<Switch>

Abração

Comware 7: Configurando TACACS em uma VPN-Instance (VRF)

Compatilho abaixo o script (comentado) para a autenticação de usuários em uma base remota para administração de um Roteador MSR 30-16. Os testes serviram para validar um Servidor ACS da Cisco para autenticação via TACACS em um Roteador HP. A diferença deste teste para as outras configurações é a utilização do TACACS dentro de uma vpn-instance (VRF).


Configuração
#
ip vpn-instance test
 route-distinguisher 1:1
 vpn-target 1:1 export-extcommunity
 vpn-target 1:1 import-extcommunity
! Criando a VRF “test”
#
super password level 3 simple s3nhasup3r
super authentication-mode scheme
#
telnet server enable
#
hwtacacs scheme acs
! Criando o esquema TACACS com o nome acs
primary authentication 192.168.1.10 vpn-instance test
!Configurando o IP do Servidor ACS para autenticação
primary authorization 192.168.1.10 vpn-instance test
!Configurando o IP do Servidor ACS para autorização
primary accounting 192.168.1.10 vpn-instance test
!Configurando o IP do Servidor ACS para contabilidade
nas-ip 172.16.1.1
!Endereço de IP do Switch cadastrado no ACS
key authentication teste123
! Chave para autenticação com o servidor ACS  com a senha"teste123"
key authorization teste123
key accounting teste123
user-name-format without-domain
! Encaminhamento do usuário sem o formato @dominio
#
domain acs
authentication login hwtacacs-scheme acs local
!Configurando a autenticação com TACACS e em caso de falha, a autenticação será local.
authorization login hwtacacs-scheme acs local
accounting login hwtacacs-scheme acs local
authentication default hwtacacs-scheme acs local
authorization default hwtacacs-scheme acs
accounting default hwtacacs-scheme acs
authentication super hwtacacs-scheme acs
accounting command hwtacacs-scheme acs
#
domain default enable acs
! Habilitando o dominio acs como default para auetnticação
#
interface Ethernet0/0
 port link-mode route
 ip binding vpn-instance test
 172.16.1.1 255.255.255.0
#
user-interface vty 0 4
authentication-mode scheme
#

obs: Sugerimos que durante os testes, não configure o authentication-mode scheme no acesso via Console, para em caso de falha nos testes, você não fique trancado do lado de fora do Switch.

A autenticação do “super-usuário” via TACACS também está inclusa no script.

Abração

Comware 7 – Autenticação de TACACS com Tac_plus

Galera, durante a criação de um laboratório para testes de autenticação com TACACS de Roteadores MSR com Comware7, utilizamos o Debian com o tac_plus como Servidor.

Segue abaixo os scripts utilizados:

#
# tacacs configuration file
# Pierre-Yves Maunier – 20060713
# /etc/tac_plus.conf
# set the key
key = labcomutadores
accounting file = /var/log/tac_plus.acct
# users accounts
user = student1 {
	login = cleartext "normal"
	enable = cleartext "enable"
	name = "Usuario Teste"
	service = exec {
	    roles="network-admin"
       }
}
user = student2 {
	login = cleartext "normal"
	enable = cleartext "enable"
	name = "Usuario Teste"
	service = exec {
	    roles="network-operator"	
        }
}

Configuração do Roteador MSR HP

wtacacs scheme tac
primary authentication 192.168.1.10
primary authorization 192.168.1.10
primary accounting 192.168.1.10
! endereço do servidor TACACS
key authentication simple labcomutadores
key authorization simple labcomutadores
key accounting simple labcomutadores
user-name-format without-domain
#
domain tac.com.br
authentication login hwtacacs-scheme tac local
authorization login hwtacacs-scheme tac local
accounting login hwtacacs-scheme tac local
#
domain default enable tac.com.br
#
user-interface vty 0 4
authentication-mode scheme

Até logo

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 vínculo 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.

  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

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!

Vídeo: Comware – Configurando RADIUS

Autenticação Segura para Switches e Roteadores 3Com/HP com Comware: Domine o Script e Proteja Sua Rede!

Gerenciar seus switches e roteadores 3Com/HP com Comware de forma segura e eficiente é crucial para garantir a integridade e a confidencialidade da sua rede. Neste vídeo, apresentamos um guia para autenticação de usuários via Telnet, SSH e outros protocolos, permitindo que você controle o acesso à sua infraestrutura de rede com total precisão.

Aprenda a:

  • Implementar autenticação centralizada: Crie um ambiente seguro para administração de seus dispositivos, restringindo o acesso apenas a usuários autorizados.
  • Gerenciar diferentes protocolos: O script oferece suporte a diversos protocolos de autenticação, como Telnet, SSH, VTY e console, adaptando-se às suas necessidades específicas.
  • Configurar níveis de acesso personalizados: Defina diferentes níveis de acesso para diferentes usuários, garantindo que cada um tenha apenas as permissões necessárias para realizar suas tarefas.
  • Auditar e monitorar acessos: Mantenha um registro completo das tentativas de autenticação, identificando atividades suspeitas e protegendo sua rede contra invasores.

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 haja 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 enviadas 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.

Exemplo

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

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.

Treinamento Comware – Aula 7 – AAA, RADIUS, TACACS+

Aula 7 do Treinamento Comware para Switches HP. ​O acrônimo AAA é uma referência aos protocolos relacionados com os procedimentos de autenticação, autorização e contabilidade. Vários métodos, tecnologias e protocolos podem ser usados ​​para implementar o controle de identidade e acesso, fornecendo informações sobre a validade das credenciais, direitos de acesso e auditoria. Como continuidade demonstramos a configuração do RADIUS e TACACS+ para gerenciamento dos Switches e Roteadores.

Vídeo: Comware TACACS+

O TACACS+ (Terminal Access Controller Access Control System) é um protocolo que provê autenticação centralizada para usuários que desejam acesso a equipamentos de rede. O protocolo fornece serviço modular para o AAA separando esses serviços (autenticação, autorização e contabilidade) de forma independente.

Os dispositivos baseados no Comware trabalham com o HWTACACS (HW Terminal Access Controller Access Control System) que é uma versão baseada na RFC 1492 do TACACS+ com interoperabilidade com todos os serviços que operam com TACACS+.

Nesse vídeo descrevemos a configuração do serviço HWTACACS: