From e22052e9c2f6163cd692ef3f824498ba726b209e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Pedro=20Toledo=20Goncalves?= Date: Wed, 17 Sep 2025 00:04:26 +0000 Subject: [PATCH] Adicionar README.md --- README.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..3806ded --- /dev/null +++ b/README.md @@ -0,0 +1,41 @@ +# ProxySync_Firewall + +O **ProxySync_Firewall** é um script de automação projetado para versionar e sincronizar as configurações do seu firewall pfSense com um repositório Git, como o Gitea. Ele garante um histórico completo de todas as alterações, facilitando a auditoria e a recuperação de desastres. + +Este serviço opera diretamente no ambiente FreeBSD do pfSense, usando `git` para gerenciar as alterações e `cron` para automatizar a execução. + +--- + +## Funcionalidades + +- **Sincronização Automática:** Exporta e commita a configuração do pfSense (`config.xml`) de forma agendada. +- **Armazenamento Seguro:** Guarda as credenciais do Gitea em um arquivo seguro, com permissões restritas. +- **Histórico de Alterações:** Cada alteração na configuração é registrada em um commit com metadados de data e hora. +- **Registro de Deploy:** Cria um arquivo de log no repositório para registrar as instalações e atualizações do script. + +--- + +## Instalação + +A instalação é um processo interativo. Basta copiar o conteúdo do script de instalação (`ProxySync_Firewall_Installer.sh`) para o seu firewall pfSense e executá-lo como `root`. + +1. **Acesse o shell do pfSense** via SSH. +2. **Crie e edite o arquivo do instalador** (por exemplo, `vi /tmp/install.sh`). +3. **Cole o conteúdo do script de instalação** e salve. +4. **Torne o arquivo executável:** `chmod +x /tmp/install.sh`. +5. **Execute o script:** `./tmp/install.sh`. + +O script irá guiar você, solicitando a URL do seu repositório Gitea, seu usuário, token de acesso e uma identificação de colaborador. + +--- + +## Uso + +### Sincronização + +Após a instalação, o script de sincronização principal será salvo em `/usr/local/sbin/commit_configs.sh`. + +Para executar a sincronização manualmente, basta rodar o comando: + +```bash +/usr/local/sbin/commit_configs.sh \ No newline at end of file