Explorando a configuração AAA e TACAS com Cisco Modeling Labs


Admito que não fiz uma verificação completa. No entanto, eu ainda apostaria que os serviços AAA/RBAC são mencionados com mais frequência nos planos de certificação da Cisco do que qualquer outro tópico de rede. Do nível CCNA ao Skilled, você encontrará AAA, TACACS+, RADIUS e RBAC listados nos tópicos do exame.

Aqui estão alguns exemplos, se você quiser conferir você mesmo:

  • 200-301CCNA
    • 2.8 Descrever conexões de acesso de gerenciamento AP e WLC (Telnet, SSH, HTTP, HTTPS, console e TACACS+/RADIUS)
    • 5.8 Diferenciar conceitos de autenticação, autorização e contabilidade
  • 350-401 ENCOR
    • 5.1 Configurar e verificar o controle de acesso do dispositivo
  • 300-410 ENARSI
    • 3.1 Solucionar problemas de segurança do dispositivo usando IOS AAA (TACACS+, RADIUS, banco de dados native)
  • 300-430 ENWLSI
    • 8.1 Implementar controles de acesso a dispositivos (incluindo RADIUS e TACACS+)
  • 350-701 PONTUAÇÃO
    • 2.7 Configure AAA para acesso a dispositivos e redes como TACACS+ e RADIUS
  • 300-715 SISE
    • 7.0 Administração de dispositivos de acesso à rede
  • 350-601 DCCOR
    • 5.xa Aplicar segurança de rede | computação | armazenamento – AAA e RBAC
  • 300-615 DCIT
    • 5.xb Solução de problemas de rede | computação | segurança de armazenamento – AAA e RBAC
  • 350-501 SPCOR
    • 1.6b Descrever a segurança do plano de gerenciamento – AAA e TACACS
  • 300-540 SPCNI
    • 4.1e Implementar segurança de infraestrutura – TACACS

OH MEU DEUS. São 10 certificações diferentes, de Associado a Profissional, onde esses tópicos aparecem. Você também os encontrará em exames de nível Skilled, como o Infraestrutura Empresarial, Empresa sem fio, Segurança, Provedor de serviçose Centro de dados laboratórios. (Se alguém puder encontrar outro tópico com cobertura tão ampla, por favor me avise nos comentários. Adoraria saber o que esqueci até agora.)

Visite a Cisco Studying Community para ver os tópicos de todos os exames de certificação Cisco. Ver tópicos do exame

Okay… é definitivamente importante… mas o que é AAA?

AAA é um tópico importante, mas mesmo os engenheiros de rede de longa knowledge podem não compreender completamente. Portanto, antes de vê-lo em ação, que tal uma rápida visão geral do que significam os “triplos A”?

Explorando a configuração AAA e TACAS com Cisco Modeling Labs
Carl vê como Autenticação, Autorização e Contabilidade são etapas separadas e importantes para administração de dispositivos.

Na seção “AAA em Ação!” quadrinhos, Carl vivencia todo o processo AAA:

  • O primeiro “A” significa Autenticação. Vemos isso representado quando Carl é solicitado a verificar sua identidade antes que ele possa fazer uma alteração na rede.
  • O segundo “A” significa Autorização. Mesmo depois de a rede verificar a identidade de Carl, ele tem que verifique se ele tem o(s) direito(s) de fazer essa alteraçãocom base nos direitos que lhe foram concedidos na rede.
  • E o terceiro e último “A” significa Contabilidadeque Carl vê em ação quando a rede registra a alteração ele faz para a rede.

O TACACS entra em cena para apoiar o gerenciamento centralizado de usuários, funções e logs (autenticação, autorização e contabilidade). Embora cada dispositivo de rede possa ser configurado localmente para lidar com AAA, isso não é adequado para empresas. Uma solução melhor é cada dispositivo de rede se comunicar com um “servidor” central para essas ações. TACACS é um protocolo que dispositivos de rede e servidores usam para comunicar e lidar com cada um dos “A’s”. Um “Servidor TACACS” é um aplicativo de software program que suporta o protocolo TACACS.

Podemos chegar ao Exploração, já?!

Agora que entendemos o papel crítico que AAA desempenha em uma rede (e que é um tópico essencial em muitas certificações), gostaria de mostrar como estudar e se preparar para isso usando minha ferramenta favorita de simulação/virtualização de rede: Cisco Laboratórios de Modelagem (CML). Como meu objetivo é compartilhar minhas atividades de exploração, publiquei alguns arquivos de topologia CML no GitHub no repositório da comunidade CML no Cisco DevNet.

Você verá aquele A topologia CML inclui apenas um roteador IOLenquanto outro adiciona um swap Nexus 9000v para cobrir também plataformas de knowledge heart. Então, depois de ler esta postagem do weblog, baixe definitivamente as topologias e explore-as você mesmo.

Topologia CML para explorar TACACS

Como executar um servidor TACACS no Cisco Modeling Labs

Antes de poder configurar o TACACS em um swap ou roteador, você deve ter um servidor TACACS disponível na rede. Um servidor TACACS comum para uma rede de produção é Cisco ISSEum “mecanismo de serviços de identidade” completo para administração de dispositivos, acesso à rede, segurança sem fio, acesso VPN e muito mais.

Cisco ISE é um produto e tópico importante para engenheiros de rede. Na verdade, temos um exame de certificação dedicado a isso. E embora você possa adicionar o Cisco ISE a uma biblioteca de nós CML usando o definição de nó disponível na comunidade CML, executar um servidor ISE completo na topologia pode parecer um exagero quando o foco está apenas na configuração do TACACS para administração de dispositivos.

Felizmente, existem alternativas leves. Minha opção preferida é o aplicativo de código aberto “tac_plus” que está disponível há muitos anos. Tac_plus é um aplicativo Linux básico que pode ser baixado e instalado na maioria das distribuições Linux. Embora o desenvolvimento ativo do projeto pareça ter parado, ele funciona muito bem e continua sendo uma excelente opção para casos como este.

Se você observar a imagem da topologia CML, verá “aaa-server” no lado esquerdo do diagrama. Este é um nó Ubuntu padrão das plataformas de referência CML, com uma configuração inicial para instalar o tac_plus e configurá-lo como um servidor TACACS básico. Sinta-se à vontade para verificar a configuração no arquivo de topologia para obter detalhes completos, mas aqui estão os princípios básicos do que fiz para construir meu servidor TACACS:

  1. Instale os requisitos para baixar e instalar o aplicativo tac_plus a partir do código-fonte.
  2. Crie o arquivo de configuração “tac_plus.conf” para especificar a chave secreta TACACS, usuários e níveis de funções/privilégios para plataformas IOS e NX-OS.
  3. Crie um arquivo “tac_plus.service” para configurar o tac_plus como um serviço.
  4. Baixe, extraia, instale e inicie o servidor tac_plus.

Com a instalação e configuração da parte aaa-server do arquivo de topologia CML base, tac_plus estará em execução e pronto para receber solicitações assim que o laboratório for iniciado.

cisco@aaa-server:~$ systemctl standing tac_plus
● tac_plus.service - tac_plus Service
     Loaded: loaded (/and so forth/systemd/system/tac_plus.service; enabled; vendor pres>
     Energetic: lively (operating) since Mon 2024-10-14 19:16:37 UTC; 2s in the past
   Essential PID: 5982 (tac_plus)
      Duties: 1 (restrict: 2310)
     Reminiscence: 416.0K
        CPU: 2ms
     CGroup: /system.slice/tac_plus.service
             └─5982 /tacacs/sbin/tac_plus -G -C /and so forth/tacacs/tac_plus.conf -d 8 >

Oct 14 19:16:37 aaa-server systemd(1): Began tac_plus Service.
Oct 14 19:16:37 aaa-server tac_plus(5982): Studying config
Oct 14 19:16:37 aaa-server tac_plus(5982): Model F4.0.4.28 Initialized 1
Oct 14 19:16:37 aaa-server tac_plus(5982): tac_plus server F4.0.4.28 beginning
Oct 14 19:16:37 aaa-server tac_plus(5982): socket FD 4 AF 2
Oct 14 19:16:37 aaa-server tac_plus(5982): socket FD 5 AF 10
Oct 14 19:16:37 aaa-server tac_plus(5982): uid=0 euid=0 gid=0 egid=0 s=11063704>

Como habilitar AAA e TACACS em um roteador Cisco IOS

Com nosso servidor TACACS instalado e operacional, agora podemos configurar nosso roteador IOS para usá-lo. Antes de configurar o servidor TACACS no IOS, precisamos garantir que algum “pré-trabalho” básico seja feito em nosso roteador. O IOS existe há anos e passou por muitas mudanças na forma como a autenticação e a autorização são tratadas.

Então, a primeira coisa que queremos fazer é garantir que o “novo modelo” de AAA esteja habilitado em nosso dispositivo:

aaa new-model

Em seguida, queremos criar uma conta de usuário native que possa acessar e administrar o dispositivo se o servidor TACACS ficar inacessível. Você também pode querer usar uma conta native para conexões seriais/console.

username cisco privilege 15 secret cisco

Neste comando, o nome de usuário e a senha são definidos como “cisco”. (Não é a escolha mais segura, mas isto é apenas um laboratório.) A parte “privilégio 15” do comando indica que este usuário receberá uma função de “administrador”. O privilégio 15 é o nível mais alto em um dispositivo IOS e permite ao usuário executar todo e qualquer comando.

Estamos prontos para configurar e testar o TACACS agora. Mas primeiro, vou para o console do servidor e começo a monitorar os logs. Dessa forma, posso verificar e verificar os resultados tanto no lado do servidor quanto no cliente.

# On aaa-server
journalctl -fu tac_plus

# Output
Oct 14 19:16:37 aaa-server systemd(1): Began tac_plus Service.
Oct 14 19:16:37 aaa-server tac_plus(5982): Studying config
Oct 14 19:16:37 aaa-server tac_plus(5982): Model F4.0.4.28 Initialized 1
Oct 14 19:16:37 aaa-server tac_plus(5982): tac_plus server F4.0.4.28 beginning
Oct 14 19:16:37 aaa-server tac_plus(5982): socket FD 4 AF 2
Oct 14 19:16:37 aaa-server tac_plus(5982): socket FD 5 AF 10
Oct 14 19:16:37 aaa-server tac_plus(5982): uid=0 euid=0 gid=0 egid=0 s=1106370448

No comando acima, o argumento “-f” “segue” as mensagens de log conforme elas chegam. E a opção “-u tac_plus” limita a saída apenas para mensagens do serviço tac_plus.

Excelente. Agora, volte ao roteador para configurar o servidor tacacs e adicioná-lo a um grupo de servidores que o roteador pode usar para o serviço AAA.

tacacs server aaa-server
 deal with ipv4 192.168.0.10
 key tacacs123

aaa group server tacacs+ AAA-TACACS
 server title aaa-server

Sempre sou fã de testar se algo funcionará (ou provavelmente funcionará) antes de prosseguir. Convenientemente, o IOS suporta um comando “check aaa” que podemos usar.

check aaa group AAA-TACACS iosadmin admin123 legacy

# Output 
Making an attempt authentication check to server-group AAA-TACACS utilizing tacacs+
Consumer was efficiently authenticated.

Isso parece ótimo! E também posso ver os logs em “aaa-server”.

Oct 14 19:55:16 aaa-server tac_plus(6473): join from 192.168.0.1 (192.168.0.1)
Oct 14 19:55:17 aaa-server tac_plus(6473): login question for 'iosadmin' port unknown-port from 192.168.0.1 accepted

Com um forte senso de confiança, vamos completar a configuração AAA para todos os três “A’s”.

! Authentication 
aaa authentication login default group AAA-TACACS native

! Authorization 
aaa authorization exec default group AAA-TACACS native 
aaa authorization console

! Accounting
aaa accounting exec default start-stop group AAA-TACACS
aaa accounting instructions 1 default start-stop group AAA-TACACS
aaa accounting instructions 15 default start-stop group AAA-TACACS

Mantendo esse forte senso de confiança, vamos ver se funciona. Encerre/sair do roteador até precisar fazer login novamente.

ios01 con0 is now out there

Press RETURN to get began.

Consumer Entry Verification

Username: 

Tente fazer login no roteador usando as credenciais TACACS do dispositivo IOS.

Consumer Entry Verification

Username: iosadmin
Password: 

ios01#

Sucesso! Verifique os logs no servidor e você verá algo assim:

Oct 14 20:05:03 aaa-server tac_plus(6492): login question for 'iosadmin' port tty0 from 192.168.0.1 accepted
Oct 14 20:05:03 aaa-server tac_plus(6493): join from 192.168.0.1 (192.168.0.1)
Oct 14 20:05:03 aaa-server tac_plus(6493): Begin authorization request
Oct 14 20:05:03 aaa-server tac_plus(6493): do_author: consumer="iosadmin"
Oct 14 20:05:03 aaa-server tac_plus(6493): consumer 'iosadmin' discovered
Oct 14 20:05:03 aaa-server tac_plus(6493): exec authorization request for iosadmin
Oct 14 20:05:03 aaa-server tac_plus(6493): exec is explicitly permitted by line 6
Oct 14 20:05:03 aaa-server tac_plus(6493): nas:service=shell (handed through)
Oct 14 20:05:03 aaa-server tac_plus(6493): nas:cmd* (handed through)
Oct 14 20:05:03 aaa-server tac_plus(6493): nas:absent, server:priv-lvl=15 -> add priv-lvl=15 (ok)
Oct 14 20:05:03 aaa-server tac_plus(6493): added 1 args
Oct 14 20:05:03 aaa-server tac_plus(6493): out_args(0) = service=shell enter copy discarded
Oct 14 20:05:03 aaa-server tac_plus(6493): out_args(1) = cmd* enter copy discarded
Oct 14 20:05:03 aaa-server tac_plus(6493): out_args(2) = priv-lvl=15 compacted to out_args(0)
Oct 14 20:05:03 aaa-server tac_plus(6493): 1 output args
Oct 14 20:05:03 aaa-server tac_plus(6493): authorization question for 'iosadmin' tty0 from 192.168.0.1 accepted
Oct 14 20:05:03 aaa-server tac_plus(6494): join from 192.168.0.1 (192.168.0.1)

Colori a saída do servidor para destacar os logs de autenticação e autorização separadamente, mostrando que são realmente duas fases diferentes.

Mas e o “A” last para contabilidade? Pressione Cntr-C para parar de seguir o log de serviço e abrir o “log de contabilidade”.

tail -f /var/log/tac_plus.acct 

# Output 
Oct 14 20:05:03 192.168.0.1     iosadmin        tty0    async   begin   task_id=12      timezone=UTC    service=shell

Você deverá ver uma mensagem como a acima mostrando o “início” da sessão no roteador. Volte para o roteador e execute “write mem” para salvar as alterações de configuração na memória. Uma nova mensagem de log deverá aparecer no log de contabilidade:

Oct 14 20:10:11 192.168.0.1     iosadmin        tty0    async   cease    task_id=13      timezone=UTC    service=shell   priv-lvl=15     cmd=write reminiscence 

E agora, saia do roteador para fazer logout. Uma nova mensagem também deve aparecer:

Oct 14 20:11:02 192.168.0.1     iosadmin        tty0    async   cease    task_id=13      timezone=UTC    service=shell   disc-cause=1    disc-cause-ext=9        pre-session-time=6 elapsed_time=89  stop_time=1728936662

E BAM. Todos os três “A’s” foram validados. Excelente trabalho!

Esperançosamente, este weblog deixou você animado para completar sua própria exploração de AAA e TACACS. E você está com sorte – os arquivos de topologia CML que mencionei acima (e mencionarei novamente abaixo) estão lá para você pegar e usar imediatamente. Dentro deles estão guias de laboratório que abordam alguns outros tópicos importantes de AAA, como o uso de contas locais no console/linha serial para IOS e a configuração de TACACS em dispositivos Nexus. No entanto, encorajo você a fazer alguma exploração independente e experimentar coisas que são não no guia:

O que acontece se você digitar o nome de usuário/senha errado? O que acontece se a “chave tacacs” configurada estiver errada? O que acontece se o servidor TACACS estiver inacessível?

Compreender o impacto dos problemas e falhas é elementary para que um engenheiro de rede possa se sentir confortável quando algo dá errado na “vida actual”. É muito melhor quebrar coisas no laboratório do que esperar que a produção tenha problemas. E não há ferramenta melhor do que o Cisco Modeling Labs para essa exploração.

Minha própria exploração AAA continuará. Neste weblog e laboratório, apenas arranhei a superfície do tópico e do conhecimento necessário para diferentes certificações. Servidores RADIUS podem ser usados ​​em vez de TACACS, e quanto a AAA para coisas como autenticação VPN, acesso à rede com 802.1x ou outras plataformas como firewalls ASA?

Existem muitas outras possibilidades para explorar em postagens posteriores do weblog. Você gostaria de ver mais sobre AAA de mim? Deixe-me saber nos comentários.

Até a próxima!

Recursos

Inscreva-se para Cisco U. | Junte-se aoRede de aprendizagem Cisco.

Siga o aprendizado e as certificações da Cisco

X |Tópicos| Fb|LinkedIn|Instagram|YouTube

Usar #CiscoU e#CiscoCertpara participar da conversa.

Compartilhar:



Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *