# 🛡️ Plano de Contingência e Alta Disponibilidade da VPN Este documento descreve detalhadamente as soluções propostas para evitar o bloqueio de acesso e garantir a continuidade da comunicação entre os servidores (**VPS 3, 4 e 5**) caso o servidor central de VPN (**VPS 1**) sofra uma queda ou falha de sistema. --- ## 🚨 O Problema: O Ponto Único de Falha (SPOF) Atualmente, a rede privada utiliza uma topologia em **Estrela (Hub-and-Spoke)**, onde a **VPS 1** é o Hub central. Se a VPS 1 cair: 1. A rede VPN criptografada (`10.99.0.0/24`) deixa de funcionar. 2. A comunicação interna entre os servidores (como o envio de dados do app para o banco de dados na VPS 3) é interrompida. 3. Como o SSH padrão (porta 22) está fechado na internet pública para as outras VPSs, você fica **impedido de acessar os servidores via terminal de forma convencional**, necessitando recorrer ao Console VNC no painel web da Contabo. Abaixo estão as três soluções de contingência, ordenadas de forma prática. --- ## 🚪 Opção A: Estratégia Sênior Zero-Trust (Recomendado - 🛡️ Segurança Absoluta) Esta abordagem elimina qualquer necessidade de expor portas SSH na internet pública (mesmo portas altas secundárias). Em vez de manter uma porta pública de "fallback" (vulnerável a ruído de scanners e bots), a administração e o tráfego de diagnóstico são restringidos a **100% de conexões internas criptografadas por VPN WireGuard**. ### Como mitigar o risco de lockout (Bloqueio de Acesso): Para evitar o isolamento de acesso caso o servidor central de VPN caia, adota-se uma trilha tripla de contingência: 1. **Console VNC nativo do Provedor (Ex: Contabo)**: Mantido ativo na console web do provedor como canal de recuperação direta de emergência e console físico absoluto em caso de desastre. 2. **Peers WireGuard Redundantes (Multi-Device)**: Configuração de múltiplos dispositivos do administrador autorizados no Hub: * **Peer 1**: Notebook Principal. * **Peer 2**: Notebook Reserva, celular corporativo ou VM dedicada. 3. **Backups Offline de Chaves e Configurações**: Armazenamento das configurações de VPN do Wireguard (`wg0.conf`) de forma cifrada offline (Ex: Pendrive criptografado, Cofre físico ou Vault de segurança como Bitwarden/1Password). ### Vantagens dessa Abordagem: * **Zero Exposição Pública**: Nenhuma porta além de 80 e 443 (na VPS 1) e da porta UDP do WireGuard ficam abertas na internet. * **Redução de Overhead**: Conectar de ferramentas administrativas (como DBeaver ou SSH direto) diretamente via IP da VPN (`10.99.0.3`) sem necessidade de fazer túneis SSH adicionais desnecessários sobre o canal VPN. --- ## 🕸️ Opção B: Comunicação Direta entre as VPSs (Full-Mesh - 🛠️ Intermediário) Consiste em criar túneis diretos do WireGuard entre as VPSs 3, 4 e 5, dispensando a necessidade de a VPS 1 estar online para que elas conversem entre si. ### Como configurar as rotas diretas: Para fazer isso, precisamos adicionar as chaves públicas e os IPs de endpoint físicos das outras VPSs diretamente no arquivo `/etc/wireguard/wg0.conf` de cada uma das máquinas. **Exemplo de configuração na VPS 3 (`/etc/wireguard/wg0.conf`):** ```ini [Interface] Address = 10.99.0.3/24 PrivateKey = ListenPort = 52830 # Peer 1: VPS 1 (Hub Central) [Peer] PublicKey = jUWnuc+82vQ6kLMSI7W1i7hBRBgQKcaSZ8yJy56QSUw= AllowedIPs = 10.99.0.1/32 Endpoint = 158.220.109.237:51820 PersistentKeepalive = 25 # Peer 2: VPS 4 (Conexão Direta - Redundância) [Peer] PublicKey = ln7phEfm4w//jZJqqlkGAjsXKWQnOw2kYc64ni5PXX0= AllowedIPs = 10.99.0.4/32 Endpoint = :51820 PersistentKeepalive = 25 # Peer 3: VPS 5 (Conexão Direta - Redundância) [Peer] PublicKey = AllowedIPs = 10.99.0.5/32 Endpoint = :51820 PersistentKeepalive = 25 ``` ### Vantagens: * Se a VPS 1 quebrar, as conexões de banco de dados (`10.99.0.3`) das VPSs 4 e 5 continuam funcionando de forma 100% direta e automática. --- ## 🔄 Opção C: VPN Secundária de Backup (Failover Hub - 🛠️ Avançado) Consiste em configurar a **VPS 3** (Banco de Dados) ou a **VPS 5** (CRM) como um **segundo servidor de VPN (redundante)** rodando sob uma interface separada (ex: `wg1`), criando um caminho de fuga independente. ### Estrutura de Rede da VPN de Backup: * **VPN Principal (`wg0`)**: Hub na VPS 1, rede `10.99.0.0/24`. * **VPN de Backup (`wg1`)**: Hub na VPS 3, rede `10.98.0.0/24`. ### Configuração da VPS 3 como Hub Redundante (`/etc/wireguard/wg1.conf`): ```ini [Interface] Address = 10.98.0.3/24 # IP da VPS 3 na nova rede de backup PrivateKey = ListenPort = 51821 # Porta diferente para não colidir com o wg0 # Peer 1: Seu Notebook [Peer] PublicKey = AllowedIPs = 10.98.0.10/32 # Peer 2: VPS 4 [Peer] PublicKey = AllowedIPs = 10.98.0.4/32 # Peer 3: VPS 5 [Peer] PublicKey = AllowedIPs = 10.98.0.5/32 ``` ### Vantagens: * Se a VPS 1 desaparecer da internet por completo, basta que você e seus sistemas ativem a interface `wg1` do WireGuard. Toda a sua infraestrutura continuará conectada em questão de segundos através da nova rede segura comandada pela VPS 3!