Repositorio onde Ficará todos os arquivos de configuraçao do nosso proxy com atualização automatica aqui assim que for mudado qualquer coisa nele.
Go to file
srvproxy001.itguys.com.br a0d44039a1 [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 20:00:24 2025-09-16 20:00:24 -03:00
_automation_scripts [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 20:00:24 2025-09-16 20:00:24 -03:00
_deployment_logs [Deploy] Instalação inicial do serviço de sincronização em srvproxy001.itguys.com.br 2025-09-16 19:03:23 -03:00
fail2ban [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-15 21:18:44 2025-09-15 21:18:44 -03:00
nginx [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 20:00:24 2025-09-16 20:00:24 -03:00
ufw [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:22:23 2025-09-16 19:22:23 -03:00
zabbix [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:26:10 2025-09-16 19:26:10 -03:00
Instal-Proxy-Sinc.sh Atualizar Instal-Proxy-Sinc.sh 2025-09-16 22:57:46 +00:00
README.md Atualizar README.md 2025-09-16 21:46:25 +00:00
hosts [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:22:23 2025-09-16 19:22:23 -03:00
nginx.service [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:22:23 2025-09-16 19:22:23 -03:00
nsswitch.conf [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:22:23 2025-09-16 19:22:23 -03:00
override.conf [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:22:23 2025-09-16 19:22:23 -03:00
resolv.conf [Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-16 19:22:23 2025-09-16 19:22:23 -03:00

README.md

Serviço de Sincronização de Configurações - Proxy-Sinc

Este repositório contém as configurações e os scripts de automação para o serviço proxy-sinc, desenhado para automatizar o controlo de versões de ficheiros de configuração de servidores Linux para um repositório Git (Gitea).

O objetivo é criar um sistema robusto, auto-documentado e fácil de gerir para o backup e o histórico de alterações de configurações críticas como as do Nginx e do Fail2ban.

Funcionalidades Principais Implementadas pelo Instalador

Gestão de Dependências

  • Verifica e instala automaticamente as dependências necessárias (git, rsync) usando apt.

Configuração Interativa e Segura

  • Pede ao utilizador a URL do repositório, o nome de utilizador do Gitea e um Token de Acesso (que fica oculto durante a digitação) para a autenticação.

  • A URL do repositório é reconfigurada para incluir as credenciais, permitindo que as operações git futuras (como o git push) sejam executadas de forma não-interativa.

Identidade de Commit Automática

  • O nome do autor dos commits é automaticamente definido como o hostname completo do servidor (ex: srvproxy001.itguys.com.br).

  • O email do autor é gerado automaticamente a partir do hostname (ex: srvproxy001@itguys.com.br).

Gestão Inteligente de SSL

  • O script testa automaticamente a conexão com o Gitea. Se detetar um problema de certificado SSL (comum em ambientes internos), ele configura o repositório local para ignorar a verificação SSL, garantindo que a sincronização funcione.

Registo de Deploy

  • Na primeira instalação num novo servidor, o script cria um ficheiro de registo (_deployment_logs/hostname.md) no repositório, documentando quem (utilizador do Gitea) instalou o serviço e quando, criando uma trilha de auditoria.

Instalação como Serviço systemd

  • Gera e instala um serviço systemd (proxy-sinc.service) e um timer (proxy-sinc.timer).

  • Esta abordagem é superior ao cron pois integra-se perfeitamente com o sistema de logs journald, permitindo uma gestão fácil com systemctl status, start, stop, etc.

  • O timer está configurado para executar o script de sincronização a cada minuto.

Sincronização Dinâmica de Ficheiros

  • O script principal de sincronização (commit_configs.sh) agora lê os caminhos a serem versionados a partir de um ficheiro de configuração central (/etc/proxy-sinc/paths.conf).

  • Isto permite que os administradores adicionem ou removam ficheiros e pastas para sincronização no futuro, simplesmente editando este ficheiro de texto, sem precisar de alterar o script.

Auto-Versionamento

  • O script commit_configs.sh foi desenhado para se incluir a si mesmo e a todos os seus ficheiros de configuração e de serviço (.service, .timer, man page, paths.conf) no repositório Git. Desta forma, qualquer alteração na própria automação também é versionada.

Funcionalidade de Auto-Atualização

  • Instala um novo comando no sistema, proxy-sinc-update.

  • Quando executado, este comando baixa a versão mais recente do setup.sh a partir de uma URL pré-definida no repositório Gitea e executa-a, permitindo uma atualização fácil e centralizada de toda a automação.

Documentação Integrada (man page)

  • Gera e instala uma página de manual (man proxy-sinc) no sistema.

  • O manual explica o que o serviço faz, como o gerir, como o atualizar e, o mais importante, como adicionar novos caminhos de ficheiros para serem sincronizados, tornando a ferramenta fácil de usar para qualquer membro da equipa no futuro.