Níveis de privilégio no IOS Cisco

Muitos não sabem, mas é possível trabalhar com até 16 níveis de privilégio diferentes no Cisco IOS. A vantagem disso é que você pode controlar o acesso a um elemento de rede por um usuário (ou grupo de usuários), definindo exatamente quais comandos este está autorizado à utilizar.

Pelo menos dois níveis são bem conhecidos. São eles:

  1. Modo usuário: privilege level 1
  2. Modo privilegiado: privilege level 15


Quando um usuário acessa um router (ou um switch), ele automaticamente é colocado no primeiro nível (level 1). Ao se digitar “enable”, acessa-se o nível 15 (level 15).

Alguns comandos úteis:

Show privilege: Apresenta o atual nível de privilégio em que você se encontra. Exemplo:

router# show privilege
Current privilege level is 3

Enable: Este comando normalmente E utilizado para acessar o modo privilegiado (level 15), mas ele também pode ser usado para acessar qualquer outro nível. Exemplo:

router# show privilege
Current privilege level is 3
router# enable 1
router> show privilege
Current privilege level is 1
router>

Username: Este comando adiciona usuários,mas também pode informar qual o nível de acesso que este usuário terá após efetuar o login. Exemplo:

router(config)# username ccna password ccna privilege 3

Enable secret: Em modo default, este comando configura uma senha para ser utilizada com o nível 15 de acesso. Entretanto, este comando pode também ser usado para a criação de senhas para outros níveis. Exemplo:

router(config)# enable secret level 5 senha5

Privilege: Este comando é usado para se definir quais comandos estarão disponíveis apenas a alguns níveis. Exemplo:

router(config)# privilege exec level 3 show startup-config

Existem vários modos nos quais o comando privilege pode ser aplicado. “EXEC” é apenas 1 deles:

router(config)# privilege ?
[…]
  configure Global configuration mode
[…]
  exec Exec mode
[…]

O mesmo comando pode ser usado para alterar o nível de privilégio default de uma determinada linha (como a console, por exemplo). Exemplo:

router(config)# line con 0
router(config-line)# privilege level 3

Para finalizar este artigo, suponhamos que você deseje autorizar o uso estendido dos comandos “ping“e “traceroute“, assim como a configuração de endereços IP em interfaces e a ativação (no shut) e desativação (shut) de interfaces para um determinado usuário. Como se configuraria isso utilizando privilégios no IOS?

Eis a solução:

router(config)# enable secret level 3 ccna
router(config)# privilege exec level 3 ping
router(config)# privilege exec level 3 traceroute
router(config)# privilege exec level 3 configure terminal
router(config)# privilege configure level 3 interface
router(config)# privilege configure level 3 ip
router(config)# privilege configure level 3 address
router(config)# privilege configure level 3 no
router(config)# privilege configure level 3 shutdown

Quando o usuário digitar:

router> enable 3

Ele deverá digitar a senha “ccna” e terá acesso apenas aos comandos definidos (assim como outros, pré-definidos).

Se quiser desautorizar algum comando pré-autorizado à um determinado nível, basta definí-lo em outro nível, mais alto. Por exemplo, se quisermos proibir o uso do comando “show” no nível 3, basta fazer o seguinte:

router(config)# privilege exec level 15 sh

Automaticamente, usuários do nível 3 não tem mais acesso ao comando em questão.

Espero que tenham gostado deste post!

Abs!

Marco Filippetti

fonte: http://www.cisco.com/en/US/docs/ios/12_2/security/configuration/guide/scfpass.html

12 comentários

Pular para o formulário de comentário

  1. Muito legal o post Marco! 😉

    Não sabia que era possível determinar comandos específicos para um nível de privilégio! Vivendo e aprendendo!!! 😀

    Abração pra ti e pra todos aqui!!!

  2. Cara, xou de bola! Sempre me perguntei como fazer isso!!! Obrigado!

  3. Muito bom mesmo !!

    Porém fiquei com uma dúvida no último parágrafo do post. Eu não posso apenas “negar” a linha de permissão do nível 3, por exemplo, caso eu não queire que ele continue com o privilegio de “‘sh” ????

  4. Ótimo post, Marco !!!

    Interessante isso, eu não sabia que era possível realizar esses níveis de privilégio no proprio IOS.

    Obrigado.

    Érik Voitic

  5. Essa é nova pra mim, valeu Marco pela informação!!!1

  6. Vasculhando o blog atras de boas informações como essa, agora eu entendi porque nos roteadores da juniper eu sou obrigado a digitar enable 15, provavelmente a juniper não colocou como padrão o enable como privilege 15.

    Abraços, Rafael Venancio (Toguko)

  7. Bom dia pessoal,

    estou com uma duvida(problema).

    Quero que ao conectar o switch via telnet ele apresente uma tela de banner, depois quero que mostre USERNAME , PASSWORD. DEPOIS voce tem que digitar en + senha.

    ex:

    banner da empresa..

    CCCCCCCC
    ======================================================================
    Este e um equipamento de uso empresarial privado, sendo
    vedado o seu uso para fins publicos ou pessoais.

    O USO NAO AUTORIZADO DESTE EQUIPAMENTO PODERA SUBMETER O USUARIO
    AS SANCOES DISCIPLINARES E/OU PENALIDADES LEGAIS CABIVEIS.
    ======================================================================

    username:

    Então pessoal, tenho que ir no :
    switch01:
    conf t
    username getep privilege 15 secret 5 “password”
    line vty 0 4
    password “password”
    login

    line console 0
    password “”

    enable secret “password”

    Estou esquecendo de algo?
    Acontece que quando logo pelo telnet não estou vendo o username

  8. Marco excelente post. Trabalhei em uma operadora onde conseguia ter acesso a alguns comandos, mas outros eram negados, sendo liberados somente ao pessoal de níveis acima. Com este post, aprendi a criar tais níveis de privilégio no router. Obrigado.

  9. Post muito esclarecedor!

    Linguagem clara e objetiva, parabéns!!

  10. Marco Boa Tarde,

    Òtimo post, eu fiz a configuração no PT e funcionou , porem ao jogar num router 1841, as informações são omitidas ao digitar um show running-config, as demais configuração mostram sem problemas o unico problema foi com este comando, tem alguma dica?

    0#sh run
    Building configuration…

    Current configuration : 53 bytes
    !
    boot-start-marker
    boot-end-marker
    !
    !
    !
    !
    !
    !
    end

  11. Muito útil Marco, obrigado.

    Seria bacana se a Cisco disponibiliza-se um guia com quais comandos são disponíveis em cada nível, pois, isso é algo meio obscuro, rsrs.

    Valeu.

  12. E para eu apagar as configurações de privilege ???

Deixe um comentário