templates-zabbix-itguys/templates_gold/pfsense_hybrid_snmp_agent/files/INSTALL_OPENVPN.md

2.0 KiB

Instalação do Monitoramento OpenVPN no pfSense

Padrão IT Guys Gold (v3 - Cache System)

Este guia descreve como instalar os scripts de monitoramento OpenVPN no pfSense usando o sistema de CACHE para alta performance e zero timeout no Zabbix.


Arquitetura

  1. openvpn-collector.sh: Executado via cron a cada minuto. Coleta dados de todos os sockets e salva em JSON.
  2. openvpn-discovery.sh: Executado pelo Zabbix Agent. Apenas lê o arquivo JSON gerado (instantâneo).

Pré-requisitos

  • pfSense 2.x ou superior
  • Zabbix Agent instalado (pacote zabbix-agent7 ou similar)
  • Sockets OpenVPN ativos em /var/etc/openvpn/server*/sock

Passo 1: Instalar os Scripts

# Via SSH no pfSense:
mkdir -p /opt/zabbix

# Copie os arquivos da pasta files/ para o firewall:
# - openvpn-collector.sh
# - openvpn-discovery.sh

# Defina permissão de execução:
chmod +x /opt/zabbix/openvpn-collector.sh
chmod +x /opt/zabbix/openvpn-discovery.sh

Passo 2: Configurar o Cron Job

O coletor precisa rodar automaticamente.

# Adicione ao /etc/crontab:
echo '* * * * * root /opt/zabbix/openvpn-collector.sh' >> /etc/crontab

# Execute manualmente uma vez para gerar o cache inicial:
/opt/zabbix/openvpn-collector.sh

Passo 3: Configurar Zabbix Agent

# Edite a configuração (caminho pode variar, ex: /usr/local/etc/zabbix7/...)
vi /usr/local/etc/zabbix7/zabbix_agentd.conf

# GARANTA QUE ESTAS LINHAS EXISTAM:
Include=/usr/local/etc/zabbix7/zabbix_agentd.conf.d/*.conf
Timeout=30
UnsafeUserParameters=1

# Adicione usuários zabbix ao grupo wheel (permissão socket):
pw groupmod wheel -m zabbix

Passo 4: Instalar UserParameters

# Copie o userparameter_openvpn.conf para a pasta de include:
# Ex: /usr/local/etc/zabbix7/zabbix_agentd.conf.d/

Reinicie o agente:

service zabbix_agentd restart

Passo 5: Teste

# Teste de leitura instantânea
zabbix_agentd -t openvpn.discovery

# Saída esperada (imediata):
# [t|{"data":[{"{#VPN.USER}":"joao.silva"...}]}]