Home Comunidade Eventos YouTube Networks Desafios // produtos Academy News CTI | CVE Contato

04 - RADIUS e TACACS+ (AAA)

video explicativo
Video explicativoEspaco reservado para o video desta anotação — adicione video: https://youtu.be/... no frontmatter da nota.

RADIUS e TACACS+ (AAA)

1. Conceito de AAA

AAA é o acrônimo de Authentication, Authorization, Accounting — os três pilares do controle de acesso em redes corporativas:

  • Authentication (Autenticação): comprovar quem é o usuário (senhas, certificados, tokens).
  • Authorization (Autorização): definir o que o usuário pode fazer (comandos privilegiados, acesso a VLANs, níveis administrativos).
  • Accounting (Contabilidade): registrar o que foi feito (logs de sessão, comandos executados, duração, volume de dados).

Em redes corporativas, equipamentos como roteadores, switches, firewalls, access points e VPN gateways delegam o processamento AAA a um servidor centralizado, evitando configuração individualizada em cada equipamento. Dois protocolos dominam esse espaço: RADIUS e TACACS+.

2. RADIUS (Remote Authentication Dial-In User Service)

Histórico e Padrões

O RADIUS foi desenvolvido pela Livingston Enterprises em 1991 para autenticar usuários em servidores de acesso discado. As RFCs mais relevantes:

RFC Ano Conteúdo
2865 2000 RADIUS (Authentication)
2866 2000 RADIUS Accounting
3579 2003 RADIUS & 802.1X
5176 2008 Dynamic Authorization (CoA)
6613-6615 2011 RADIUS over TCP, DTLS, TLS

Portas e Transporte

  • UDP 1812 — autenticação.
  • UDP 1813 — accounting.
  • (algumas implementações antigas usam UDP 1645/1646)

O uso de UDP foi uma decisão histórica (1990s); falhas são tratadas por retransmissões com timers. RFC 6613/6614 adiciona TCP e TLS para ambientes modernos.

Estrutura do Pacote RADIUS

Cada pacote contém:

  • Code (1 byte): tipo de mensagem (Access-Request=1, Access-Accept=2, Access-Reject=3, Accounting-Request=4, Access-Challenge=11, CoA-Request=43, Disconnect-Request=40).
  • Identifier (1 byte): correlaciona request e response.
  • Length (2 bytes): tamanho total do pacote.
  • Authenticator (16 bytes): HMAC/MD5 para integridade.
  • Attributes (variável): TLVs com dados da sessão.

Atributos Comuns

ID Nome Função
1 User-Name Login do usuário
2 User-Password Senha (criptografada com shared secret)
4 NAS-IP-Address IP do equipamento de rede
6 Service-Type Tipo de serviço (login, framed, admin)
79 EAP-Message Tunelamento EAP (802.1X)
26 Vendor-Specific Atributos proprietários (Cisco AV-Pairs)
40 Acct-Status-Type Start, Stop, Interim-Update
42 Acct-Input-Octets Bytes recebidos pelo usuário
43 Acct-Output-Octets Bytes enviados ao usuário
46 Acct-Session-Time Duração em segundos

Fluxo Típico

Usuário      NAS (roteador/AP)      Servidor RADIUS
   |                |                       |
   | -- login ----> |                       |
   |                | -- Access-Request --> |
   |                | <-- Access-Accept --- | (Service-Type, Framed-IP, VLAN-ID)
   | <-- autorizado |                       |
   |                | -- Acct-Start ----->  |
   |                | -- Acct-Stop -------> |

Características do RADIUS

  • Autenticação e autorização combinadas em um único Access-Request/Accept.
  • Accounting separado em mensagens independentes.
  • UDP: tolerante a perdas de pacotes.
  • Sem separação clara A/A/A: o Access-Accept carrega atributos de autorização.
  • Sessão sem estado: cada request carrega o Authenticator.

3. TACACS+ (Terminal Access Controller Access-Control System Plus)

Histórico

O TACACS original foi desenvolvido nos anos 1980 (RFC 1492, experimental). A Cisco estendeu o protocolo em 1993, criando o TACACS+, que se tornou o padrão de facto para administração de equipamentos de rede. Embora tenha um draft RFC, TACACS+ nunca foi publicado como RFC final; a especificação oficial é o draft-ietf-opsawg-tacacs.

Porta e Transporte

  • TCP 49 — usa TCP (mais confiável que UDP do RADIUS).
  • Tráfego pode ser cifrado com TLS ou em texto (raro em produção).

Separação A/A/A

Diferente do RADIUS, TACACS+ separa explicitamente as três funções:

Função Mensagens TACACS+
Authentication START, REPLY, CONTINUE
Authorization REQUEST, RESPONSE
Accounting REQUEST, REPLY

O fluxo para administrar um switch:

Admin         Switch (NAS)         Servidor TACACS+
  |                |                       |
  | -- login ----> |                       |
  |                | -- Auth START -------> |
  |                | <-- Auth REPLY ------- | (precisa senha)
  | -- senha --->  |                       |
  |                | -- Auth CONTINUE ----> |
  |                | <-- Auth REPLY ------- | (autenticado)
  |                | -- Authoriz REQUEST --> |
  |                | <-- Authoriz REPLY --- | (permitido/denegado)
  | == executa ==  | -- Acct REQUEST -----> |

A separação permite que o switch consulte autorização para cada comando individual. Se o admin tentar reload, o switch pergunta ao TACACS+ "este usuário pode rodar reload?". Essa granularidade é o grande diferencial do TACACS+ para RADIUS em administração de dispositivos.

4. Comparativo RADIUS vs TACACS+

Característica RADIUS TACACS+
Transporte UDP 1812/1813 TCP 49
RFC 2865+ Draft apenas
Separação A/A/A Combinada Separada
Foco Acesso de usuários a rede Administração de dispositivos
Autorização por comando Não nativo Sim (granular)
Suporte a 802.1X, VPN Excelente Limitado
Suporte a login admin de switch Limitado Excelente
Cifra corpo Apenas senha é cifrada Corpo todo cifrado
Sessão Sem estado Orientado a sessão TCP

5. Quando Usar Cada Um

Use RADIUS

  • Autenticação de usuários finais (802.1X, Wi-Fi WPA-Enterprise).
  • VPN remota (IPSec, SSL VPN, OpenVPN).
  • Acesso a redes convidadas.
  • ISP AAA (PPPoE).

Use TACACS+

  • Administração de equipamentos de rede (roteadores, switches, firewalls).
  • Controle granular de comandos por usuário.
  • Auditoria de quem fez o quê (comandos executados em cada dispositivo).
  • Ambientes com múltiplos administradores e níveis de privilégio.

Use Ambos

Em redes corporativas de médio e grande porte, é comum usar ambos: RADIUS para usuários finais (802.1X em Wi-Fi, VPN) e TACACS+ para administradores de rede (login SSH/HTTPS em switches e roteadores).

6. Servidores AAA

FreeRADIUS

Implementação open-source mais difundida (Linux). Configurável via arquivos em /etc/freeradius/:

# /etc/freeradius/3.0/clients.conf
client corporate-nas {
    ipaddr = 192.168.1.0/24
    secret = SenhaSecretaCompartilhada
}

# /etc/freeradius/3.0/users
joao    Auth-Type := PAP, Cleartext-Password := "senha123"
        Service-Type = NAS-Prompt-User,
        Cisco-AVPair = "shell:privilege=15"

tac_plus (TACACS+ daemon)

# /etc/tacacs+/tac_plus.conf
key = SenhaSecretaCompartilhada

user = joao {
    login = PAM
    service = exec {
        priv-lvl = 15
    }
    cmd = reload { deny }
    cmd = show { permit .* }
}

Servidores Comerciais

  • Cisco Identity Services Engine (ISE) — líder de mercado, integra RADIUS e TACACS+.
  • Aruba ClearPass — forte em redes Wi-Fi.
  • Microsoft NPS — RADIUS nativo do Windows Server.

7. Integração com 802.1X

O RADIUS é o protocolo padrão para autenticação 802.1X. O fluxo:

Supplicant (cliente)            Authenticator (switch/AP)         RADIUS Server
   | -- EAPOL-Start ----------> | -- Access-Request(EAP) ------>  |
   | <- EAP-Request/Identity - | <-- Access-Challenge(EAP) ----  |
   | == EAP method (TLS/PEAP) = | -- Access-Request(EAP) ------>  |
   |                           | <-- Access-Accept(EAP-Success)  |
   | == porta liberada VLAN X  |                                 |

Atributos RADIUS típicos para 802.1X:

  • Tunnel-Type=VLAN (13), Tunnel-Medium-Type=802 (6), Tunnel-Private-Group-ID=100 (81) — atribui cliente à VLAN 100.
  • Filter-Id (11) — nome da ACL a aplicar.

8. CoA (Change of Authorization)

O RFC 5176 introduziu CoA, permitindo que o servidor RADIUS envie comandos ao NAS em tempo de execução:

  • Desconectar usuário (Disconnect-Request).
  • Mudar VLAN do usuário.
  • Re-autenticar sessão.

Essa funcionalidade é essencial em NAC (Network Access Control) — um usuário detectado com malware pode ser movido para uma VLAN de quarentena sem necessidade de re-login.

9. Configuração Prática no Cisco

RADIUS em switch Cisco

aaa new-model
aaa authentication login default group radius local
aaa authorization exec default group radius local
aaa accounting exec default start-stop group radius
!
radius server FREERADIUS
 address ipv4 192.168.1.10 auth-port 1812 acct-port 1813
 key SenhaSecretaCompartilhada

TACACS+ em switch Cisco

aaa new-model
tacacs server PRIMARY
 address ipv4 192.168.1.20
 key SenhaSecretaCompartilhada
 single-connection      ! reusa conexão TCP (eficiência)
!
aaa authentication login default group tacacs+ local
aaa authorization exec default group tacacs+ local
aaa authorization commands 15 default group tacacs+ local
aaa accounting exec default start-stop group tacacs+
aaa accounting commands 15 default start-stop group tacacs+
!
username admin privilege 15 secret SenhaLocalAdmin123

Testar configuração

test aaa group tacacs+ joao senha123 legacy
# User successfully authenticated.

show tacacs
show aaa servers
show accounting log

10. Boas Práticas

  • Shared secret entre NAS e servidor deve ter pelo menos 20 caracteres, aleatório.
  • Nunca usar mesmo secret em todos os NAS (comprometimento de um comprometeria todos).
  • Configurar 2 servidores RADIUS/TACACS+ em cada equipamento para failover.
  • Habilitar accounting em todos os NAS e centralizar logs em SIEM (Splunk, ELK).
  • Integrar TACACS+ com MFA (TOTP) ou servidores de senhas como CyberArk, BeyondTrust.
  • Restringir acesso aos servidores AAA por ACL/firewall.

11. Tabela Resumo

Conceito RADIUS TACACS+
RFC 2865+ Draft
Porta UDP 1812/1813 TCP 49
Transporte UDP TCP
A/A/A Combinado Separado
Use para Usuários finais Admin de dispositivos
Implementação OSS FreeRADIUS tac_plus-ng

12. Conclusão

RADIUS e TACACS+ são pilares do controle de acesso em redes corporativas modernas. Apesar de complementares, têm nichos distintos: RADIUS domina autenticação de usuários finais (Wi-Fi 802.1X, VPN, ISP), enquanto TACACS+ é o padrão para administração de equipamentos de rede por sua granularidade de autorização por comando e auditoria detalhada. Para engenheiros de redes corporativas, dominar ambos é essencial: configurar NAS, integrar com backends de identidade (LDAP, Active Directory), implementar failover entre servidores, habilitar accounting para auditoria e aplicar MFA em contas privilegiadas. A transição da indústria para soluções cloud-native (Okta, Azure AD) não elimina RADIUS/TACACS+ — estes continuam como interface padronizada entre equipamentos de rede e serviços de identidade.