# 🧪 Configuração de Rede Segura (VPN WireGuard) - VPS 4 (Desenvolvimento / Staging) Este diretório contém os arquivos de configuração necessários para que a **VPS 4** (`10.99.0.4`) entre na rede privada criptografada do **Clube67** de forma totalmente segura. --- ## 🗺️ Visão de Conexão da VPS 4 ```mermaid graph LR VPS4["🧪 VPS 4 (Staging)
IP: 10.99.0.4"] VPS1["🖥️ VPS 1 (Hub Central)
IP: 10.99.0.1"] VPS3["🗄️ VPS 3 (Banco de Dados)
IP: 10.99.0.3"] VPS4 <== Canal Seguro VPN (Porta UDP 51820) ==> VPS1 VPS4 -- Replicação PostgreSQL (Porta 5432) --> VPS3 ``` --- ## 📁 Arquivos de Configuração Disponíveis 1. **[wg0.conf](file:///home/deploy/instrucoes/VPS-0.4/wg0.conf)**: Arquivo completo de configuração do WireGuard para ser colocado em `/etc/wireguard/wg0.conf` na **VPS 4**. 2. **[hub_peer_vps4.conf](file:///home/deploy/instrucoes/VPS-0.4/hub_peer_vps4.conf)**: Snippet de peer para ser adicionado à configuração do Hub (**VPS 1**). --- ## 🛠️ Passo a Passo para Configuração ### Passo 1: Configurar o Peer no Hub Central (VPS 1) Antes de ativar a conexão na VPS 4, o servidor central (**VPS 1**) precisa autorizar a sua chave pública. 1. Acesse o terminal da **VPS 1**. 2. Abra o arquivo `/etc/wireguard/wg0.conf` para edição: ```bash sudo nano /etc/wireguard/wg0.conf ``` 3. Adicione o seguinte bloco de peer ao final do arquivo: ```ini [Peer] # VPS 4 (Desenvolvimento / Staging) PublicKey = ln7phEfm4w//jZJqqlkGAjsXKWQnOw2kYc64ni5PXX0= AllowedIPs = 10.99.0.4/32 PersistentKeepalive = 25 ``` 4. Salve e recarregue as configurações do WireGuard na VPS 1 de forma viva (sem derrubar as conexões existentes): ```bash sudo wg syncconf wg0 <(wg-quick strip wg0) ``` ### Passo 2: Configurar o Cliente WireGuard na VPS 4 1. Acesse o terminal da **VPS 4**. 2. Instale o WireGuard caso ainda não esteja instalado: ```bash sudo apt-get update && sudo apt-get install -y wireguard ``` 3. Crie o arquivo `/etc/wireguard/wg0.conf` e cole o seguinte conteúdo: ```ini [Interface] Address = 10.99.0.4/24 PrivateKey = 4PAIHMPhK0RSs878Lc275hCu2lluzm0QTY9x7T25XEQ= [Peer] # VPS 1 (Hub Central / Gateway de Entrada) PublicKey = jUWnuc+82vQ6kLMSI7W1i7hBRBgQKcaSZ8yJy56QSUw= AllowedIPs = 10.99.0.0/24 Endpoint = 158.220.109.237:51820 PersistentKeepalive = 25 ``` 4. Ajuste as permissões do arquivo para segurança máxima (somente leitura para o root): ```bash sudo chmod 600 /etc/wireguard/wg0.conf ``` 5. Inicie a interface VPN e configure para iniciar automaticamente no reboot: ```bash sudo systemctl enable wg-quick@wg0.service sudo systemctl start wg-quick@wg0.service ``` ### Passo 3: Testar e Validar a Conexão Para verificar se a VPS 4 está inserida na rede com sucesso: 1. Veja o status do link: ```bash sudo wg show ``` 2. Realize um ping teste para o Hub central e para a VPS 3 (banco de dados): ```bash ping -c 3 10.99.0.1 ping -c 3 10.99.0.3 ``` 3. Teste a conexão segura de replicação com o PostgreSQL da VPS 3: ```bash pg_isready -h 10.99.0.3 -p 5432 ``` --- ## 🔒 Diretrizes de Segurança (Hardening) para a VPS 4 * **Firewall UFW**: Mantenha o UFW ativo na VPS 4, liberando a porta SSH pública apenas para a VPN ou desativando o SSH público inteiramente caso queira operá-la 100% Zero-Trust (acessível apenas pelo link WireGuard `10.99.0.4` do notebook do Rui). * **Non-local Bind**: Ative o nonlocal bind para que serviços dependentes da VPN possam iniciar no boot sem falhar se a interface wg0 demorar alguns milissegundos para subir: ```bash echo "net.ipv4.ip_nonlocal_bind=1" | sudo tee -a /etc/sysctl.conf sudo sysctl -p ```