Backup XML Pfsense

Publicado por fabio brigido (última atualização em 22/02/2023)

[ Hits: 3.393 ]

Download back-pfsense.sh




Recentemente precisei efetuar backup do xml de configuração de vários PFsense de clientes. Após várias pesquisas e testes acabei chegando no script abaixo. Para funcionar basta criar um usuário no pfsense, no meu caso criei com nome backup e dei permissão apenas a download do arquivo xml. Altere as linhas USUARIO, SENHA e IP_PFSENSE e caso use uma porta específica basta adicionar :PORTA. Pode-se usar em vários PFSense ao mesmo tempo bastando apenas replicar as linhas indicadas.  Hospedo o script numa máquina Rocky Linux 9 e agendo no cron para executar uma vez ao dia. O Script apaga arquivos com mais de que 30 dias nas pastas automaticamente.

  



Esconder código-fonte

#!/bin/sh
###################################
# Arquivo : back-pfsense.sh   #####
# Autor: Fabio Brigido        #####
# Watts Soluções em TI        ##### 
# Versao: 1.0 15/02/2023      #####
# ——-|————+——————-+———————————#####
#                             ##### 
##### Variaveis de ambiente #######
###################################

LOG="/tmp/Backup XML pfSense `date +%d-%m-%Y`.txt"
XML="/opt/XML"


echo "Arquivos com mais de 30 dias que serão apagados no diretorio XML" >> $LOG
find $XML ! -mtime -30 | xargs rm -rf >> $LOG

# Pode-se fazer backup de quantos PFsense necessários apenas duplique as linhas abaixo e altere conforme necessário, alterando USUARIO, SENHA E IP_PFSENSE

echo "Backup pfSense" >> $LOG
# Adquirindo valores de cookie.
/usr/bin/curl -k -b cookies.txt -c cookies.txt --data 'login=Login&usernamefld=USUARIO&passwordfld=SENHA' https://ip_pfsense/diag_backup.php
# Download do arquivo de configuração.
/usr/bin/curl -k -b cookies.txt -o $XML/config-firewall-`date +%d-%m-%Y`.xml --data 'Submit=download&donotbackuprrd=no' https://ip_pfsense/diag_backup.php

# Envia email informativo
# Uso um arquivo com todos os destinatários que o mutt precisa enviar os logs.
echo 'Log de backup em anexo' | mutt -s 'Backup XMLs pfSense concluído com sucesso!' -a $LOG -- $(cat /opt/destinatarios | tr '\n' ' ')

Scripts recomendados

Shell Script para gravar iso de xbox 360 para LT 3.0 burnisolt3

Script de backup de usuários do sistema

Backup Completo Cpanel

Backup de banco de dados MySQL

Backup Ubiquiti com usuários e senhas SSH diferentes


  

Comentários
[1] Comentário enviado por maurixnovatrento em 14/05/2023 - 19:53h


muito bom.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/mxnt10

[2] Comentário enviado por iltoncesar em 29/09/2023 - 09:14h


obrigado, estava procurando vou testar e implementar.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts