A arquitetura do BLOCKBIT UTM é apresentada por um conjunto de camadas de componentes, que integradas, definem os aspectos técnicos relativos aos serviços oferecidos pelo sistema. A imagem abaixo representa a integração dos módulos.


 

Arquitetura do Sistema – Gerenciamento


Arquitetura do Sistema – Gerenciamento Centralizado


Packetflow


A seguir os módulos da arquitetura serão detalhados.

Arquitetura – Modelos de Componentes


A arquitetura é dividida nos seguintes modelos de componentes:

  • API;
  • Frontend;
  • Backend;
  • Data storage;
  • Operating System.


 

Componentes


A seguir explicaremos estes modelos.

Arquitetura – API

A Interface de Programação de Aplicativos (API) é a camada de gerenciamento WEB, sendo esta executada através de uma API, que segue a especificação RESTful com transferência de dados em formato JSON. Podendo ser utilizada para integrar o produto a ferramentas de terceiros e outros produtos da Blockbit, como por exemplo o Blockbit GSM e o Blockbit EPS (End Point Security). Todas as requisições são autenticadas usando uma chave habilitada pelo usuário de administração do sistema e a autenticação é realizada através do método BASIC do protocolo HTTP.

Arquitetura – Frontend

Frontend é a camada de desenvolvimento que disponibiliza a interface de apresentação e controles do sistema, por meio de seus recursos é possível ao administrador, acessar qualquer tipo de informação e executar os comandos de configuração nos serviços do Blockbit UTM.

Graças às interfaces disponibilizadas na camada de Frontend, é garantido que o usuário final não tenha acesso direto aos componentes disponibilizados nas camadas mais profundas da arquitetura do sistema.

O sistema foi projetado para oferecer dois tipos de interface na camada de Frontend:

  • Manager: É uma aplicação WEB para administração dos dispositivos. Nela, o administrador define todos os parâmetros de configuração do sistema, efetua Scans e realiza a gestão de vulnerabilidades;
  • Portal: É uma outra aplicação Web, onde os usuários da rede que são inspecionados, têm acesso a alguns recursos do sistema, ex.: Portal de autenticação, dados pessoais, sessões, certificados, relatórios, troca de senha, quarentena e Virtual Office;
  • Console: O console CLI disponibiliza acesso a diversos comandos para configuração e diagnóstico. Esta interface pode ser acessada por meio de conexão através de um terminal SSH e serial.

Arquitetura – Data storage

No sistema, o Database (Banco de Dados) é dividido em 3 partes:

  • Settings: Camada intermediária, serve para armazenamento e transferência de informações entre os componentes de Frontend e Backend. Por meio do sistema de banco de dados, o Frontend escreve configurações e parâmetros que serão aplicados nos componentes de Backend e no Sistema Operacional;
  • Definitions: Armazena dados de inteligência e definições de sistema, como regras de compliance e assinaturas maliciosas, entre outras;
  • Reports: Base de dados onde são gravados os relatórios de todo o sistema após a realização de um scan.

Arquitetura – Backend

Backend é a camada que disponibiliza comandos e programas que aplicam configurações solicitadas, sendo executados através das interfaces de Frontend para os serviços de Scanner e ao Sistema Operacional.

Graças ao sistema possuir característica modular, possuindo serviços independentes entre si, as informações entre os recursos de Frontend e Backend são transportadas por dois caminhos criptografados e autenticados por chave: Banco de Dados ou Conexão SSH.

  • Apply Queue: A execução de comandos entre as interfaces de Frontend e os serviços de Backend, são realizadas através de uma fila de comandos dentro do banco de dados. Esta fila organiza estes comandos por prioridade, de modo a garantir que as configurações dos serviços sejam aplicadas na ordem correta pelo sistema;
  • Apply Scripts: Lê os parâmetros de configuração armazenados no banco de dados e reescreve essas configurações nos serviços e no sistema operacional;
  • Daemons: São os principais programas que implementam os serviços de inspeção de tráfego de rede no produto, tratam-se de processos executados em segundo plano (background) pelo sistema;
  • Helpers: São programas acoplados aos daemons e complementam as funções destes mesmos, na maioria das vezes, são executados através de PIPE;
  • Summarizers: São programas que coletam informações de logs do sistema, resumindo as estatísticas com objetivo de armazená-las nos bancos de dados de relatórios. Graças ao alto fluxo de informações coletadas pelo sistema, esses programas foram desenvolvidos visando execução a cada 5 minutos.


A solução conta com mecanismo de indexação de logs, permitindo assim uma busca acelerada de eventos, sem a necessidade de abertura de arquivos de logs mais antigos, e também com integração com o SIEM. Suporta também a troca automática de arquivo de Log , de maneira regular ou através do tamanho do arquivo.

Em caso de falha da comunicação entre o appliance de segurança Blockbit e a solução gerenciamento Centralizado e armazenamento de logs (GSM) é realizada uma retenção temporária dos logs no Blockbit até que a comunicação seja restabelecida.


Arquitetura – Sistema Operacional

O Sistema Operacional do Blockbit UTM também é mantido pela equipe de pesquisa e desenvolvimento da Blockbit, onde são disponibilizados os pacotes de ferramentas de código aberto utilizados na implementação dos serviços.

Para simplificar a compatibilidade com os Appliances e garantir o desempenho na execução dos serviços, o Blockbit UTM é executado em um Sistema Operacional com Kernel Linux baseado em arquitetura Intel x86_x64.

  • No labels