Backup XML Pfsense
Publicado por fabio brigido (última atualização em 22/02/2023)
[ Hits: 2.791 ]
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.
#!/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' ' ')
Script Backup com Log e envio por Email
sync_local - backup/restauração local
Restauração de backup Firebird a partir de um arquivo .7Z contendo um GBK
Limpeza dos dados do rConfig (ferramenta open-source de gerenciamento de configuração
Backup de banco de dados MySQL
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)