feat: Adiciona 15 manuais de pfSense (Rede, Segurança, VPNs, Diag) e atualiza README

This commit is contained in:
João Pedro Toledo Goncalves 2026-01-25 18:50:43 -03:00
parent 2f7ed4f454
commit 71f7db8be9
48 changed files with 1519 additions and 17 deletions

View File

@ -122,7 +122,7 @@
]
},
"ITGINF": {
"next_id": 14,
"next_id": 22,
"manuals": [
{
"code": "ITGINF 0001/26",
@ -214,11 +214,67 @@
"title": "Configuração de Snapshots e Replicacao",
"created_at": "2026-01-25 17:45:12",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0014/26",
"id": 14,
"title": "Instalacao pfSense",
"created_at": "2026-01-25 18:23:51",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0015/26",
"id": 15,
"title": "Customizacao pfSense",
"created_at": "2026-01-25 18:23:52",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0016/26",
"id": 16,
"title": "Usuarios LDAP pfSense",
"created_at": "2026-01-25 18:23:52",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0017/26",
"id": 17,
"title": "Interfaces e VLANs pfSense",
"created_at": "2026-01-25 18:31:51",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0018/26",
"id": 18,
"title": "Firewall e NAT pfSense",
"created_at": "2026-01-25 18:31:51",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0019/26",
"id": 19,
"title": "Servico DNS pfSense",
"created_at": "2026-01-25 18:37:15",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0020/26",
"id": 20,
"title": "Servico DHCP pfSense",
"created_at": "2026-01-25 18:37:15",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGINF 0021/26",
"id": 21,
"title": "Servico TFTP pfSense",
"created_at": "2026-01-25 18:37:15",
"author": "João Pedro Toledo Gonçalves"
}
]
},
"ITGENG": {
"next_id": 19,
"next_id": 21,
"manuals": [
{
"code": "ITGENG 0001/26",
@ -345,6 +401,20 @@
"title": "Configuração de iSCSI Target",
"created_at": "2026-01-25 17:50:24",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGENG 0019/26",
"id": 19,
"title": "Planejamento Hardware pfSense",
"created_at": "2026-01-25 18:23:51",
"author": "João Pedro Toledo Gonçalves"
},
{
"code": "ITGENG 0020/26",
"id": 20,
"title": "MultiWAN e Roteamento pfSense",
"created_at": "2026-01-25 18:31:51",
"author": "João Pedro Toledo Gonçalves"
}
]
}

View File

@ -5,20 +5,21 @@ Este repositório contém a documentação técnica da iT Guys, organizada por s
## 📊 Quadro de Status dos Manuais
### 1. Rede e Segurança (pfSense / Suricata / OpenVPN)
- [ ] [Nível 1] Diagnóstico de Conectividade e Logs
- [ ] [Nível 2] Gestão de Regras de Firewall e Aliases
- [ ] [Nível 2] Configuração e Troubleshooting de VPN
- [ ] [Nível 3] Backup e Restauração de Configurações
- [ ] [Nível 3] Atualização e Hardening
- [ ] [Nível 2] Suricata: Instalação e Integração
- [ ] [Nível 2] Suricata: Gestão de Regras
- [ ] [Nível 3] Suricata: Análise de Alertas
- [ ] [Nível 1] OpenVPN: Instalação do Servidor
- [ ] [Nível 2] OpenVPN: Configuração de Clientes
- [ ] [Nível 3] OpenVPN: Troubleshooting de Conexão
- [ ] [Nível 2] VLANs: Conceitos e Configuração
- [ ] [Nível 2] VLANs: Configuração em pfSense/Linux
- [ ] [Nível 3] VLANs: Troubleshooting
- [x] [Nível 3] Planejamento de Hardware e Virtualização
- [x] [Nível 2] Instalação Inicial e Setup Wizard
- [x] [Nível 2] Customização e Identidade Visual
- [x] [Nível 2] Gerenciamento de Usuários e Autenticação (LDAP)
- [x] [Nível 2] Configuração de Interfaces e Redes (VLAN/LAGG)
- [x] [Nível 3] Multi-WAN, Gateway Groups e Roteamento
- [x] [Nível 2] Firewall, NAT e Alias
- [x] [Nível 2] Serviço de DNS (Resolver e Forwarder)
- [x] [Nível 2] Serviço de DHCP e Reservas
- [x] [Nível 2] Serviço TFTP e Provisionamento
- [x] [Nível 3] Filtro de Conteúdo com pfBlockerNG
- [x] [Nível 3] IDS/IPS com Suricata
- [x] [Nível 2] VPN Road Warrior (OpenVPN + LDAP)
- [x] [Nível 3] VPN Site-to-Site (OpenVPN)
- [x] [Nível 3] Diagnóstico Avançado, Shell Recovery e Logs
### 2. Storage (TrueNAS / ZFS)
- [x] [Nível 1] Monitoramento de Saúde de Discos
@ -109,7 +110,6 @@ Este repositório contém a documentação técnica da iT Guys, organizada por s
**Novas Seções (Fase 2 & 3):**
- [ ] [Nível 1-3] Service Desk (Zammad)
- [ ] [Nível 1-3] Hardware e Infraestrutura (iDRAC/UPS)
- [ ] [Nível 2-3] Scripting e Automação (PowerShell/Bash)
- [ ] [Nível 1-3] Processos e SOPs (NOC/Incidentes)
- [ ] [Nível 1-3] Ferramentas e Web Servers (Nginx/Apache/FTP/Certbot)
- [ ] [Nível 1-3] Cloud e Colaboração (Nextcloud/Office)

View File

@ -0,0 +1,94 @@
# MANUAL TÉCNICO - INSTALAÇÃO E CONFIGURAÇÃO INICIAL - PFSENSE
**Código:** ITGINF 0014/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Padronizar o processo de instalação limpa do pfSense, garantindo o uso correto do sistema de arquivos ZFS e a configuração inicial segura via Wizard.
## 3. PRÉ-REQUISITOS
- [ ] ISO do pfSense CE ou Plus baixada (Versão 2.7+ recomendada).
- [ ] Pen Drive bootável (usando Rufus/Etcher) ou ISO montada na VM.
- [ ] 2 Interfaces de Rede (WAN e LAN) identificadas (MAC Address anotado).
- [ ] Acesso à Console (VGA/HDMI ou Serial para appliances).
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Boot e Instalação (ZFS)
1. Inicie o equipamento/VM com a mídia de instalação.
2. Aceite o Termo de Uso (Copyright).
3. No menu de instalação, selecione **"Install (ZFS)"** para garantir resiliência contra corrupção de dados.
![Instalação ZFS pfSense](assets/pfsense_zfs_install.png)
4. **Configuração do ZFS:**
* **Pool Type/Disks:**
* **Stripe:** Para 1 disco (Sem redundância).
* **Mirror:** Para 2 discos (RAID 1 - Recomendado).
* **Swap Size:** Mantenha o padrão ou aumente se tiver pouca RAM.
5. Confirme a formatação e aguarde a cópia dos arquivos.
6. Ao finalizar, selecione **Reboot**.
### Etapa 2: Atribuição de Interfaces (Console Assigment)
Após o reboot, o sistema perguntará sobre VLANs.
1. **Should VLANs be set up now [y|n]?** Digite `n` (Configuraremos depois se necessário).
2. **Enter the WAN interface name:** Digite o nome da interface (ex: `em0` ou `vtnet0`).
3. **Enter the LAN interface name:** Digite o nome da interface (ex: `em1` ou `vtnet1`).
4. Confirme com `y`.
> **NOTA:** O pfSense atribuirá o IP `192.168.1.1/24` para a LAN por padrão.
### Etapa 3: Setup Wizard (WebGUI)
1. Conecte um PC na porta LAN e acesse `https://192.168.1.1`.
2. Faça login com usuário `admin` e senha `pfsense`.
3. Siga o **Setup Wizard**.
![pfSense Setup Wizard](assets/pfsense_wizard.png)
4. **Parâmetros Críticos:**
* **Hostname:** `{{HOSTNAME}}` (ex: fw-matriz).
* **Domain:** `{{DOMINIO}}` (ex: itguys.local).
* **DNS Servers:** Use `1.1.1.1` e `8.8.8.8` (ou DNS interno se houver AD).
* **Timezone:** `America/Sao_Paulo`.
* **WAN Interface:** Configure DHCP ou Static IP conforme o link do cliente.
* > ⚠️ **IMPORTANTE:** Desmarque "Block RFC1918 Private Networks" na WAN se o pfSense estiver atrás de outro modem roteado.
* **Set Admin WebGUI Password:** Defina a senha padrão da iT Guys (`{{SENHA_PADRAO}}`).
5. Clique em **Reload** para aplicar.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Erro "Mounting from zfs:zroot/ROOT/default failed" no boot**
* **Causa:** Instalação corrompida ou disco com defeito.
* **Solução:** Reinstale selecionando "Install (UFS)" para testar se é problema de hardware/controladora incompatível com ZFS, ou troque o disco.
**Problema 2: Não consigo acessar a WebGUI (192.168.1.1)**
* **Solução:**
1. Verifique se o PC pegou IP na faixa 192.168.1.x.
2. Se não, configure IP fixo no PC (`192.168.1.10`).
3. Tente pingar `192.168.1.1`.
4. Se falhar, use a Opção 8 (Shell) na console e digite `pfctl -d` para desativar o firewall temporariamente.
## 6. DADOS TÉCNICOS
| Campo | Valor Padrão | Descrição |
| :--- | :--- | :--- |
| **Usuário** | admin | Superusuário |
| **Senha Factory** | pfsense | Senha de fábrica |
| **IP LAN** | 192.168.1.1 | IP Padrão |
| **HTTPS Port** | 443 | Porta de Gestão |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] WebGUI acessível via HTTPS?
- [ ] Senha de admin alterada?
- [ ] Dashboard exibe status "Online" para WAN?

View File

@ -0,0 +1,90 @@
# MANUAL TÉCNICO - CUSTOMIZAÇÃO E IDENTIDADE VISUAL - PFSENSE
**Código:** ITGINF 0015/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Padronizar a interface visual do pfSense para facilitar a identificação rápida de problemas e diferenciar ambientes (ex: Matriz vs Filial) visualmente, além de garantir acesso seguro via HTTPS.
## 3. PRÉ-REQUISITOS
- [ ] Acesso de admin ao pfSense.
- [ ] Navegador compatível.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Temas e Identidade Visual
O uso do tema escuro é recomendado para reduzir cansaço visual e melhorar contraste dos gráficos.
1. Acesse `System > General Setup`.
2. Em **WebGUI Settings**, localize o campo **Theme**.
3. Selecione `pfSense-dark` (ou o tema padrão da Netgate se preferir).
4. Certifique-se de que o **Hostname** diferencia o firewall (ex: `firewall-sp`, `firewall-rj`).
### Etapa 2: Organização do Dashboard
Um dashboard limpo salva tempo no diagnóstico.
1. Na página inicial (Dashboard), clique no ícone **+** (Widgets).
2. Adicione os seguintes widgets essenciais:
* **Interfaces:** Para ver status UP/DOWN de WAN/LAN.
* **Gateways:** Para monitorar latência e packet loss da internet.
* **Traffic Graphs:** Monitoramento em tempo real.
* **Service Status:** Verificar se DHCP, DNS, VPN estão rodando.
* **Thermal Sensors:** (Se hardware físico suportar).
3. Organize em 2 ou 3 colunas conforme o tamanho do monitor.
![Dashboard Customizado](assets/pfsense_dashboard.png)
### Etapa 3: Banner de Login (Aviso Legal)
Para compliance, adicione um aviso de acesso restrito.
1. Acesse `System > Advanced > Admin Access`.
2. Em **Login Protection**, preencha o campo **Login Message**:
> "ACESSO RESTRITO A PESSOAL AUTORIZADO DA IT GUYS. TODO ACESSO É MONITORADO."
3. Salve.
### Etapa 4: Configuração de Certificado HTTPS
Evite o erro "Não seguro" no navegador.
1. Acesse `System > Cert. Manager > CAs`.
2. Crie uma CA interna (ex: "ITGuys Internal CA").
3. Vá em `Certificates` e crie um Certificado Server:
* **Common Name:** O IP ou DNS do firewall (ex: `192.168.1.1` ou `fw.cliente.local`).
* **Alternative Names (SANs):** Adicione todos os IPs de gestão.
4. Vá em `System > Advanced > Admin Access`.
5. Em **SSL Certificate**, selecione o certificado criado.
6. Salve (O navegador reiniciará o serviço web).
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Perdi o acesso após trocar o tema/certificado**
* **Solução:**
1. Acesse via SSH ou Console Física.
2. Digite `11` (Restart webConfigurator).
3. Se não resolver, digite `15` (Restore Recent Configuration) para voltar ao passo anterior.
**Problema 2: Widgets não carregam (ficam girando)**
* **Causa:** Bloqueio de script ou cache do navegador.
* **Solução:** Limpe o cache do navegador (Ctrl+F5) ou verifique se o DNS do firewall está resolvendo nomes externos (para widgets que buscam update).
## 6. DADOS TÉCNICOS
| Campo | Valor Recomendado | Descrição |
| :--- | :--- | :--- |
| **Theme** | pfSense-dark | Tema Escuro |
| **Colunas Dashboard** | 2 | Ideal para monitores < 24" |
| **Widgets Max** | 6 | Evita lentidão no carregamento |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Dashboard exibe Widgets de Interface e Gateways?
- [ ] Tema escuro aplicado?
- [ ] Aviso legal aparece na tela de login?

View File

@ -0,0 +1,93 @@
# MANUAL TÉCNICO - GERENCIAMENTO DE USUÁRIOS E LDAP - PFSENSE
**Código:** ITGINF 0016/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Centralizar a autenticação de VPNs e acesso administrativo da WebGUI integrando o pfSense ao Active Directory (LDAP), eliminando a necessidade de criar usuários locais manualmente.
## 3. PRÉ-REQUISITOS
- [ ] IP do Controlador de Domínio (DC).
- [ ] Usuário de Serviço no AD (ex: `svc_pfsense`) com senha que não expira.
- [ ] Grupo de Segurança no AD para Admins (ex: `G_TI_Admins`).
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Configurar Servidor de Autenticação
1. Acesse `System > User Manager > Authentication Servers`.
2. Clique em **Add**.
3. Preencha conforme abaixo:
* **Descriptive Name:** `AD_Principal`
* **Type:** `LDAP`
* **Hostname or IP address:** `{{IP_DC_PRINCIPAL}}` (ex: 192.168.0.10)
* **Port value:** `389` (TCP - Standard) ou `636` (SSL - Encrypted)
* **Transport:** `TCP - Standard` (Recomendado iniciar assim para teste, migrar para SSL depois).
* **Search Scope Level:** `Entire Subtree`
* **Base DN:** `{{BASE_DN}}` (ex: DC=itguys,DC=local).
* **Authentication Containers:** `{{USER_PC_CONTAINER}}` (ex: CN=Users,DC=itguys,DC=local).
* **Bind Credentials:**
* **User DN:** `CN=svc_pfsense,CN=Users,CD=itguys,DC=local`
* **Password:** Senha do usuário de serviço.
* **User Naming Attribute:** `samAccountName` (Padrão Microsoft AD).
* **Group Member Attribute:** `memberOf` (Padrão Microsoft AD).
![Configuração LDAP pfSense](assets/pfsense_ldap.png)
4. Clique em **Save**.
### Etapa 2: Testar Autenticação
1. Vá em `Diagnostics > Authentication`.
2. Selecione o servidor `AD_Principal`.
3. Digite um usuário e senha válidos do AD.
4. Clique em **Test**.
* **Sucesso:** "User: johndoe authenticated successfully."
* **Falha:** Verifique logs em `Status > System Logs > Authentication`.
### Etapa 3: Mapear Grupos e Permissões
Para que o usuário do AD possa logar na WebGUI, o grupo dele deve ter permissão no pfSense.
1. Vá em `System > User Manager > Groups`.
2. Crie um grupo **com o MESMO NOME** do grupo do AD (ex: `G_TI_Admins`).
3. Em **Group Membership**, deixe vazio (os membros virão do AD).
4. Clique em **Save**.
5. Edite o grupo criado e vá em **Assigned Privileges**.
6. Adicione a permissão `WebCfg - All pages` (para Admins).
7. Salve.
### Etapa 4: Configurar WebGUI para usar LDAP
1. Vá em `System > User Manager > Settings`.
2. Em **Authentication Server**, selecione `AD_Principal`.
3. Salve e Teste.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Erro "Bind failed"**
* **Causa:** Usuário ou senha do Bind incorretos.
* **Solução:** Teste as credenciais do `svc_pfsense` com a ferramenta `ldp.exe` no Windows ou verifique se a conta não está bloqueada.
**Problema 2: Usuário loga, mas vê "No page assigned to this user"**
* **Causa:** O grupo do AD não foi criado no pfSense ou não tem privilégios.
* **Solução:** Revise etapa 3. O nome do grupo deve ser IDÊNTICO (Case Sensitive).
## 6. DADOS TÉCNICOS
| Campo | Valor Recomendado | Descrição |
| :--- | :--- | :--- |
| **LDAP Port** | 389 (Clear) / 636 (SSL) | Porta de conexão |
| **Timeout** | 25 | Tempo limite de conexão |
| **Attribute** | samAccountName | Identificador de Login AD |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Teste de autenticação no Diagnostics OK?
- [ ] Usuário do AD consegue logar na WebGUI?
- [ ] Permissões administrativas aplicadas corretamente?

View File

@ -0,0 +1,95 @@
# MANUAL TÉCNICO - INTERFACES, VLANS E LAGG - PFSENSE
**Código:** ITGINF 0017/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Padronizar a configuração de Interfaces lógicas (VLANs), físicas e grupos de agregação (LAGG) para segmentação de rede segura.
## 3. PRÉ-REQUISITOS
- [ ] Switch gerenciável com suporte a 802.1q (VLAN Tagging).
- [ ] Planejamento de IDs de VLAN e Subnets.
- [ ] Acesso administrativo ao pfSense.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Criação de VLANs (Layer 2)
Crie a intreface lógica antes de atribuí-la.
1. Acesse `Interfaces > Assignments > VLANs`.
2. Clique em **Add**.
3. Preencha:
* **Parent Interface:** Selecione a interface física MÃE (ex: `ix0` ou `em1` - LAN).
* **VLAN Tag:** ID numérico (ex: `10` para Visitantes, `20` para VoIP).
* **Priority:** `0` (Padrão, a menos que haja QoS específico no Switch).
* **Description:** Nome curto e claro (ex: `VLAN_GUEST`).
![Configuração de VLAN](assets/pfsense_vlan.png)
4. Clique em **Save**.
### Etapa 2: Atribuição de Interface (Interface Assignment)
Transforme a VLAN criada em uma Interface utilizável pelo firewall.
1. Vá em `Interfaces > Assignments`.
2. Na lista **Available network ports**, selecione a VLAN criada (ex: `VLAN 10 on ix0`).
3. Clique em **Add**.
4. A nova interface aparecerá como `OPTx`. Clique no nome dela (Link Azul) para editar.
### Etapa 3: Configuração da Interface (Layer 3)
Defina o IP e serviços da nova rede.
1. Marque **Enable Interface**.
2. **Description:** Renomeie para o nome da VLAN (ex: `GUEST`).
3. **IPv4 Configuration:** `Static IPv4`.
4. **Static IPv4 Configuration:**
* **IP Address:** Gateway da rede (ex: `192.168.10.1`).
* **Maks:** `/24` (ou conforme projeto).
5. Clique em **Save** e depois **Apply Changes**.
### Etapa 4: Configuração de DHCP (Obrigatório para Clientes)
Sem DHCP e regras de Firewall, a VLAN não funciona.
1. Vá em `Services > DHCP Server`.
2. Selecione a aba da VLAN (`GUEST`).
3. Marque **Enable DHCP Server**.
4. Defina o **Range** (ex: `192.168.10.100` a `192.168.10.200`).
5. Salve.
> ⚠️ **IMPORTANTE:** Lembre-se de criar regras em `Firewall > Rules > GUEST` permitindo o tráfego ("Allow Any" para teste inicial ou regras restritivas para produção).
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Clientes na VLAN não pegam IP**
* **Causa:** Switch não configurado corretamente (Porta Trunk/Tagged) ou regra de firewall bloqueando DHCP (UDP 67/68).
* **Solução:**
1. Verifique se a porta do switch ligada ao pfSense está como **TRUNK** (Tagged na VLAN 10).
2. Verifique se a porta do cliente está como **ACCESS** (Untagged na VLAN 10).
3. Verifique se o serviço DHCP está rodando (`Status > Services`).
**Problema 2: Interface "Flapping" (UP/DOWN constante)**
* **Causa:** Cabo defeituoso ou negociação de velocidade incorreta.
* **Solução:** Force a velocidade (1000baseT) nas configurações da interface física (`Parent Interface`).
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **VLAN ID Max** | 4094 | Limite de IDs |
| **Protocolo** | 802.1q | Tagging Padrão |
| **MTU Padrão** | 1500 | Não altere sem motivo |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Interface da VLAN está UP?
- [ ] DHCP Server ativo na aba da VLAN?
- [ ] Cliente conecta na porta do switch e pinga o Gateway (`192.168.10.1`)?

View File

@ -0,0 +1,88 @@
# MANUAL TÉCNICO - FIREWALL RULES E NAT - PFSENSE
**Código:** ITGINF 0018/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Definir as regras de permissão de tráfego (Firewall) e redirecionamento de portas (NAT) para garantir a segurança e funcionalidade dos serviços publicados.
## 3. PRÉ-REQUISITOS
- [ ] Definição precisa das portas de origem e destino (ex: TCP 3389).
- [ ] IP interno do servidor destino fixado (Static Mapping).
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Port Forward (Redirecionamento de Entrada)
Use para publicar serviços internos (TS, WebServer, Câmeras) para a internet.
1. Acesse `Firewall > NAT > Port Forward`.
2. Clique em **Add**.
3. Preencha:
* **Interface:** `WAN`
* **Protocol:** `TCP` (ou UDP conforme a aplicação).
* **Destination port range:** Porta externa (ex: 3389).
* **Redirect target IP:** IP interno (ex: `192.168.1.50`).
* **Redirect target port:** Porta interna (ex: 3389).
* **Filter rule association:** `Add associated filter rule` (Isso cria a regra de firewall automaticamente).
![Configuração de NAT Port Forward](assets/pfsense_nat.png)
4. Clique em **Save** e **Apply Changes**.
### Etapa 2: Regras de Firewall (LAN/VLANs)
Por padrão, interfaces OPTx (novas VLANs) bloqueiam tudo. É preciso liberar.
1. Acesse `Firewall > Rules > [INTERFACE]`.
2. Clique em **Add** (Seta para cima para colocar no topo).
3. Preencha:
* **Action:** `Pass`
* **Source:** `[INTERFACE] net` (ex: LAN net).
* **Destination:**
* `Any` (Para liberar Internet geral).
* `! RFC1918` (Alias criado para bloquear acesso a outras VLANs/Redes internas).
4. **Log:** Marque `Log packets that are handled by this rule` se precisar auditar.
![Regra de Firewall](assets/pfsense_firewall.png)
### Etapa 3: Outbound NAT (Para VPNs e MultiWAN)
O modo "Hybrid" é essencial para cenários avançados.
1. Acesse `Firewall > NAT > Outbound`.
2. Mude o **Mode** para `Hybrid Outbound NAT rule generation`.
3. Salve.
4. Crie regras manuais aqui se precisar que uma VLAN saia por um IP específico (ex: SMTP server).
![Outbound NAT Híbrido](assets/pfsense_nat_out.png)
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Porta redirecionada (NAT) não abre externamente**
* **Causa:** ISP com CGNAT ou regra de firewall bloqueando.
* **Solução:**
1. Verifique se o IP da WAN é público (não começa com 100.x, 10.x, 192.168.x).
2. Verifique se a opção "Block private networks" está desmarcada na interface WAN.
3. Use o `Packet Capture` na WAN filtrando pela porta para ver se o pacote chega.
**Problema 2: NAT Reflection não funciona (Acesso interno pelo IP externo falha)**
* **Solução:** Habilite `System > Advanced > Firewall & NAT > NAT Reflection mode for port forwards` como `Pure NAT`.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **NAT Reflection** | Pure NAT | Recomendado |
| **Max Table Entries** | 400000 | Aumente se tiver muitos conexões |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] O serviço publicado é acessível via 4G (externamente)?
- [ ] O computador na LAN navega?
- [ ] O computador na LAN consegue acessar o serviço pelo IP externo (Loopback)?

View File

@ -0,0 +1,91 @@
# MANUAL TÉCNICO - SERVIÇO DE DNS (RESOLVER/FORWARDER) - PFSENSE
**Código:** ITGINF 0019/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Garantir a resolução de nomes (DNS) segura e rápida para a rede local, com capacidade de sobrescrever nomes específicos (Host Overrides) para serviços internos.
## 3. PRÉ-REQUISITOS
- [ ] pfSense com acesso à internet.
- [ ] DNS Upstream definidos (ex: Cloudflare 1.1.1.1, Google 8.8.8.8) se usar Forwarding.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: DNS Resolver (Unbound)
O Resolver é o método padrão e mais seguro (DNSSEC).
1. Acesse `Services > DNS Resolver > General Settings`.
2. Marque **Enable DNS Resolver**.
3. **Network Interfaces:** Selecione `All` (ou apenas as interfaces LAN/VLANs onde o serviço deve escutar).
4. **Outgoing Network Interfaces:** Selecione `WAN` (Por onde a consulta sai).
5. **DNSSEC:** Marque **Enable DNSSEC Support** para proteção contra spoofing.
6. **DNS Query Forwarding:**
* **Desmarcado:** O pfSense resolve direto com os Root Servers (Mais privado, pode ser mais lento no início).
* **Marcado (Enable Forwarding Mode):** O pfSense repassa para os DNS definidos em `System > General Setup` (Mais rápido se os DNS do ISP/Google forem bons).
* **Recomendação:** Habilite se usar MultiWAN.
![Configuração DNS Resolver](assets/pfsense_dns.png)
7. Clique em **Save** e **Apply Changes**.
### Etapa 2: Host Overrides (DNS Split)
Use para fazer com que `intranet.meudominio.com` aponte para um IP local (`192.168.1.x`) quando acessado de dentro da empresa.
1. Role até o final da página **DNS Resolver**.
2. Em **Host Overrides**, clique em **Add**.
3. Preencha:
* **Host:** `intranet`
* **Domain:** `itguys.local`
* **IP Address:** `192.168.1.50`
* **Description:** Intranet Server
4. Salve.
![Host Override](assets/pfsense_host_override.png)
### Etapa 3: Integração com Active Directory (Domain Override)
Se você tem um AD (`itguys.local`) mas quer que o pfSense seja o DNS principal dos clientes:
1. Acesse `Services > DNS Resolver`.
2. Role até **Domain Overrides**.
3. Clique em **Add**.
* **Domain:** `itguys.local`
* **IP Address:** `192.168.1.10` (IP do Domain Controller).
4. Salve.
* > **Explicação:** O pfSense enviará qualquer consulta sobre `*.itguys.local` para o AD, e resolverá o resto da internet sozinho.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: DNS muito lento**
* **Causa:** Root servers distantes ou problemas de rota.
* **Solução:** Ative o **DNS Query Forwarding** e use `1.1.1.1` e `8.8.8.8` em `System > General Setup`.
**Problema 2: Não resolve nomes internos do AD**
* **Causa:** Domain Override configurado errado ou Firewall bloqueando a porta 53 TCP/UDP entre pfSense e AD.
* **Solução:** Libere a porta 53 na regra de firewall da LAN/VLAN onde o AD está.
**Problema 3: DNS Rebind Attack**
* **Sintoma:** O pfSense bloqueia respostas que apontam para IPs privados (RFC1918).
* **Solução:** Se precisar disso (ex: Plex, serviços locais), adicione o domínio em `System > Advanced > Admin Access > DNS Rebind Check` ou use as opções customizadas (Advanced Settings) do Unbound: `private-domain: "meudominio.local"`.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Porta** | 53 (TCP/UDP) | Porta Padrão |
| **DNSSEC** | Ativo | Segurança Padrão |
| **Service** | Unbound | Resolver |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Clientes navegam na internet?
- [ ] Ping para `intranet.itguys.local` resolve o IP interno?
- [ ] `nslookup google.com` retorna resposta rápida?

View File

@ -0,0 +1,86 @@
# MANUAL TÉCNICO - SERVIÇO DHCP E RESERVAS DE IP (STATIC MAPPING)
**Código:** ITGINF 0020/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Padronizar a configuração do servidor DHCP no pfSense, garantindo a distribuição dinâmica de IPs para a rede local e a fixação de endereços (Static Mapping) para dispositivos críticos (Impressoras, APs, Servidores locais em DHCP).
## 3. PRÉ-REQUISITOS
- [ ] Interface LAN configurada com IP fixo (Static IPv4).
- [ ] Faixa de IP definida para o Pool DHCP (ex: `.100` a `.200`).
- [ ] Endereços MAC dos dispositivos para reserva.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Habilitar o Servidor DHCP
1. Acesse `Services > DHCP Server`.
2. Selecione a aba da interface desejada (ex: **LAN** ou **VLAN_X**).
3. Marque a opção **Enable DHCP server on ... interface**.
4. **Range:** Defina o intervalo de IPs que serão entregues dinamicamente.
* **From:** `192.168.1.100` (Deixe espaço no início para servidores/APs).
* **To:** `192.168.1.250`
5. **DNS Servers (Opcional):** Se deixar em branco, o pfSense entrega o próprio IP (recomendado se usar DNS Resolver). Se quiser forçar, coloque `8.8.8.8`.
6. **Gateway (Opcional):** Deixe em branco para entregar o próprio IP do pfSense (Padrão).
![Habilitar DHCP](assets/pfsense_dhcp_enable.png)
7. Clique em **Save** no final da página.
### Etapa 2: Criar Reserva de IP (Static Mapping)
Use para garantir que uma impressora ou relógio de ponto pegue sempre o mesmo IP via DHCP, sem configurar fixo no dispositivo.
1. Na mesma página do DHCP Server, role até o final.
2. Clique no botão **Add** na seção **DHCP Static Mappings for this interface**.
3. Preencha os dados:
* **MAC Address:** `00:11:22:33:44:55` (Use `:` ou `-`).
* **Client Identifier:** (Deixe em branco).
* **IP Address:** `192.168.1.50` (Deve estar FORA do Range dinâmico definido acima).
* **Hostname:** `imp-financeiro` (Sem espaços).
* **Description:** Impressora HP Laserjet 400.
4. **ARP Table Static Entry:** (Opcional) Marque para vincular MAC x IP na tabela ARP e aumentar a segurança.
![Static Mapping](assets/pfsense_dhcp_static.png)
5. Clique em **Save** e **Apply Changes**.
### Etapa 3: Visualizar Leases Atuais
1. Acesse `Status > DHCP Leases`.
2. Aqui você vê todos os dispositivos conectados, seus IPs, MACs e Hostnames.
3. > 🚀 **DICA:** Você pode clicar no botão `+` (mais) ao lado de um lease existente para transformá-lo em Static Mapping rapidamente.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Dispositivo não pega IP**
* **Causa:** Range esgotada (Pool exhaustion) ou dispositivo em VLAN errada.
* **Solução:** Verifique `Status > DHCP Leases` se o pool está cheio (`Show all configured leases`). Aumente a Range se necessário.
**Problema 2: Conflito de IP**
* **Causa:** IP reservado (Static) está DENTRO da Range dinâmica e foi entregue para outro.
* **Solução:** Mova todos os IPs estáticos (Reservas) para FORA da Range dinâmica (ex: Range `.100-.250`, Reservas `.10-.99`).
**Problema 3: Rogue DHCP**
* **Sintoma:** Máquinas pegando gateway errado (ex: Roteador WiFi doméstico plugado na rede).
* **Solução:** Identifique o MAC do "DHCP Server falso" rodando um `ipconfig /all` na máquina cliente e bloqueie a porta do switch desse MAC. O pfSense não bloqueia DHCP de terceiros na mesma L2, isso é função do Switch (DHCP Snooping).
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Porta Server** | 67 UDP | Porta do Servidor |
| **Porta Client** | 68 UDP | Porta do Cliente |
| **Log** | `/var/log/dhcpd.log` | Log do Serviço |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] O serviço está como "Running" no Widget Services?
- [ ] Um PC cliente recebe IP, Máscara, Gateway e DNS corretos?
- [ ] A impressora reservada pega sempre o IP `192.168.1.50`?

View File

@ -0,0 +1,91 @@
# MANUAL TÉCNICO - SERVIÇO TFTP E PROVISIONAMENTO
**Código:** ITGINF 0021/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Habilitar e configurar o servidor TFTP (Trivial File Transfer Protocol) no pfSense, utilizado principalmente para provisionamento automático de telefones IP (VoIP) e boot via rede (PXE) de thin clients ou instaladores.
## 3. PRÉ-REQUISITOS
- [ ] Acesso à WebGUI do pfSense.
- [ ] Arquivos de configuração/firmware prontos para upload (ex: `.xml`, `.cfg`, `.bin`).
- [ ] DHCP Server configurado (necessário para informar a Option 66).
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Upload dos Arquivos
Antes de ativar o serviço, suba os arquivos que serão servidos.
1. Acesse `Diagnostics > Command Prompt`.
2. Use a seção **Upload File** para enviar arquivos um por um.
* O destino padrão do TFTP é `/tftpboot`. No entanto, o **Command Prompt** salva em `/tmp` por padrão.
3. **Método Recomendado (SCP/SFTP):**
* Use o WinSCP (ver `Manual de Ferramentas - WinSCP`) para conectar no pfSense via SSH (porta 22).
* Navegue até `/tftpboot/`. Se não existir, crie a pasta.
* Copie todos os arquivos de firmware/configuração para lá.
### Etapa 2: Validar Permissões (Shell)
1. Acesse o Shell (SSH ou Console).
2. Garanta que o usuário `root` ou `nobody` consiga ler os arquivos:
```bash
chmod -R 755 /tftpboot
chown -R root:wheel /tftpboot
```
### Etapa 3: Habilitar o Serviço TFTP
1. Acesse `System > Advanced > Firewall & NAT`.
2. Procure por **TFTP Proxy** e garanta que esteja configurado apenas se necessário NAT para fora.
3. Para o **Servidor Interno**, acesse `Services > TFTP Server`. (Se não aparecer, verifique se o pacote está instalado ou se sua versão inclui o daemon nativo. Em versões modernas, ele é nativo).
4. **Enable:** Marque a caixa.
5. **Interface:** Selecione a interface onde os telefones/clientes estão (ex: `LAN` ou `VOIP_VLAN`).
6. **TFTP Directory:** `/tftpboot` (ou o caminho onde você colocou os arquivos).
![TFTP Settings](assets/pfsense_tftp_settings.png)
7. Clique em **Save**.
### Etapa 4: Configurar DHCP Option 66 (Boot Server)
O telefone precisa saber ONDE buscar os arquivos.
1. Acesse `Services > DHCP Server`.
2. Vá na interface correspondente (ex: LAN).
3. Clique em **Advanced Options** (botão 'Display Advanced' se houver, ou role para baixo).
4. Em **TFTP Server**, coloque o IP da interface do pfSense (ex: `192.168.1.1`).
5. Em **Bootfile** (se necessário), coloque o nome do arquivo padrão (ex: `boot.bin` ou deixe em branco se o aparelho procurar pelo MAC).
6. Salve.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Timeout ao baixar arquivo**
* **Causa:** Firewall bloqueando porta 69 (UDP) ou intervalo de portas altas usadas pela transferência.
* **Solução:** Crie uma regra na Interface LAN/VLAN permitindo Protocolo UDP, Origem `Rede Local`, Destino `Endereço da Interface`, Porta `69 (TFTP)`. O helper TFTP deve cuidar do resto, mas às vezes é necessário liberar portas altas.
**Problema 2: File not found**
* **Causa:** Permissão de arquivo linux ou Case Sensitive.
* **Solução:** O Linux diferencia maiúsculas de minúsculas (`Config.xml` ≠ `config.xml`). Verifique o nome exato que o aparelho solicita nos logs (`Status > System Logs > DHCP/TFTP` se disponível, ou via tcpdump).
**Problema 3: Conflito com TFTP Proxy**
* **Solução:** Se estiver usando o TFTP Server interno, desative o TFTP Proxy em `System > Advanced > Firewall & NAT` se houver conflito, ou garanta que ele está apontando para o Localhost corretamente.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Porta** | 69 UDP | Porta de Controle |
| **Diretório** | `/tftpboot` | Padrão do pfSense |
| **Protocolo** | UDP | Não tem retransmissão TCP |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] O serviço TFTP está rodando?
- [ ] Ao rodar `tftp 192.168.1.1 get arquivo.txt` de um PC, o download ocorre?
- [ ] Os telefones IP receberam a configuração após reboot?

View File

@ -0,0 +1,101 @@
# MANUAL TÉCNICO - VPN ROAD WARRIOR (OPENVPN)
**Código:** ITGINF 0024/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Configurar o acesso remoto seguro (VPN) para colaboradores externos (Road Warriors) utilizando o protocolo OpenVPN no pfSense, com autenticação integrada ao LDAP (Active Directory) ou Local Database.
## 3. PRÉ-REQUISITOS
- [ ] DynDNS configurado (se o IP da WAN for dinâmico).
- [ ] Authority CA criada (Gerenciador de Certificados).
- [ ] Pacote **openvpn-client-export** instalado (`System > Package Manager`).
- [ ] Usuários criados ou Grupo AD vinculado.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Instalar Client Export Utility
Facilita muito a vida do técnico, gerando instaladores prontos para Windows/Mac.
1. Acesse `System > Package Manager`.
2. Busque por **openvpn-client-export**.
3. Instale.
### Etapa 2: OpenVPN Wizard
1. Acesse `VPN > OpenVPN > Wizards`.
2. **Type of Server:** Selecione `Local User Access` (ou `LDAP` se já configurou no Manual 04). Clique Next.
3. **Certificate Authority:** Selecione a CA criada ou crie uma nova aqui.
4. **Server Certificate:** Crie um novo (ex: `VPN_Srv_Cert`).
5. **Server Settings:**
* **Interface:** `WAN`.
* **Protocol:** `UDP on IPv4 only`.
* **Local Port:** `1194`.
* **Tunnel Network:** Defina uma rede **DIFERENTE** da sua LAN (ex: `10.8.0.0/24`).
* **Local Network:** Coloque sua LAN (ex: `192.168.1.0/24`).
* **Concurrent Connections:** Define quantos usuários simultâneos.
6. **Client Settings:**
* **Dynamic IP:** Marque.
* **Address Pool:** Marque.
* **DNS Default Domain:** `itguys.local` (Seu domínio interno).
* **DNS Server 1:** `192.168.1.1` (IP do pfSense ou AD DNS interno).
7. **Firewall Rules:**
* Marque **Traffic from client to server** (Cria regra na interface OpenVPN).
* Marque **Traffic from client to Internet** (Cria regra na WAN).
8. Clique em **Finish**.
![Wizard Completed](assets/placeholder.png)
### Etapa 3: Exportar Cliente (Instalador)
1. Acesse `VPN > OpenVPN > Client Export`.
2. **Remote Access Server:** Selecione o servidor criado.
3. **Host Name Resolution:**
* Se tem IP fixo: `Interface IP Address`.
* Se tem DynDNS: Selecione `Other` e digite o hostname (ex: `cliente.ddns.net`).
4. Role até a lista de usuários (no final) ou **OpenVPN Clients**.
* Baixe o instalador adequado: **Most Clients > Inline Configurations > Windows Installer (2.x)**.
### Etapa 4: Instalação no Cliente
1. Execute o instalador no PC do usuário.
2. Abra o **OpenVPN GUI** (ícone no systray, relógio).
3. Clique com botão direito > **Conectar**.
4. Insira Usuário e Senha.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: conecta mas não acessa a LAN**
* **Causa:** Regra de Firewall bloqueando ou Rota incorreta.
* **Solução:**
1. Verifique `Firewall > Rules > OpenVPN`. Deve haver uma regra liberando tráfego da rede `10.8.0.0/24` para `LAN Net`.
2. Execute o OpenVPN como **Administrador** no Windows (necessário para adicionar rotas).
**Problema 2: TLS Error / Handshake failed**
* **Causa:** Porta bloqueada na operadora ou incompatibilidade de horário.
* **Solução:**
1. Verifique se o horário do PC e do Servidor estão sincronizados.
2. Teste mudar o protocolo de UDP para TCP na configuração do Server (mais lento, mas passa por bloqueios).
**Problema 3: DNS não resolve nomes internos**
* **Solução:** Garanta que no *Etapa 2 (Client Settings)* você forçou o DNS Server para o IP interno do pfSense/AD e definiu o Domain Name. No Windows 10/11, às vezes é necessário o ajuste "Block Outside DNS" nas configs avançadas do cliente.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Porta** | 1194 UDP | Padrão |
| **Criptografia** | AES-256-GCM | Recomendada |
| **Tunnel** | Tun (Layer 3) | Padrão Roteado |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] O cliente conecta e o ícone fica verde?
- [ ] O cliente pinga o servidor de arquivos (`192.168.1.x`)?
- [ ] O log do pfSense (`Status > System Logs > OpenVPN`) mostra "Initialization Sequence Completed"?

Binary file not shown.

After

Width:  |  Height:  |  Size: 489 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 483 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 430 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 434 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 417 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 639 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 436 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 572 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 419 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 510 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 KiB

View File

@ -0,0 +1,87 @@
# MANUAL TÉCNICO - PLANEJAMENTO DE HARDWARE E SIZING - PFSENSE
**Código:** ITGENG 0019/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Definir as diretrizes de dimensionamento de hardware (Sizing) para implantações do pfSense, cobrindo cenários físicos e virtuais, garantindo performance e estabilidade.
## 3. PRÉ-REQUISITOS
> Liste o que é necessário ANTES de começar.
* [ ] Definição do número de usuários e banda de internet.
* [ ] Definição dos serviços a serem ativos (VPN, IDS/IPS, Proxy).
* [ ] Escolha da plataforma (Físico vs Virtual).
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Dimensionamento por Cenário (Sizing)
A escolha do hardware depende diretamente do Throughput desejado e dos pacotes ativos.
![Tabela de Sizing pfSense](assets/pfsense_hardware_sizing.png)
| Cenário | Usuários | Links (WAN) | Hardware Recomendado |
| :--- | :--- | :--- | :--- |
| **SOHO / Filial** | 10-20 | Até 500 Mbps | Intel Atom/Celeron, 4GB RAM, SSD 32GB |
| **PME / Matriz** | 50-200 | 1 Gbps | Intel Core i3/i5 (AES-NI), 8GB RAM, SSD 64GB |
| **Enterprise** | 500+ | 1-10 Gbps | Intel Xeon E3/Scalable, 16GB+ RAM (ECC), SSD Enterprise |
> **NOTA:** O uso de **AES-NI** é obrigatório para performance em VPNs modernas e versões futuras do pfSense.
### Etapa 2: Virtualização vs Físico (Bare Metal)
Decidir entre virtualizar ou usar hardware dedicado é crítico.
**1. Ambiente Virtual (Proxmox/ESXi)**
* **Vantagens:** Snapshots, Backup fácil, uso eficiente de recursos.
* **Requisitos:**
* **NIC Passthrough:** Recomendado para alta performance (1Gbps+).
* **VirtIO/VMXNET3:** Drivers obrigatórios se não usar Passthrough.
* **Disable Hardware Checksum Offloading:** Obrigatório nas configurações avançadas do pfSense (`System > Advanced > Networking`).
**2. Ambiente Físico (Bare Metal)**
* **Vantagens:** Performance bruta máxima, isolamento total.
* **Recomendação:** Use NICs **Intel** (i350, X520). Evite Realtek para ambientes críticos.
### Etapa 3: Redundância e Alta Disponibilidade
Para ambientes críticos (Nível 3), a redundância é mandatória.
1. **Disco:** Utilize **ZFS Mirror** (RAID 1 via Software) na instalação.
2. **Energia:** Fontes redundantes e nobreak gerenciável com shutdown via NUT/UPS.
3. **CARP (Failover):** Requer 3 IPs públicos por link WAN e hardware idêntico.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Baixa Performance de Rede em VM**
* **Causa:** Checksum Offloading ativo ou drivers incorretos.
* **Solução:**
1. Acesse `System > Advanced > Networking`.
2. Marque: **Disable hardware checksum offload**, **Disable hardware TCP segmentation offload**, **Disable hardware large receive offload**.
3. Reinicie o pfSense.
**Problema 2: Alta CPU com pouco tráfego**
* **Causa:** Interrupções de hardware (NICs Realtek ou defeituosas).
* **Solução:**
1. Verifique interrupções via Shell: `vmstat -i`.
2. Considere trocar a NIC por Intel ou desativar acelerações de hardware incompatíveis.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **CPU Feature** | AES-NI | Aceleração Criptográfica Obrigatória |
| **Filesystem** | ZFS | Recomendado para Integridade de Dados |
| **NIC Driver** | igb / em / ix | Drivers Intel estáveis (1G / 10G) |
| **Min RAM** | 4GB | Mínimo para ZFS + Snort básico |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Hardware suporta o throughput de WAN contratado?
- [ ] AES-NI validado no Dashboard?
- [ ] Se Virtual: Checksum Offloading desativado?

View File

@ -0,0 +1,96 @@
# MANUAL TÉCNICO - MULTI-WAN, FAILOVER E ROTEAMENTO - PFSENSE
**Código:** ITGENG 0020/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Garantir alta disponibilidade de internet através da configuração de múltiplos links (Multi-WAN), definindo políticas de Failover e Load Balance.
## 3. PRÉ-REQUISITOS
- [ ] Pelo menos 2 interfaces WAN configuradas e funcionais.
- [ ] Monitor IP (DNS público diferente para cada link) definido.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Definição de Monitoramento nos Gateways
Para o Failover funcionar, o pfSense precisa saber quando um link caiu.
1. Acesse `System > Routing > Gateways`.
2. Edite cada Gateway (WAN1, WAN2):
* **Monitor IP:** Defina um IP externo que responda a ICMP e seja estável (ex: `1.1.1.1` para WAN1 e `8.8.8.8` para WAN2).
* > ⚠️ **IMPORTANTE:** Não use o mesmo Monitor IP para gateways diferentes.
* **Disable configuration of monitor actions:** Desmarcado (Queremos que ele aja na falha).
![Lista de Gateways](assets/pfsense_gw_list.png)
### Etapa 2: Criação de Gateway Groups (Failover)
Agrupe os links para definir a lógica de troca.
1. Acesse `System > Routing > Gateway Groups`.
2. Clique em **Add**.
3. Preencha:
* **Group Name:** `GW_FAILOVER_WAN1_PRI`
* **Gateway Priority:**
* `WAN_FIBER` (Link Principal): **Tier 1**
* `WAN_4G` (Link Backup): **Tier 2**
* **Trigger Level:** `Packet Loss or High Latency` (Mais sensível e rápido).
* **Description:** Failover Fibra -> 4G.
4. Clique em **Save**.
> **NOTA:** Para **Load Balance**, coloque ambos os gateways como **Tier 1**.
![Grupo de Gateway Failover](assets/pfsense_gw_group.png)
### Etapa 3: Roteamento Baseado em Políticas (PBR)
Force o tráfego da LAN a usar o grupo de Failover.
1. Acesse `Firewall > Rules > LAN`.
2. Edite a regra de saída padrão ("Default allow LAN to any rule").
3. Clique em **Display Advanced**.
4. Role até **Gateway** e selecione o grupo criado: `GW_FAILOVER_WAN1_PRI`.
5. Salve e Aplique.
> 🚀 **DICA:** Se você não fizer isso, o pfSense usará a Tabela de Roteamento padrão (apenas Default Gateway), ignorando o Failover para tráfego da LAN.
### Etapa 4: Configuração de DNS para MultiWAN
Se o Link 1 cair, o DNS do Link 1 para de responder.
1. Acesse `System > General Setup`.
2. Em **DNS Server Settings**, associe cada DNS a um Gateway específico:
* DNS 1 (`1.1.1.1`) -> `WAN_FIBER`
* DNS 2 (`8.8.8.8`) -> `WAN_4G`
3. Vá em `Services > DNS Resolver > General`.
4. Marque **Enable Forwarding Mode** (Recomendado para MultiWAN simples).
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Link volta, mas conexões continuam no Backup (Sticky Connections)**
* **Causa:** Estados de conexão antigos permanecem abertos.
* **Solução:** Habilite `System > Advanced > Miscellaneous > Kill states for all gateways that are down`. Isso força a reconexão.
**Problema 2: HTTPS (Bancos) caindo com Load Balance**
* **Causa:** O IP de origem muda constantemente.
* **Solução:** Habilite **Sticky Connections** em `System > Advanced > Miscellaneous`.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Monitor Payload** | ICMP | Ping (Padrão) |
| **Loss Interval** | 2000ms | Tempo para considerar perda |
| **Member Down** | > 20% Loss | Trigger Padrão |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Simule a queda do Link 1 (desplugue o cabo).
- [ ] O Dashboard mostra o Link 1 como "Offline" ou "Packet Loss"?
- [ ] O acesso à internet continua funcionando (verifique IP público `curl ifconfig.me`)?

View File

@ -0,0 +1,107 @@
# MANUAL TÉCNICO - FILTRO DE CONTEÚDO E SEGURANÇA (PFBLOCKERNG)
**Código:** ITGENG 0022/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Implementar proteção avançada de rede utilizando o **pfBlockerNG-devel**, focando em bloqueio de IPs maliciosos (GeoIP), controle de acesso por países e filtragem de conteúdo web (Ads/Trackers/Sites Maliciosos) via DNSBL.
## 3. PRÉ-REQUISITOS
- [ ] pfSense com acesso à internet estável.
- [ ] Serviço DNS Resolver (Unbound) ativado (ver `Manual 08`).
- [ ] Chave de Licença MaxMind (Gratuita) para GeoIP.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Instalação do Pacote
1. Acesse `System > Package Manager > Available Packages`.
2. Pesquise por **pfBlockerNG-devel** (Sempre use a versão `devel` pois é a mais atualizada e estável para produção).
3. Clique em **Install** e confirme.
4. Aguarde o término da instalação.
### Etapa 2: Setup Wizard (Configuração Inicial)
1. Acesse `Firewall > pfBlockerNG`.
2. O Wizard deve abrir automaticamente. Clique em **Next**.
3. **Inbound/Outbound Interface:**
* **Inbound:** `WAN` (Onde os ataques chegam).
* **Outbound:** `LAN` (De onde os usuários saem).
4. **VIP Address:** Deixe o padrão (`10.10.10.1`). Este IP virtual serve um "pixel transparente" para páginas bloqueadas HTTP.
5. **Finish**. O sistema fará o primeiro download das listas.
### Etapa 3: Configuração Geral e MaxMind
1. Acesse `Firewall > pfBlockerNG > General`.
2. Marque **Enable pfBlockerNG**.
3. **CRON Settings:** Defina para `Every 4 hours` ou `Once a day` (Evite atualizações muito frequentes para não ser banido das listas).
4. Role até **MaxMind GeoIP Configuration**:
* Copie sua chave de licença da MaxMind.
* Cole no campo **MaxMind License Key**.
* Clique em **Save**.
5. Vá na aba **Update** e clique em **Run (Reload) > All** para baixar o banco de dados geográfico.
![General Settings](assets/placeholder.png)
> *Nota: O layout da tela General contém as opções de CRON e License Key.*
### Etapa 4: Bloqueio GeoIP (Países)
Use para bloquear tráfego de países com alto índice de ataques (ex: China, Rússia) se sua empresa não faz negócios lá.
1. Acesse `Firewall > pfBlockerNG > IP > GeoIP`.
2. Escolha uma categoria (ex: **Top_Spammers**).
3. No painel direito (List), selecione os países desejados ou "Select All".
4. **Action:**
* **Deny Inbound:** Bloqueia quem tenta entrar (Protege seus serviços publicados).
* **Deny Both:** Bloqueia entrada e saída (Impede que um malware interno se comunique com C2 nesses países).
5. Clique em **Save**.
### Etapa 5: DNSBL (Filtro de Conteúdo/Ads)
Use para bloquear anúncios, rastreadores e sites adultos.
1. Acesse `Firewall > pfBlockerNG > DNSBL`.
2. **DNSBL Mode:** `Unbound Python Mode` (Melhor performance e report de memória).
3. **Permit Firewall Rules:** Selecione as redes (LAN, VLANs) onde o bloqueio deve atuar.
4. **DNSBL Groups:**
* O pacote já vem com o grupo **EasyList** (Adblock padrão).
* Adicione feeds personalizados em `Firewall > pfBlockerNG > Feeds`.
5. **SafeSearch:** (Opcional) Marque para forçar Google/Bing/YouTube em modo restrito.
6. Salve e force um **Reload** na aba **Update**.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: WebGUI lenta após ativar pfBlockerNG**
* **Causa:** DNSBL consumindo muita RAM ou CPU ao carregar listas gigantes.
* **Solução:** Reduza o número de listas, ative o `Unbound Python Mode` ou aumente a RAM da VM/Hardware.
**Problema 2: Site legítimo bloqueado (Falso Positivo)**
* **Causa:** Domínio está em alguma blacklist (ex: `googleadservices.com` bloqueado impede clique em anúncios do Google Shopping).
* **Solução:**
1. Acesse `Firewall > pfBlockerNG > Reports > Unified`.
2. Identifique o domínio bloqueado (em vermelho).
3. Clique no ícone **+** (Whitelist) ao lado do domínio.
4. O domínio será adicionado à Whitelist personalizada e liberado imediatamente (Unbound Python Mode) ou após Reload.
**Problema 3: Falha no download MaxMind**
* **Causa:** Chave de licença inválida ou erro de conexão.
* **Solução:** Verifique os logs em `Firewall > pfBlockerNG > Logs > error.log`. Garanta que a chave da MaxMind é a versão correta (v3.1.1+).
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **VIP Padrão** | 10.10.10.1 | WebServer de Bloqueio |
| **Portas VIP** | 80/443 | Portas WebServer |
| **Cron** | 4/12/24h | Frequência de Update |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Widget do pfBlockerNG no Dashboard mostra status das listas (Verde)?
- [ ] Teste de acesso a sites de Ads (ex: doubleclick.net) falha ou é redirecionado para o VIP?
- [ ] O banco de dados GeoIP foi baixado com sucesso?

View File

@ -0,0 +1,101 @@
# MANUAL TÉCNICO - IDS/IPS COM SURICATA
**Código:** ITGENG 0023/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Implementar Sistema de Detecção e Prevenção de Intrusão (IDS/IPS) usando Suricata no pfSense para monitorar, detectar e bloquear tráfego malicioso (exploits, malware C2, scanners) em tempo real, utilizando análise de assinaturas e comportamento.
## 3. PRÉ-REQUISITOS
- [ ] pfSense com hardware adequado (Mínimo 4GB RAM recomendado, CPU multi-core).
- [ ] **Snort VRT Oinkmaster code** (Grátis, cadastro no snort.org) ou **Emerging Threats Open** (Não requer cadastro).
- [ ] Conhecimento das redes internas para evitar bloqueio falso positivo.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Instalação do Pacote
1. Acesse `System > Package Manager > Available Packages`.
2. Pesquise por **suricata**.
3. Clique em **Install** e confirme.
### Etapa 2: Configuração Global e Updates
1. Acesse `Services > Suricata > Global Settings`.
2. **Install ETOpen Emerging Threats rules:** Marque (Fontes abertas e excelentes).
3. **Install Snort VRT rules:** (Opcional) Requer Oinkmaster code.
4. **Update Interval:** `12-Hours`.
5. **Remove Blocked Hosts Interval:** `1 Hour` (Importante para não bloquear IPs legítimos para sempre em caso de falso positivo).
6. Clique em **Save**.
7. Vá na aba **Updates** e clique em **Update** para baixar as regras iniciais.
### Etapa 3: Criar Interface de Monitoramento
1. Acesse `Services > Suricata > Interfaces`.
2. Clique em **Add**.
3. **Interface:** Selecione a interface física (ex: `WAN`).
> **Nota:** Monitorar a WAN vê todos os ataques (muito ruído). Monitorar a LAN vê apenas o que passou pelo Firewall ou ameaças internas (menos ruído, mais foco em clientes infectados). Recomendação: Comece pela WAN em modo IDS (apenas alerta).
4. **Enable:** Marque para ativar.
5. **Block Offenders:** Marque se quiser que o Suricata bloqueie o IP (IPS Mode).
* *Sugestão:* Deixe desmarcado na primeira semana para aprender o tráfego (IDS Mode).
* **Kill States:** Marque para derrubar conexões ativas imediatamente.
### Etapa 4: Seleção de Categorias de Regras
1. Dentro da edição da Interface, vá na aba **Categories**.
2. Clique em **Select All** (Cuidado com RAM/CPU) ou escolha categorias críticas:
* `emerging-exploit` (Exploits conhecidos)
* `emerging-malware` (Malware C2 activity)
* `emerging-mobile_malware`
* `emerging-scan` (Portscanners)
* `emerging-trojan`
3. Evite categorias como `emerging-info` ou `emerging-chat` em ambientes corporativos se não quiser monitorar uso aceitável, pois geram muito log.
4. Salve.
![Categorias Suricata](assets/placeholder.png)
### Etapa 5: Ajuste de SID (Signature ID) e Supressão
Se um alerta legítimo bloquear seu tráfego (falso positivo):
1. Acesse `Services > Suricata > Alerts`.
2. Identifique o alerta (ex: `ET POLICY Python-urllib/2.7`).
3. Para **suprimir** (nunca mais alertar para esse IP/Regra): Clique no ícone de `+` em "Suppress this GID:SID".
4. Para **desativar** a regra globalmente: Clique no ícone de `X` (Disable this SID).
5. A regra irá para a lista de **SID Mgmt** e não incomodará mais.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Internet caiu após ativar IPS**
* **Causa:** Falso positivo bloqueando DNS (8.8.8.8) ou Gateway.
* **Solução:**
1. Desative o "Block Offenders" na interface temporariamente.
2. Verifique a aba **Blocked** e remova o IP crítico.
3. Adicione os DNS e Gateways numa **Pass List** em `Services > Suricata > Pass Lists` e vincule à interface.
**Problema 2: Alta carga de CPU/RAM**
* **Causa:** Muitas categorias ativadas ou inspeção profunda em hardware fraco.
* **Solução:** Desative categorias menos críticas (`deleted`, `info`, `games`). Mude o "Run Mode" em Interface Settings para `suro` (High Performance) se disponível.
**Problema 3: Suricata não inicia**
* **Causa:** Erro no download de regras ou falta de RAM.
* **Solução:** Verifique `Status > System Logs > Suricata`. Tente rodar o update manual das regras novamente.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Modo** | IDS (Alerta) / IPS (Bloqueio) | Inline vs Legacy |
| **Engine** | Suricata | Multi-threaded |
| **Log** | `/var/log/suricata` | Logs de alerta |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] O serviço está rodando na interface WAN?
- [ ] A aba Alerts mostra tentativas de conexão (ex: Portscan)?
- [ ] O tráfego legítimo não está impactado?

View File

@ -0,0 +1,103 @@
# MANUAL TÉCNICO - VPN SITE-TO-SITE (OPENVPN)
**Código:** ITGENG 0025/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Interligar duas ou mais filiais (Matriz x Filial) de forma transparente, permitindo que servidores e computadores de ambas as redes se comuniquem como se estivessem no mesmo prédio, utilizando túneis OpenVPN (Shared Key ou SSL/TLS).
## 3. PRÉ-REQUISITOS
- [ ] IP Público (Fixo ou DynDNS) em **pelo menos uma** das pontas (Server).
- [ ] Faixas de IP de LAN **DIFERENTES** em cada ponta (ex: Matriz `192.168.1.0/24`, Filial `192.168.2.0/24`). **Se forem iguais, a VPN não roteia.**
- [ ] Shared Key gerada automaticamente pelo pfSense (Server).
## 4. PASSO A PASSO (EXECUÇÃO)
### Cenário Exemplo
* **Matriz (Server):** WAN IP `200.200.200.1`, LAN `192.168.1.0/24`.
* **Filial (Client):** WAN IP (Dinâmico), LAN `192.168.2.0/24`.
* **Tunnel Net:** `10.0.99.0/30` (Rede exclusiva pra comunicação VPN).
### Etapa 1: Configurar a Matriz (Server)
1. Acesse `VPN > OpenVPN > Servers`. Clique **Add**.
2. **Server Mode:** `Peer to Peer (Shared Key)`. (Mais simples e robusto para 1:1).
3. **Protocol:** `UDP on IPv4`.
4. **Device Mode:** `tun` (Layer 3 Routing).
5. **Interface:** `WAN`.
6. **Local Port:** `1195` (Use uma porta diferente da Road Warrior 1194).
7. **Shared Key:** Marque `Automatically generate a shared key`.
8. **Cryptographic Settings:** AES-256-GCM (ou CBC com hardware support).
9. **Tunnel Settings:**
* **IPv4 Tunnel Network:** `10.0.99.0/30`
* **IPv4 Remote Network:** `192.168.2.0/24` (A LAN da Filial. O pfSense cria a rota sozinho).
10. Salve.
11. **IMPORTANTE:** Entre na edição novamente e COPIE a **Shared Key** gerada (o bloco de texto inteiro). Você vai colar na Filial.
### Etapa 2: Configurar a Filial (Client)
1. Acesse `VPN > OpenVPN > Clients`. Clique **Add**.
2. **Server Mode:** `Peer to Peer (Shared Key)`.
3. **Interface:** `WAN`.
4. **Server Host or Address:** `200.200.200.1` (IP da Matriz).
5. **Server Port:** `1195`.
6. **Shared Key:** Desmarque a auto-geração e **COLE** a chave copiada da Matriz.
7. **Tunnel Settings:**
* **IPv4 Tunnel Network:** `10.0.99.0/30` (Igual à Matriz).
* **IPv4 Remote Network:** `192.168.1.0/24` (A LAN da Matriz).
8. Salve.
### Etapa 3: Regras de Firewall e Interfaces
Faça isso em **AMBOS** (Matriz e Filial):
1. Acesse `Firewall > Rules > WAN`.
* Crie uma regra **Pass** para Protocolo **UDP**, Porta **1195** (Isso permite fechar o túnel).
2. Acesse `Firewall > Rules > OpenVPN`.
* Crie uma regra **Pass** (Protocolo Any) liberando o tráfego da rede remota.
* *Exemplo na Matriz:* Source `192.168.2.0/24`, Dest `LAN Net`.
* *Exemplo na Filial:* Source `192.168.1.0/24`, Dest `LAN Net`.
* *Dica:* Para teste inicial, libere `Any` to `Any` na aba OpenVPN.
### Etapa 4: Validação do Túnel
1. Acesse `Status > OpenVPN`.
2. O Status deve estar **UP** (Verde).
3. Verifique o IP Virtual (`10.0.99.1` e `10.0.99.2`).
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: Status UP, mas não pinga a LAN remota**
* **Causa:** Bloqueio de Firewall (ICMP) nos Windows/Linux da ponta.
* **Solução:** O Firewall do Windows bloqueia Pings de subnets "estranhas" por padrão. Tente pingar o **IP da Interface LAN do pfSense remoto** (ex: ping `192.168.1.1` da filial). Se responder, o túnel está OK e o problema é o firewall do host destino.
* *Teste:* Desative o firewall do Windows temporariamente para validar.
**Problema 2: Túnel fica "Reconnecting"**
* **Causa:** Shared Key errada, Porta fechada na WAN ou incompatibilidade de Crypto.
* **Solução:**
* Confira se a Shared Key é IDÊNTICA.
* Confira se o algoritmo de criptografia (ex: AES-256-GCM) e o de Hash (SHA256) são iguais.
* Verifique se a Regra de WAN libera a porta 1195 UDP.
**Problema 3: Conflito de rotas**
* **Causa:** Tunnel Network conflitante ou LANs iguais.
* **Solução:** Garanta que Tunnel Network (`10.0.99.0/30`) não exista em nenhum outro lugar da rede. E JAMAIS tente VPN se ambos os lados usam `192.168.1.0`.
## 6. DADOS TÉCNICOS
| Campo | Valor | Descrição |
| :--- | :--- | :--- |
| **Porta** | 1195+ UDP | Dica: Use portas separadas por túnel |
| **Modo** | Shared Key | Para conexões Site-to-Site simples de 1:1 |
| **Rota** | Estática | pfSense adiciona via Remote Network |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Status OpenVPN mostra "Connected"?
- [ ] Ping da Matriz para Filial (`ping 192.168.2.1`) responde?
- [ ] Servidor de Arquivos da Matriz é acessível pela Filial (`\\192.168.1.10`)?

View File

@ -0,0 +1,109 @@
# MANUAL TÉCNICO - DIAGNÓSTICO AVANÇADO, SHELL E RECOVERY
**Código:** ITGENG 0026/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}
## 1. HISTÓRICO DE REVISÃO
| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |
## 2. OBJETIVO
Fornecer ferramentas e comandos avançados para diagnóstico de rede, performance e recuperação de desastres no pfSense, focando no uso do Shell (`pfctl`, `tcpdump`) quando a WebGUI está inacessível ou insuficiente.
## 3. PRÉ-REQUISITOS
- [ ] Acesso SSH habilitado (`System > Advanced > Admin Access`).
- [ ] Usuário `admin` ou `root` com senha conhecida.
- [ ] Acesso físico (Console/VGA/Serial) para casos de recuperação crítica.
## 4. PASSO A PASSO (EXECUÇÃO)
### Etapa 1: Comandos Essenciais do Shell (SSH/Console)
Se a interface gráfica travar, use o shell (Opção 8 no menu console).
**1. Gerenciamento do Filtro de Pacotes (pf)**
* `pfctl -d`: **Desabilita** o Firewall temporariamente (CUIDADO! Libera tudo). Use se trancou para fora.
* `pfctl -e`: **Habilita** o Firewall novamente.
* `pfctl -f /etc/filter.conf`: Recarrega as regras de filtro.
* `pfctl -s info`: Mostra estatísticas gerais (Estado, Drops).
**2. Diagnóstico de Interface e Roteamento**
* `ifconfig`: Lista interfaces, IPs e MACs.
* `netstat -rn`: Mostra a tabela de roteamento.
* `netstat -i`: Mostra estatísticas de erros/colisões por interface.
**3. Captura de Pacotes (tcpdump)**
Ferramenta definitiva para ver o que está passando no cabo.
* `tcpdump -i em0`: Vê tudo na interface `em0`.
* `tcpdump -i em0 host 192.168.1.50`: Vê tráfego de/para um IP específico.
* `tcpdump -i em0 port 80`: Vê apenas tráfego HTTP.
* `tcpdump -n -e -ttt -i pflog0`: Vê o log do firewall em tempo real (o que está sendo bloqueado).
### Etapa 2: Recuperação de Desastres (Rescue)
**Cenário: Perdi a senha de admin ou lockout da WebGUI.**
1. Acesse o **Console Físico** (Monitor+Teclado ou Serial).
2. No menu numérico (0-16):
* **Opção 3 (Reset webConfigurator password):** Reseta senha para `pfsense`.
* **Opção 4 (Reset to factory defaults):** Zera TUDO. (Use em último caso).
* **Opção 11 (Restart webConfigurator):** Reinicia apenas o serviço PHP/Nginx. Use se a GUI estiver dando erro 502/504.
* **Opção 15 (Restore recent configuration):** Permite voltar para um backup automático anterior. O pfSense salva backups a cada alteração. Isso salva vidas!
### Etapa 3: Diagnóstico via WebGUI (Tools)
Se a GUI funciona, use:
1. **Test Port (`Diagnostics > Test Port`):**
* Testa se uma porta TCP está aberta num servidor remoto. Melhor que ping para testar serviço.
2. **Packet Capture (`Diagnostics > Packet Capture`):**
* Interface gráfica para o `tcpdump`. Permite baixar o arquivo `.cap` para analisar no Wireshark do seu PC.
3. **States Dump (`Diagnostics > States`):**
* Veja quem está conectado, quantos bytes consumiu e mate conexões específicas.
### Etapa 4: Logs do Sistema
Caminhos importantes no Shell para leitura com `tail -f`:
* `/var/log/system.log`: Log geral do sistema.
* `/var/log/filter.log`: Logs do Firewall (Blocos/Pass).
* `/var/log/dhcpd.log`: Logs do DHCP.
* `/var/log/openvpn.log`: Logs das VPNs.
* `/var/log/nginx.log`: Logs do servidor web da GUI.
## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)
**Problema 1: "PHP ERROR: Type: 1, File: /etc/inc/..."**
* **Causa:** Corrupção de arquivos ou disco cheio.
* **Solução:**
1. Verifique espaço em disco: `df -h`.
2. No console, escolha **Opção 16 (Restart PHP-FPM)**.
3. Se persistir, reforce update via console opção 13.
**Problema 2: Alta Latência / Perda de Pacotes**
* **Causa:** Hardware insuficiente (Mbuf exhaustion) ou loop de rede.
* **Solução:**
1. Verifique uso de CPU (`top -aSH`).
2. Verifique interrupções (`vmstat -i`). Se uma placa de rede gera 20k+ interrupts, pode ser defeito ou driver ruim.
3. Aumente Mbufs em `System > Advanced > Networking` se tiver RAM sobrando.
**Problema 3: Boot Loop ou Filesystem Error**
* **Solução:**
1. Boot no modo Single User (`s` no boot loader).
2. Execute `fsck -y /` para corrigir o sistema de arquivos (apenas UFS). ZFS geralmente se autocorrige ou exige scrub.
## 6. DADOS TÉCNICOS
| Comando | Função | Exemplo |
| :--- | :--- | :--- |
| `pfctl -d` | Desativa Firewall | Emergência |
| `viconfig` | Edita config.xml | Uso Avançado |
| `top` | Monitor de Processos | Ver carga |
## 7. VALIDAÇÃO FINAL (Definição de Pronto)
- [ ] Consegue acessar via SSH?
- [ ] O comando `tcpdump` mostra tráfego?
- [ ] Sabe onde restaurar um backup pelo console (Opção 15)?
- [ ] Logs estão acessíveis e legíveis?

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 728 KiB