Instalador offline

O pacote nicesec-offline-5.tar transforma um Ubuntu 24.04 já instalado no appliance. Ele não é imagem de máquina virtual: não inicia sozinho e não substitui o OVA. Use quando você já tem o sistema operacional — em ferro ou em uma VM criada por você — e não quer depender de internet.

O que vem no pacoteOs quatro pacotes .deb do Docker, as cinco imagens de contêiner (nginx, edge, local, industry, industrydb), o runtime, a interface local e o install.sh.

Requisitos

SistemaUbuntu 24.04 LTS, x86_64 (amd64)
Acessoroot
Dockernão pode estar instalado em execução
Caminhoo pacote precisa estar em /opt/nicesec
Redenenhuma durante a instalação

O Ubuntu já traz as bibliotecas de base que o pacote usa (adduser, iptables, debconf, libnftables1, libsystemd0, libc6, libseccomp2). Python 3 também é necessário para o instalador.

Passo 1 — copiar e extrair

Copie o arquivo para a máquina e extraia exatamente em /opt/nicesec. O instalador recusa qualquer outro caminho.

sudo mkdir -p /opt/nicesec
sudo tar -xf nicesec-offline-5.tar -C /opt/nicesec
cd /opt/nicesec

Passo 2 — instalar

sudo ./install.sh --offline

O instalador verifica cada arquivo pelo SHA-256 do manifesto, instala os .deb do Docker, carrega e confere as cinco imagens, cria os diretórios de estado e instala as unidades do systemd.

Ele não liga nadaAs unidades são instaladas desabilitadas. Nenhum serviço, senha ou identidade é criado nesta etapa — de propósito. A ativação é um passo separado, depois do provisionamento.

Passo 3 — provisionar a identidade

Antes, cadastre o cliente e o appliance na central administrativa e tenha em mãos o identificador do appliance e a chave pública de licenças (32 bytes brutos, não o arquivo PEM).

sudo PYTHONPATH=/opt/nicesec/platform /usr/bin/python3 -m nicesec_agent.cli \
  --state /var/lib/nicesec/edge provision \
  --customer-id <cliente> \
  --appliance-id <appliance> \
  --email <email-do-admin> \
  --central https://apps.nicesec.com.br \
  --origin https://<endereco-do-painel> \
  --license-public-key /caminho/chave-publica.raw

O comando pede a senha do administrador local duas vezes (mínimo de 14 caracteres). Ele cria a identidade do appliance, o token interno, o banco local de sessão e o certificado TLS autoassinado em /var/lib/nicesec/edge/tls/.

Rodar uma vez sóSe o diretório de estado já existir, o comando recusa — a identidade não é recriada nem apagada. Em caso de erro, investigue antes de repetir. --central e --origin são origens HTTPS sem caminho.
CertificadoAutoassinado não é confiável para o navegador. Instale o certificado da empresa antes de tratar a conexão como confiável.

Passo 4 — preparar o Industry

Gere o ambiente do processo e o estado do banco. A URL pública é obrigatória na primeira execução.

sudo /usr/bin/python3 /opt/nicesec/runtime/industry_runtime.py init --env-only \
  --url-publica https://<endereco-do-painel>/industry

Passo 5 — subir os contêineres

cd /opt/nicesec
sudo docker compose --env-file runtime/images.env -f runtime/compose.yml up -d industrydb local
sudo docker compose --env-file runtime/images.env -f runtime/compose.yml run --rm --no-deps industry init
sudo docker compose --env-file runtime/images.env -f runtime/compose.yml up -d

A ordem importa: o banco e o serviço local precisam existir antes do init, porque as migrações rodam dentro da rede interna do appliance.

Passo 6 — ativar os serviços

As unidades só sobem quando os quatro arquivos de condição existem: /etc/nicesec/runtime-ready, nginx.conf, local.env e industry.env. Depois de conferir que os contêineres estão saudáveis:

sudo systemctl enable --now nicesec-images.service
sudo systemctl enable --now nicesec-appliance.service
sudo systemctl status nicesec-appliance.service

Passo 7 — conferir

  1. Abra https://<endereco-do-painel>/ na rede local.
  2. Entre com o administrador criado no provisionamento.
  3. Confirme que o painel do Industry responde e que o banco está saudável.
  4. Confira a saída de docker compose ps: nenhum contêiner deve estar reiniciando.

O que ainda não está pronto

  • Coleta de equipamentos: desligada nesta versão. O appliance entrega painel, banco e identidade, não a leitura de verificadoras e leitores.
  • Homologação: o pacote atual foi empacotado, mas não passou por instalação completa em campo. Trate como ambiente de teste.
  • Interface: o pacote publicado carrega a interface anterior à revisão mais recente.

Para a parte de rede, veja Rede e portas. Para usar uma máquina virtual pronta em vez do instalador, veja Máquinas virtuais.