Backup Ubiquiti com usuários e senhas SSH diferentes
Publicado por Sergio Lenaz (última atualização em 10/10/2017)
[ Hits: 6.979 ]
Homepage: .
Galera, esse é um script pra quem tem vários rádios, com diferentes senhas do ssh entre eles (ou usuário), e precisa fazer backup das configurações.
Achei muitos scripts para fazer backup em lote, porém, para equipamentos com mesmo usuário e senha. Então fiz esse script p/ sanar minhas necessidades, e agora compartilho com vocês.
Ele criar uma pasta com a data do backup, e dentro dela, os arquivos .cfg. Depois pega os dados de um arquivo que contém:
nome_do_radio,IP_radio,usuario,senha
(exatamente nesse formato, separado por virgula " , " e 1 por linha)
Espero ajudar alguém no caminho!
Abraços.
#!/bin/bash
########################################
## Script para backups ##
## de equipamentos Ubiquiti ##
## Criado por Sergio Lenaz ##
########################################
export arquivo="/home/listaips.txt"
mkdir /home/paineis/`date +%d-%m-%Y`
export destino="/home/paineis/`date +%d-%m-%Y`"
#Log da hora que o backup inicia
export INICIO=`date +%d-%m-%Y_%H:%M:%S`
echo -e "#####***************Backup iniciado as $INICIO***************#####" >> /home/logs/ubiquiti.log
#Backup com base na lista de ips
for RADIO in `cat $arquivo`; do
nome=`echo $RADIO | cut -d',' -f 1`
ip=`echo $RADIO | cut -d',' -f 2`
usuario=`echo $RADIO | cut -d',' -f 3`
senha=`echo $RADIO | cut -d',' -f 4`
sshpass -p $senha ssh $ip -l $usuario -o StrictHostKeyChecking=no "cat /tmp/system.cfg" > $destino/$nome-$ip-backup-`date +%d-%m-%Y`.cfg 2> /dev/null && export FIM=`date +%d-%m-%Y_%H:%M:%S` && echo -e "O backup de $nome-$ip foi efetuado com sucesso em $FIM" >> /home/logs/ubiquiti.log || echo -e "Ocorreu um erro ao realizar o backup de $nome-$ip as `date +%d-%m-%Y_%H:%M:%S`" >> /home/logs/ubiquiti.log
done
Deleta os arquivos que estao com 0k - Backups que foram gerados com erro
find $destino -size 0k | xargs rm -fr *.cfg
#Deletar os arquivos criados a mais de 7 dias
find $destino -ctime +7 -exec rm -r {} \;
rotate.sh - Rotaciona arquivos de acordo com a data
BTRFS - Gerenciamento de snapshot por quantidade
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
Erro no suitable vídeo mode (4)
Navegar no Firefox sem passar pelo Google [RESOLVIDO] (2)
Pergunta: Meu teclado não está respondendo direito como e consertar? (3)
Erro: Lazarus 4.2 64 no Linux Mint não entra mais apos ajustar desktop... (1)









