RADIUS e TACACS+: dois protocolos complementares

Além de mostrar que os protocolos RADIUS e TACACS+ são complementares (e não concorrentes), o presente texto tem a intenção de esclarecer alguns erros conceituais envolvendo tais protocolos.

Diante da confusão clásssica, resolvi montar uma espécie de sessão “fatos e mitos” para facilitar o entendimento:

  • O protocolo TACACS (RFC 1492) já não é mais utilizado em implementações práticas, pois não oferece nenhuma vantagem significativa em relação ao RADIUS. O TACACS+ é uma evolução do TACACS que, dentre outras coisas, utiliza transporte TCP (em vez de UDP, como é o caso do TACACS). Desta forma não faz sentido solicitar “TACACS”, pensando-se em obter os benefícios do TACACS+.
  • Apesar de ter sido criada pela Cisco, a especificação do TACACS+ (que data de 1997 !) está documentada  sob a forma de ‘draft’ no site do IETF, permitindo que vários outros fabricantes desenvolvam o suporte a tal protocolo. E isso de fato aconteceu. Muitos fabricantes de dispositivos de redes (tais como roteadores, switches e firewalls) declaram em seus data sheets o suporte a TACACS+.
  • Alguns fabricantes criaram uma implementação inspirada no TACACS+ que foi batizada como HWTACACS. A despeito do novo nome, os clientes HWTACACS suportam as mesmas características do TACACS+ e são, inclusive, compatíveis com o servidor TACACS+ mais  usado no mercado (Cisco Secure Access Control System – CS ACS).
  • O protocolo RADIUS foi desenvolvido e otimizado para fazer controle de acesso a serviços de Rede. É bem natural para o RADIUS, por exemplo, diferenciar os perfis de acesso à Rede em ambientes dial-up, VPNs de acesso remoto (tais como IPSec e SSL VPN) e redes sem fio (ou cabeadas) que usam 802.1X.
  • Por não separar os processos de Autenticação e Autorização (dentro da arquitetura AAA), o RADIUS é mais adequado para atribuir um perfil de autorização (authorization profile) que permaneça ativo no equipamento de rede durante todo o tempo de conexão do usuário. O RADIUS não é usado para tarefas interativas de autorização durante a sessão.
  • Exemplos de perfis atribuídos com RADIUS são: enquanto usuários do Grupo 1 têm acesso a FTP e Telnet, usuários pertencentes ao Grupo 2 podem usar web (HTTP) e e-mail (SMTP).
  • O TACACS+ separa os processos de Autenticação e Autorização e foi otimizado para controle de comandos de configuração e monitorização ( e até dos argumentos desses comandos). Este tipo de cenário de aplicação do TACACS+ costuma ser chamado Controle de Acesso Administrativo a Equipamentos de Rede (em oposição a controle de acesso a serviços de rede).
  • Cada comando disponível em um equipamento que suporte cliente TACACS+ é autorizado individualmente pelo servidor antes que possa ser executado. Imagine a alternativa (nada flexível e gerenciável) de fazer um download de todas as possíveis combinações de comandos e argumentos sob a forma de um authorization profile... (Especialmente em equipamentos que possuam uma miríade de funcionalidades tais como os roteadores ISR da Cisco).
  • Todas as definições de comandos de administração dos equipamentos são efetuadas de forma centralizada no servidor TACACS+. Isso é particularmente importante em redes com grande número de ativos de rede. (Considere, por outro lado, a opção de definir os comandos em cada equipamento de Rede…)
  • Com TACACS+ é possível permitir, por exemplo, que um grupo de usuários tenha acesso de configuração aos comandos relativos a Telefonia IP em um conjunto de equipamentos e que possa apenas visualizar as informações de rede em um segundo conjunto. A flexibilidade é total ! ( E você não está mais sujeito a soluções do tipo “tudo ou nada”.)
  • Se você deseja dispor de toda a capacidade de controle de acesso administrativo provida pelo TACACS+, é necessário deixar claro, em uma eventual RFP, que devem ser implementadas integralmente as funções de AAA para tal protocolo (especificamente no âmbito de autorização e accounting de comandos). Falar simplesmente que um equipamento “deve suportar TACACS+” não garante que os serviços AAA de interesse sejam fornecidos.

Após essa breve compilação sobre as características dos protocolos, gostaria de enfatizar alguns pontos:

  • A grande maioria dos equipamentos de Rede suportam simultaneamente os clientes RADIUS e TACACS+. Em vez de tentar encará-los como concorrentes, convém entender as aplicações para as quais são otimizados e fazer a seleção correta. É perfeitamente normal (e aconselhável), por exemplo, usar RADIUS num ambiente 802.1X para controlar o acesso de qualquer usuário  a uma porta física do switch e um processo TACACS+, separado, para controlar os comandos que os usuários com privilégio de administrador de rede podem executar no switch (para configurá-lo e operá-lo).
  • O servidor AAA mais difundido do mercado, CS-ACS, suporta a operação simultânea como servidor RADIUS e TACACS+. Isso permite que o CS-ACS seja usado tanto para as funções de controle de acesso a serviços de rede como para as tarefas de controle de acesso administrativo a equipamentos de rede.

Para facilitar a obtenção de informações adicionais sobre o assunto, listo a seguir uma coletânea de links úteis:

  1. TACACS+ and RADIUS Comparison (http://www.cisco.com/en/US/tech/tk59/technologies_tech_note09186a0080094e99.shtml)
  2. TACACS+ Protocol Version 1.78 (http://tools.ietf.org/html/draft-grant-tacacs-02)
  3. Original TACACS RFC (http://tools.ietf.org/html/rfc1492)
  4. Além da discussão teórica sobre a arquitetura AAA (incluindo os cenários mais adequados para o uso de RADIUS e TACACS+), o capítulo 14 do livro Cisco Firewalls (Identity on Cisco Firewalls) traz inúmeros exemplos práticos de uso de AAA em roteadores e Firewalls Cisco http://www.ciscopress.com/bookstore/product.asp?isbn=1587141094

** Artigos Relacionados:

About these ads

Leave a comment

Filed under Português, Segurança

Comments are closed.