Files
instrucoes_gerais/VPS-0.4/README.md
T

105 lines
3.7 KiB
Markdown

# 🧪 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) <br> IP: 10.99.0.4"]
VPS1["🖥️ VPS 1 (Hub Central) <br> IP: 10.99.0.1"]
VPS3["🗄️ VPS 3 (Banco de Dados) <br> 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
```