Guia de Instalacao On-Premise

Instale o NATVault no seu proprio servidor em poucos passos. Ideal para provedores que precisam manter os dados dentro da propria infraestrutura.

Requisitos Minimos

Debian 12+
Sistema Operacional
2 GB
RAM Minima
500 GB+
Disco (SSD recom.)
514/UDP
Porta Syslog

Recomendado: 4 GB RAM, SSD NVMe, Debian 12 ou Ubuntu 22.04+. Para provedores com mais de 2.000 assinantes, considere 8 GB RAM e discos maiores.

Passo 1: Criar LXC ou VM

Crie um container LXC (Proxmox) ou VM com Debian 12. Se usar LXC, habilite nesting para Docker.

# Proxmox — criar LXC com nesting
$ pct create 210 local:vztmpl/debian-12-standard_12.2-1_amd64.tar.zst \
  --hostname natvault --memory 4096 --swap 512 --cores 2 \
  --rootfs local-lvm:50 --net0 name=eth0,bridge=vmbr0,ip=dhcp \
  --features nesting=1 --unprivileged 0

$ pct start 210

Passo 2: Instalar Docker

# Instalar Docker
$ apt update && apt install -y curl gnupg lsb-release
$ curl -fsSL https://get.docker.com | bash
$ systemctl enable docker

Passo 3: Instalar VictoriaLogs

VictoriaLogs e o motor de armazenamento de logs utilizado pelo NATVault. Consome ate 90% menos RAM que ELK/Graylog.

# Criar diretorio de dados
$ mkdir -p /opt/victoria-logs-data

# Rodar VictoriaLogs via Docker
$ docker run -d --name victoria-logs \
  --restart=always \
  -p 127.0.0.1:9428:9428 \
  -v /opt/victoria-logs-data:/victoria-logs-data \
  victoriametrics/victoria-logs:latest \
  -storageDataPath=/victoria-logs-data \
  -retentionPeriod=13months

# Verificar se esta rodando
$ curl http://localhost:9428/health

Passo 4: Configurar Syslog

Instale o rsyslog para receber logs dos roteadores e encaminhar para o VictoriaLogs.

$ apt install -y rsyslog

# Criar configuracao para encaminhar ao VictoriaLogs
$ cat > /etc/rsyslog.d/50-natvault.conf << 'EOF'
module(load="imudp")
input(type="imudp" port="514")

# Forward NAT/CGNAT logs to VictoriaLogs
template(name="VLogsFormat" type="string"
  string="{\"_msg\":\"%msg%\",\"hostname\":\"%hostname%\",\"facility\":\"%syslogfacility-text%\",\"severity\":\"%syslogseverity-text%\",\"timestamp\":\"%timereported:::date-rfc3339%\"}\n")

*.* action(type="omfwd" target="127.0.0.1" port="9428"
  protocol="tcp" template="VLogsFormat"
  action.resumeRetryCount="-1" queue.type="LinkedList"
  queue.size="10000")
EOF

$ systemctl restart rsyslog

Passo 5: Instalar NATVault Web

# Criar container PHP + MariaDB
$ mkdir -p /opt/natvault

# Clonar o NATVault (ou baixar release)
$ cd /opt/natvault
$ git clone https://github.com/ceritell/natvault.git .

# Configurar .env
$ cp .env.example .env
$ nano .env # Ajustar DB_HOST, DB_PASSWORD, VICTORIA_LOGS_URL

# Subir containers
$ docker compose up -d

# Rodar migracoes
$ docker exec natvault-app php /var/www/html/setup.php

Passo 6: Configurar Roteadores

Aponte o syslog dos seus roteadores para o IP do servidor NATVault na porta 514/UDP.

MikroTik (RouterOS)

/system logging action add name=natvault target=remote remote=IP_SERVIDOR remote-port=514
/system logging add action=natvault topics=firewall,info

Huawei (NE/AR Series)

system-view
info-center loghost IP_SERVIDOR facility local7
info-center source default channel loghost log level informational

Cisco (IOS/IOS-XE)

logging host IP_SERVIDOR
logging trap informational
logging facility local7

Juniper (Junos)

set system syslog host IP_SERVIDOR any any
set system syslog host IP_SERVIDOR facility-override local7
commit

Passo 7: Configurar Licenca

Apos instalar o NATVault, configure a chave de licenca fornecida pelo time Ceritell.

# A licenca e configurada na interface web
# Acesse: Configuracoes > Licenca
# Cole a chave no formato: NV-TENANT-xxxxxxxx-...

# Ou via API (para automacao):
$ curl -X POST http://localhost:8292/api/v1/license-check.php \
  -H "Content-Type: application/json" \
  -d '{"license_key": "NV-MEUPROVEDOR-abc12345-..."}'
Importante: A licenca e verificada periodicamente (diariamente). Se a licenca expirar, o sistema continua funcionando por 30 dias (periodo de graca), exibindo um aviso. Apos o periodo de graca, entre em contato com o suporte para renovacao.

Para obter sua licenca, entre em contato com o time comercial: contato@ceritell.com.br

Passo 8: Acessar

Abra o navegador e acesse http://IP_SERVIDOR:8292. O usuario padrao e admin@provedor.com com a senha definida no setup.

Dica: Configure um proxy reverso (Nginx) com SSL para acesso seguro via HTTPS. Recomendamos usar Certbot para certificados Let's Encrypt gratuitos.
Importante: A porta 514/UDP deve estar aberta no firewall do servidor para receber logs dos roteadores. A porta 8292 (ou 443 com proxy) deve estar acessivel para os operadores do sistema.

Suporte

Em caso de duvidas ou problemas na instalacao, entre em contato: