Serviços de infra opensource utilizados pelo FWFLEX
O FWFLEX possui diversos serviços de infra opensource necessários para entregar suas funcionalidades.
| Serviço/ferramenta | Funcionalidades |
|---|---|
| osqueryd | Dashboard |
| zabbix | Monitoramento |
| Kea | DHCP |
| PowerDNS | DNS |
| libvirtd | Virtualização |
| Pacemaker | Cluster |
| pcsd | Cluster |
| corosync | Cluster |
| iptables / ipset | Firewall |
| netifyd | Firewall |
| netify-fwa | Firewall |
| Squid | Webfilter |
| Clamav | Webfilter |
| C-ICAP | Webfilter |
| OpenVPN | VPN / Clientes Openvpn |
| Libreswan | VPN |
| FireQoS | DBC |
| Nginx | Aplicação web, SSO e WPAD |
| Prometheus | Gráficos DBC e SD-WAN |
| collectd | SD-WAN |
osqueryd
Provisionado via Ansible. Instala o repo através da role itflex-repos. Instala serviço e configura a unit do systemd através da role itflex-core. Roda como serviço, sem conf provisionado.
zabbix
Provisionado via Ansible. Instala o repo através da role itflex-repos. Instala serviço e configura confs default através da role itflex-core. Confs de agente e proxy são provisionados e gerenciados pela interface web.
Kea
Compilado versão fixa 1.6.0 no repo da iTFLEX 3rd-pary. Instalado e configurado através da role itflex-dhcp. Principais confs provisionados:
- /etc/kea/kea-ctrl-agent.conf
- Ativa o serviço de APIs do KEA, atualmente usado para consultar leases do DHCP
- kea-dhcp4.conf
- Configuração dos escopos
- kea-dhcp-ddns.conf
- Configuração do DDNS
Arquivo de leases fica armazenado em /var/lib/kea/.
Documentações:
- http://ftp.yz.yamagata-u.ac.jp/pub/network/isc/kea/1.6.0/doc/html/
- https://kea.readthedocs.io/_/downloads/en/kea-1.6.0/pdf/
Spikes (estudos do serviço):
PowerDNS
Instalado via ansible a partir do repo EPEL. Principais confs provisionados:
- /etc/pdns-recursor/zones.conf
- /etc/pdns-recursor/recursor.conf
Documentações:
Spikes (estudos do serviço):
libvirtd
Instalação feita através do pacote itflex-virtualization, que instala diversos pacotes de infra necessários para a virtualização. Utiliza os pacotes nativos da distro.
Documentações:
Spikes (estudos do serviço):
Pacemaker / pcsd / corosync
Instalação feita através do pacote itflex-cluster, que instala diversos pacotes de infra necessários para o cluster. Utiliza os pacotes nativos da distro do repo ha.
Na versão atual (v3.61.x) o gerenciamento do cluster não faz parte do produto. O provisionamento do cluster é feito através de playbook Ansible: https://git.itflex.com.br/itflex/server-v2-ansible/-/tree/master/v3/cluster-v3
Documentações:
Spikes (estudos do serviço):
netifyd / netify-fwa
Netifyd possui repo próprio, configurado através da role itflex-repos. Netify-fwa compilado versão fixa 1.2.6 no repo da iTFLEX 3rd-pary.
Instala serviços através da role itflex-core. Ambos rodam como serviço.
Netifyd faz a interceptação dos pacotes de rede e classificação. Netify-fwa define regras de aplicações, consulta o Netifyd e monta ipsets do iptables para serem usados no Firewall como filtro de aplicações.
Documentações:
- https://www.netify.ai/developer/netify-agent
- https://www.netify.ai/developer/netify-agent/netify-firewall-agent
Spikes (estudos do serviço):
squid / clamav / c-icap
Instalação feita através do pacote itflex-webfilter, que instala diversos pacotes de infra necessários para o webfilter. Squid instalado de repo nativo da distro. Squidclamav e c-icap instalados do repo da iTFLEX 3rd-pary.
Documentações:
Spikes (estudos do serviço):
Libreswan
Instalação feita através do pacote itflex-ipsec, que instala diversos pacotes de infra necessários para o IPsec. Utiliza os pacotes nativos da distro.
Spikes (estudos do serviço):
FireQoS
Instalação feita através do pacote itflex-dbc, que instala diversos pacotes de infra necessários para o QoS. Pacote firehol instalado do repo da iTFLEX 3rd-pary.
Documentações:
Spikes (estudos do serviço):
collectd
Instalação feita através do pacote itflex-core, que instala o collectd como dependência. Instalado a partir do repo EPEL.
Principal conf: /etc/collectd.conf
Carrega os plugins netlink e write_prometheus para carregar informações de rede no formato /metrics para o prometheus.
Utilizado para os gráficos do DBC.
prometheus
Instalação feita através do pacote itflex-core, que instala o prometheus como dependência. Instalado do repo da iTFLEX 3rd-pary.
Principal conf: /etc/prometheus/conf.yml
Prometheus consulta /metrics/ do collectd e do sdwan-collector.
Prometheus é usado para os gráficos do DBC e pelo sdwan-analyzer.
Spikes (estudos do serviço):