docs: Atualiza README com detalhes da nova infraestrutura

This commit is contained in:
João Pedro Toledo Goncalves 2026-02-04 19:20:34 -03:00
parent 609c92f484
commit 44c0220cba
1 changed files with 24 additions and 59 deletions

View File

@ -1,67 +1,32 @@
# Nginx Pathfinder Proxy # Nginx Pathfinder - Infraestrutura (Produção)
## Visão Geral Este diretório contém o "motor" do Proxy Reverso Pathfinder. Ele gerencia a imagem Docker, a orquestração de serviços e os componentes de segurança de baixo nível.
Proxy Reverso NGINX simplificado rodando em um **único container Docker**.
Este projeto foi refatorado para remover automações complexas, WAF (ModSecurity) e Fail2ban, focando em simplicidade e gerenciamento manual.
## Arquitetura ## 🚀 O que este repositório faz:
- **Serviço**: `nginx-proxy` (Imagem Alpine Customizada) * **Engine High-End:** Nginx 1.25 (Mainline) customizado.
- **Portas**: `80`, `443` (Modo Bridge) * **Protocolos Modernos:** Suporte nativo a **HTTP/3 (QUIC)** e Brotli.
- **Gerenciamento**: Manual via edição de arquivos no host. * **Segurança Nativa:** Compilado com **ModSecurity v3** (WAF).
* **Orquestração:** Gerencia o container Nginx e o Sidecar do **Fail2Ban**.
* **Auto-Healing:** Script `safe-deploy.sh` para validação atômica de configurações.
## Estrutura de Arquivos ## 🏗️ Estrutura de Arquivos
``` ```text
. .
├── conf.d/ # Configurações de sites (VHosts) - EDITE AQUI ├── Dockerfile # Build Multi-stage (Compilação do Nginx + ModSec)
├── snippets/ # Trechos reutilizáveis (Rate Limit, Cache, Maps) ├── docker-compose.yml # Orquestração (Nginx + Fail2Ban + Volumes)
├── ssl/ # Certificados SSL (.crt, .key) ├── entrypoint.sh # Inicialização de serviços (Nginx, SSH)
├── nginx.conf # Configuração global ├── safe-deploy.sh # Script para recarregar configs sem downtime
├── docker-compose.yml # Definição do serviço └── fail2ban/ # Configurações do sidecar de segurança
└── Dockerfile # Definição da imagem
``` ```
## Como Usar ## ⚙️ Operação
Para gerenciar o ciclo de vida do container:
* **Build:** `docker compose build`
* **Start:** `docker compose up -d`
* **Logs da Infra:** `docker compose logs -f`
### 1. Iniciar ---
```bash
docker compose up -d --build
```
### 2. Adicionar Novo Site > [!IMPORTANT]
Crie um arquivo `.conf` na pasta `conf.d/`. > **Configurações de Sites:** Este repositório NÃO contém as regras de sites ou certificados. Para editar domínios, snippets e regras do WAF, utilize o repositório:
**Exemplo:** > [NGINX Pathfinder - Sites Ativos](../sites-ativos)
```nginx
server {
listen 80;
server_name exemplo.com.br;
location / {
proxy_pass http://192.168.1.50:8080;
include /etc/nginx/snippets/proxy_params.conf; # Se houver params comuns
}
}
```
### 3. Aplicar Mudanças
Após editar qualquer arquivo (`nginx.conf` ou `conf.d/*`), recarregue o Nginx:
```bash
docker exec nginx-proxy nginx -s reload
```
### 4. SSL
Coloque seus certificados manualment na pasta `ssl/` e aponte no seu config:
```nginx
ssl_certificate /etc/nginx/ssl/meu-site.crt;
ssl_certificate_key /etc/nginx/ssl/meu-site.key;
```
## Cache
O sistema utiliza uma zona de cache dinâmica única.
Para ativar cache em um location:
```nginx
location / {
proxy_cache dynamic_cache;
proxy_cache_valid 200 1h;
proxy_pass http://backend;
}
```