SIGN IN YOUR ACCOUNT TO HAVE ACCESS TO DIFFERENT FEATURES

FORGOT YOUR PASSWORD?

FORGOT YOUR DETAILS?

AAH, WAIT, I REMEMBER NOW!
GET SOCIAL
  • BLOG
  • SECURITY ALERTS
  • CONTATO
  • PRIVACIDADE
  • SOBRE
  • LOGIN

Brainwork

  • Certificação
  • Cisco
  • Informação
  • Linux
  • Microsoft
  • Network
  • Security
  • UC
  • Virtualização
  • Wireless
  • Home
  • Network
  • Script Python para backup e configuração de switches e roteadores
12/05/2025

Script Python para backup e configuração de switches e roteadores

Script Python para backup e configuração de switches e roteadores

by André Ortega / segunda-feira, 22 fevereiro 2021 / Published in Network

Criei um script em Python para enviar comandos para um lista de devices Cisco (roteadores e switches rodando IOS) e salvar o output.

O script tem sido bastante útil, podendo ser usado para fazer backup dos equipamentos e também para enviar comandos que são comuns para a lista de dispositivos, como configuração de logging, snmp, dhcp snooping, configuração de interfaces, e etc.

Meus conhecimentos de Python são limitados, então o script é bem básico. Também foi intensional ser simples o suficiente para que qualquer um possa usar, sem precisar saber de programação.

Para usar o script você vai precisar do python e dos módulos netmiko, getpass, csv, logging e datetime.

Usando o script

Livro CCNA

1) Instale o Python e os módulos necessários usando o pip.

2) Baixe o repositório do Github (ou ao menos os arquivos send_commands.py, devices_to_configure.csv e commands_to_send.txt, salvando-os na mesma pasta).

3) No arquivo devices_to_configure.csv informe a porta (22 ou 23) e o IP dos equipamentos que quer configurar/salvar os outputs.

devices

4) No arquivo commands_to_send.txt coloque os comandos que quer enviar (o script inicia no modo privilegiado).

commands

5) Execute o script: python send_commands.py.

send_commands

Na linha de comando é possível acompanhar o andamento, e o output dos comandos executados são salvos no arquivo log_file.txt, gerado na mesma pasta do script.

Mais informações no repositório do Github.

Até a próxima.

Relacionado

Tagged under: Automação, Backup, CiscoChampion, python, Script

About André Ortega

Formando em Processamento de Dados e Ciência da Computação. Especialista Cisco (CCNP Enterprise e CCNP Security). Dezenove anos de experiência com redes e segurança.

What you can read next

QoS–Classificação, Marcação e Congestionamento (Parte 2)
EIGRP Parte 1: Métrica
Cisco 1921 e 1905

6 Comments to “ Script Python para backup e configuração de switches e roteadores”

  1. Alessandro Lopes says : Acesse para responder
    22/02/2021 at 11:13

    Olá André, sou o Alessandro da Marimex, fiz algo parecido aqui para a empresa, um pouco mais elaborado, com envio de email, etc, para poder praticar os conhecimentos em python.
    Também sou iniciando em python, agora tô fazendo um programa para coletar logs no event viewer para não ter que usar servidor de syslog, vai salvar no SQL, está praticamente pronto. Ainda não coloquei no github, mas se tiver interesse posso compartilhar.
    Python é uma coisa que eu quero me aprofundar e a melhor forma é praticando.

    https://github.com/alopes-sts/Backup-de-switches-com-Python

  2. André Ortega says : Acesse para responder
    25/02/2021 at 10:27

    Sensacional Alessandro. O seu script segue uma linha diferente do meu, já que é focado no backup.
    Esse que postei, apesar de mais simples, pode ser usado para configuração “em lote” também. enviando outros comandos.

    Obrigado por compartilhar.

  3. Gui says : Acesse para responder
    29/12/2022 at 11:24

    Fala André, bom dia!

    Muito bom seu script cara, parabéns!

    Só uma coisa, eu vi que ele já entra em modo de configuração, qual linha tem que remover pra ele não entrar em conf t?

    Abraço!

    1. André Ortega says : Acesse para responder
      06/01/2023 at 17:14

      Olá Gui, o script usa a biblioteca Netmiko, que faz o login e já entra no modo de configuração.
      Quando quero executar algum comando show, por exemplo, no script (arquivo com os comandos) eu coloco o “exit” na primeira linha.

  4. João Victor says : Acesse para responder
    21/03/2023 at 11:08

    Olá ! me chamo João Victor e quis deixar meu comentário informando que o código no processo de backup das informações, sempre não consegue coletar todas as informações ao usar o comando sh run ( abaixo segue o log gerado ), como podem vêr falta muita coisa, e o mesmo já deixa de lado e segue para o próximo da lista

    OBS: estou começando no universo Python. Assim como, estou fazendo uso do comando: terminal length 0 antes de sh run pra ele mostrar todas as config existente na running e com isso fazer print dessa saída.

    ———————–
    Logs
    ———————–

    configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    SW-01-2960X(config)#end
    SW-01-2960XX#terminal length 0
    SW-01-2960X#sh run
    Building configuration…

    Current configuration : 6604 bytes
    !
    ! Last configuration change at 11:00:41 BRT Tue Mar 21 2023 by –
    !
    version 12.2
    no service pad
    service timestamps debug datetime msec
    service timestamps log datetime msec
    no service password-encryption
    !
    hostname SW-01-2960X

    configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    SW-02-2960X(config)#end
    SW-02-2960X#terminal length 0
    SW-02-2960X#sh run
    Building configuration…

    Current configuration : 6581 bytes
    !
    ! Last configuration change at 11:00:48 BRT Tue Mar 21 2023 by –
    ! NVRAM config last updated at 13:51:20 BRT Wed Apr 13 2022 by –
    !
    version 12.2
    no service pad
    service timestamps debug datetime msec
    service timestamps log datetime msec
    no service password-encryption
    !
    hostname SW-02-2960X

    1. André Ortega says : Acesse para responder
      23/03/2023 at 14:18

      Olá João, obrigado por alertar. Fiz um teste aqui e realmente não esta funcionando.
      A coleta de informações funciona (ativando o debug você verá o output completo), mas o print (tela e arquivo) está sendo interrompido.
      Talvez no futuro eu investigue para ver o que está ocorrendo.

You must be logged in to post a comment.

POSTS RECENTES

  • Campanha de Spam no Brasil Abusa de Ferramentas RMM: Como Proteger Sua Empresa
    Campanha de Spam no Brasil Abusa de Ferramentas RMM: Como Proteger Sua Empresa
    09/05/2025
  • Vulnerabilidade CVE-2025-20188 no Cisco IOS XE Wireless LAN Controller: Como se Proteger
    Vulnerabilidade CVE-2025-20188 no Cisco IOS XE Wireless LAN Controller: Como se Proteger
    09/05/2025
  • LockBit Hackeado: Novo Ataque ao Grupo de Ransomware
    LockBit Hackeado: Novo Ataque ao Grupo de Ransomware
    07/05/2025
  • Protegendo a Tecnologia Operacional: Mitigações Primárias Contra Ameaças Cibernéticas
    Protegendo a Tecnologia Operacional: Mitigações Primárias Contra Ameaças Cibernéticas
    07/05/2025
  • Parâmetro VPN IPSec – Fase 1 e Fase 2
    Parâmetro VPN IPSec – Fase 1 e Fase 2
    06/05/2025

Tags

2024 #Broadcom 2324 #Multicloud 2015 2017 2022 2023 2350 200-301 25 anos 2560C 2960C 2960X 2975 350-050 3560-X 2009 2010 200-125 100-101 #VMwareTransformation 1 ano 1.1.1.100 10 anos 10 Gbps 100 empresas 200-120 100 Gigabit 1905 1921 1925 1941 2.0 200-101 3750-X 1900 2800 2900 2013 2011 1800 2960 3750 2960S

Arquivo

Login

  • Acessar
  • Feed de posts
  • Feed de comentários
  • WordPress.org

Acesse Também

  • Blog LabCisco
  • Café com Redes
  • Cisco IOS hints and tricks
  • Cisco Redes
  • Cisco Support Community
  • Coruja de TI
  • Homelaber Brasil
  • Internetwork Expert´s
  • Netfinders Brasil
  • Rota Default
  • TechRebels
  • The Cisco Learning Network

X

Blog: Verificando MD5 (hash) de um arquivo no Windows e Linux brainwork.com.br/2023/05/11/v… #Checksum #CiscoChampion #Hash

Hahahahah Muito bom twitter.com/TracketPacer/s…

Blog: Trocar ícone (favicon) da página guest no Cisco ISE brainwork.com.br/2023/04/24/t… #Cisco_Champion #Customização #Favicon

Blog: Cisco Champion 2023 brainwork.com.br/2023/04/10/c… #CiscoChampion

Blog: RFC 2324 (HTCPCP), conhece? brainwork.com.br/2023/04/01/r… #2324 #CiscoChampion #HTCPCP

Seguir @brainworkblog
  1. ./fernando em Aprenda Python e ganhe pontos para renovar as certificações CCNA, CCNP e CCIE
  2. André Ortega em Reset Cisco FTD (zerar FTD sem reinstalar)
  3. ALEX LIRA CAMACHO em Reset Cisco FTD (zerar FTD sem reinstalar)
  4. André Ortega em Atualizando Cisco 9300 (Install Mode)
  5. Dominique em Atualizando Cisco 9300 (Install Mode)

Entre em contato:

  • Web: www.brainwork.com.br
  • Facebook: fb.com/brainworkblog
  • Twitter: twitter.com/brainworkblog
  • Youtube: youtube.com/brainworkblog
  • Instagram: instagram.com/brainwork.blog
  • GET SOCIAL
Brainwork

© 2008 - 2022 Brainwork. Todos os direitos reservados.
Customização da página por Brainwork.

TOP