Versão: 1.0 Desenvolvido por Willian Jesus Licença: GPLv3
Para gravar estatistica no MongoDB yum/dnf install python3-pymongo python3-bson
Criar uma pasta chamada config e colocar arquivos JSON com a extensão .conf.
Exemplo: config/zabbix_sender.conf
O arquivo está no formato JSON (em forma de dicionário), então respeite as limitações do arquivo de configuração para não parar o script :)
No arquivo de configuração temos 3 chaves:
- extra
- principal
- filtro
Na chave "principal", você pode gerar itens mais genéricos para os filtros. Ela será utilizada como base para todos os filtros
Você pode criar uma chave principal que tenha a expressão "PORTA.*([0-9]{1,5})" para coletar no log analisado a expressão "PORTA" seguido de 1 até 5 digitos númericos. PORTA 53 PORTA 161 PORTA 10050
Na chave "filtro", você pode fazer filtros da chave principal.
Você pode criar filtros da rede de origem que vem a conexão na porta 53. Assim você saberá qual é o IP de origem. Você pode escolher sempre a melhor expressão regular pro filtro.
Na chave "extra" você pode personalizar a busca de qualquer expressão regular no arquivo, sem depender do filtro principal. A desvantagem de utilizar essa chave, é que você terá que fazer expressões regulares mais completas para cada item, não será um filtro de algo que já está devidamente separado.
Os arquivos devem ser no formato JSON (em forma de dicionário), então respeite as limitações do arquivo de configuração para não parar o script :)
O arquivo de configuração para o Zabbix deve conter todos esses itens:
multi_keys : ['CHAVE1','CHAVE2','CHAVE3']
multi_keys : [ 80, 443, 161 ]
"key" - É a chave definida nos filtros. Não é possível utilizar o "multi_keys" e a "key" na mesma configuração
key : 'CHAVE1'
key : 80
re_item : "Nome do filtro"
re_item : "clientes_rede160"
"zabbix_item" - É o nome do item (tipo trapper) do Zabbix. Pode ou não existir no Zabbix antes da inicialização do script.
zabbix_item : "Item no Zabbix (trapper)"
zabbix_item : "cliente1_rede160"
zabbix_client : "Nome do host"
zabbix_client : "Zabbix server"