41
ROGÉRIO FERNANDES PEREIRA UMA INTEGRAÇÃO DO TELEGRAM COM O ZABBIX PARA FINS DE ENVIO DE ALERTAS DE MONITORAMENTO LAVRAS – MG 2014

ROGÉRIO FERNANDES PEREIRA - Comunidade brasileira de ...zabbixbrasil.org/files/RogerioFernandesPereira-TCC_Telegram_com... · e seu crescimento está acontecendo de forma exponencial

Embed Size (px)

Citation preview

ROGÉRIO FERNANDES PEREIRA

UMA INTEGRAÇÃO DO TELEGRAM COM

O ZABBIX PARA FINS DE ENVIO DE

ALERTAS DE MONITORAMENTO

LAVRAS – MG

2014

ROGÉRIO FERNANDES PEREIRA

UMA INTEGRAÇÃO DO TELEGRAM COM O ZABBIX PARA FINS DE

ENVIO DE ALERTAS DE MONITORAMENTO

Monografia de Pós-Graduação ”Lato Sensu”

apresentada ao Departamento de Ciência da

Computação para obtenção do título de Especialista

em “Administração em Redes Linux”

Orientador

Prof. Dr. Sanderson Lincohn Gonzaga de Oliveira

LAVRAS – MG

2014

Dedico esse trabalho ao meu amigo Luiz Alberto Horst inmemoriam por ter me

colocado no caminho dessa importante especialização e me incentivado a

continuar mesmo em momentos de dificuldades.

AGRADECIMENTOS

Agradeço aos meus pais por me passarem cada um do seu modo, suas

experiências e ensinamentos, análogo a blocos de tijolos, que vou co-

locando na construção do meu aprendizado e na formação de meu

caráter, para ser quem sou, trazendo comigo de cada um deles um

pouco de sua essência. À minha esposa por acompanhar todas as mi-

nhas lutas e me apoiar mesmo nas horas mais difíceis, sendo minha

companheira no real sentido da palavra. Ao meu orientador por res-

ponder sempre rapidamente aos meus e-mails, me direcionando na

conclusão desse trabalho, tão importante para mim.

RESUMO

Em um ambiente de rede, é imprescindível um monitoramento eficiente dos ativos

e serviços para resposta rápida a qualquer incidente que possa ocorrer, valendo

essa premissa também para análise de segurança, performance e acompanhamento

do crescente uso dessa infraestrutura, com objetivo de planejar as melhorias e a

expansão necessária, conforme sua evolução. Geralmente, as ferramentas de mo-

nitoramento utilizam meios de alerta, como monitores ou telões, alarme sonoro,

mensagens via e-mail, etc. O envio de alertas por mensagens é o meio mais útil

para equipes de plantão. Com esse objetivo, foi escolhido o Zabbix como ferra-

menta de monitoramento, pois além de uma solução open-source, oferece capaci-

dade de verificar e testar diversos parâmetros, em vários ativos, permitindo uma

configuração flexível do serviço e aceitar integração com outras soluções por meio

de programação utilizando-se diversas linguagens como Python, Pearl, C, PHP e

Shell Script. Para uma solução de envio de mensagens instantâneas e integradas

ao Zabbix, foi escolhido o Telegram, que é uma ferramenta multi-plataforma, gra-

tuita e parcialmente em código-aberto, com foco na segurança. Este trabalho trata

do estudo sobre o Telegram e sua integração ao Zabbix, com objetivo de enviar

mensagens instantâneas para celulares e alertar a equipe de analistas da Divisão de

Redes do Ministério das Comunicações do governo brasileiro.

Palavras-Chave: Telegram; Zabbix; GNU/Linux; Software Livre; Monitoramento.

SUMÁRIO

1 Introdução 9

2 Referencial teórico 11

2.1 Zabbix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.1.1 Alertas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.1.2 Mídias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.1.3 Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.1.4 Gatilhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.1.5 Ações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.1.6 Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.2 Telegram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.2.1 Características do Telegram . . . . . . . . . . . . . . . . . . . . . 19

2.2.2 Diferenças entre Telegram e Whatsapp . . . . . . . . . . . . . . . . 21

2.2.3 Outros aplicativos similares . . . . . . . . . . . . . . . . . . . . . 22

3 Estudo de caso 24

3.1 Configuração do cliente Telegram . . . . . . . . . . . . . . . . . . . 27

3.2 Script para integração . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.3 Configuração da integração . . . . . . . . . . . . . . . . . . . . . . . 33

3.4 Resultado do envio de alertas . . . . . . . . . . . . . . . . . . . . . . 35

4 Conclusões 37

LISTA DE FIGURAS

2.1 Comparação entre Telegram e Whatsapp. . . . . . . . . . . . . . . . 22

3.1 Esquema de funcionamento da integração do Telegram com o Zabbix. 26

3.2 Registro do serviço Telegram. . . . . . . . . . . . . . . . . . . . . . 29

3.3 Tela de ajuda do cliente Telegram. . . . . . . . . . . . . . . . . . . . 29

3.4 Script de integração do Telegram como Zabbix. . . . . . . . . . . . . 30

3.5 Configuração de mídia. . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.6 Configuração da mensagem de alerta. . . . . . . . . . . . . . . . . . 33

3.7 Regras de disparo dos alertas ao Telegram. . . . . . . . . . . . . . . . 34

3.8 Configuração das ações dos alertas. . . . . . . . . . . . . . . . . . . . 35

3.9 Resultado do recebimento dos alertas no celular. . . . . . . . . . . . . 36

LISTA DE TABELAS

2.1 Nome das macros mais utilizadas. . . . . . . . . . . . . . . . . . . . 14

2.2 Exemplo de funcionamento de um gatilho. . . . . . . . . . . . . . . . 14

2.3 Exemplo de funcionamento de um gatilho. . . . . . . . . . . . . . . . 17

2.4 Exemplo de controle de fluxo. . . . . . . . . . . . . . . . . . . . . . 17

2.5 Principais comandos utilizados em shell. . . . . . . . . . . . . . . . . 18

9

1 INTRODUÇÃO

No atual cenário mundial, a tecnologia da informação está ficando cada

vez mais complexa, manuseando maior quantidade de informações em tempo real

e seu crescimento está acontecendo de forma exponencial (QUEIROZ, 2010). Para

trabalhar com essa crescente demanda de dados e informações, se faz necessário o

investimento em infraestrutura de redes e computadores cada vez mais modernos

e potentes, requerendo assim, mais cuidado e um maior volume de trabalho para

manter tudo isso em funcionamento. Se uma falha acontecer, para que toda essa

estrutura complexa continue funcionando, é preciso lançar mão de algum recurso

que possa ajudar no controle, na manutenção, ou até mesmo na identificação da

necessidade de intervenção, para que melhorias sejam feitas, evitando assim pa-

ralisação por tempo prolongado, mantendo-se o mínimo possível de indisponibili-

dade. Normalmente, dada a quantidade de serviços e operações críticas existentes,

que dependem de uma infraestrutura estabilizada, o funcionamento correto é o

objetivo principal para alcançar o sucesso das suas finalidades.

Para esse fim, existem diversas ferramentas de monitoramento, que pos-

suem a função de auxiliar no mapeamento constante e preciso de uma infraestru-

tura, não só apenas para resolução de problemas, mas também para planejamento

de futuras ações. As decisões estratégicas tomadas com embasamento em infor-

mações precisas, auxiliam no aperfeiçoamento, melhoria e economia dos recursos

utilizados.

Uma boa ferramenta de monitoramento precisa possuir a capacidade de

detectar rapidamente um incidente, podendo ser reativa de forma autônoma, que

é a capacidade de restabelecer um serviço automaticamente, através de scripts

ou rotinas programadas para esse fim. Caso ela seja impossibilitada de resolver

o problema automaticamente, por limitação na sua programação, por um evento

desconhecido ou por uma incapacidade técnica na realização dessa ação, a fer-

ramenta para ser útil, precisa emitir alertas através de um meio de comunicação

10

com a equipe de monitoramento. Existem várias formas de envio, como o serviço

de mensagem instantânea, o e-mail, o alarme sonoro ou o alerta em tela, afim de

chamar a atenção dos operadores para a necessidade de intervenção humana na

resolução do problema.

A proposta desse trabalho foi estudar os processos de implementação e os

resultados da integração da ferramenta Telegram com o Zabbix, na Divisão de Re-

des do Ministério das Comunicações, como recurso de alerta em tempo real e envio

de mensagens para celulares. Essas mensagens são disparadas pela ocorrência de

incidentes, através de um script integrado ao Zabbix, que é uma das ferramentas

de monitoramento dos ativos e serviços da autarquia.

Esse trabalho também tem o objetivo de auxiliar a comunidade acadêmica,

open-source e interessados no uso do Telegram, que é uma ferramenta nova, gra-

tuita, e parcialmente livre, voltada para comunicação entre usuários, que surgiu

como uma alternativa ao Whatsapp.

Não foi o objetivo desse trabalho entrar em detalhes sobre o Zabbix, limitando-

se apenas à integração do Telegram, como serviço de mensagem instantânea para

celulares, com o Zabbix, aumentando sua possibilidade de comunicação de forma

econômica, eficiente e segura.

Este estudo está dividido em quatro capítulos e os demais estão distribuí-

dos conforme se apresentam abaixo.

No capítulo 2, apresenta-se um estudo para o entendimento geral das par-

tes envolvidas no processo de integração entre o Zabbix e o Telegram.

No capítulo 3, são apresentados os processos de preparação do Telegram,

como instalação, configuração e integração com o Zabbix e os resultados dessa

implementação.

No capítulo 4, serão apresentadas as conclusões referentes ao impacto

dessa integração no ambiente de produção do Ministério das Comunicações.

11

2 REFERENCIAL TEÓRICO

Neste capítulo serão apresentados alguns conceitos e a aplicação das partes

envolvidas no processo de integração entre o Zabbix e o Telegram.

Na seção 2.1 será feita uma introdução sobre as características do Zabbix,

seu emprego e algumas de suas funções focadas no objetivo deste trabalho.

Na seção 2.2 serão abordadas as características do Telegram e o diferen-

cial sobre o seu concorrente direto Whatsapp.

2.1 Zabbix

O Zabbix é uma ferramenta open-source de monitoramento para empresas,

criado pelo russo Alexei Vladishev em 1998. Quando ele trabalhava em um banco

na Letônia como administrador de sistemas, sua insatisfação com as aplicações

de monitoramento na época forneceu o motivo para desenvolver o Zabbix (LIMA,

2014).

Em 2001 foi lançada a primeira versão alpha do Zabbix, a 0.1 sob a Li-

cença Pública Geral ou General Public License em inglês. Em 2004 a versão

estável foi liberada identificada como 1.0. Para ter abertura de mercado como

um produto mais profissional, em 2005 foi fundada a Zabbix SIA. Desde 2006, a

ferramenta vem evoluindo até o momento atual como é conhecida (LIMA, 2014).

Ele é dividido basicamente em três módulos: servidor, agente e proxy.

O servidor é o principal componente, onde está localizado o banco de dados que

armazena todas as informações sobre a configuração, autenticação, grupo de hosts,

hosts, templates, etc. Um servidor possui a capacidade de monitorar milhares de

itens ou pode ser feito o monitoramento em servidores distribuídos, dividindo a

carga e aumentando a performance.

O proxy Zabbix é um elemento opcional que não é necessário para o fun-

cionamento do servidor, mas é um item muito importante se for trabalhar com uma

12

arquitetura de monitoramento distribuído. O proxy coleta as informação de partes

de uma infraestrutura monitorada e repassa para o Zabbix server.

O agente é responsável pela leitura das informações de um ativo ou ser-

viço, enviando-as ao servidor ou ao proxy, e pode ser instalado em uma máquina

com sistema operacional suportado. O servidor Zabbix é suportado por várias pla-

taformas, sendo elas: AIX, FreeBSD, HP-UX, GNU/Linux, Mac OS X, NetBSD,

OpenBSD, SCO Open Server e Solaris. Já o agente além desses acima citados

ainda é suportado pelo Windows 2000 e superiores.

É possível utilizar várias opções de banco de dados com o servidor Zabbix,

dentre elas: IBM DB2, MySQL, Oracle, PostgreSQL e SQLite.

O Zabbix possui uma interface gráfica via Web, para gerenciamento da

ferramenta, permitindo um acesso fácil ao servidor de qualquer lugar e de qualquer

plataforma.

Na subseção 2.1.1, será apresentado a função dos alertas. Na subseção

2.1.2 será comentado a função da mídia no Zabbix. Na subseção 2.1.3, apresenta-

se aplicação das macros. A subseção 2.1.4, comenta-se sobre os gatilhos. Na

subseção 2.1.5, será apresentada a função das ações. E por fim na subseção 2.1.6,

apresenta-se a importância dos scripts no Zabbix.

2.1.1 Alertas

Os alertas são fundamentais para notificar a parte interessada no monitora-

mento dos ativos, seja o operador, analista, gerente de equipe, diretor etc. Quando

um incidente não é corrigido de forma automática por questões de impossibilidade

técnica ou propositalmente, é a função do alerta avisar que algo indesejável ou de

recuperação aconteceu. Esse alarme pode ser disparado através de várias mídias

disponíveis.

13

2.1.2 Mídias

As mídias são os meios pelos quais as mensagens de alerta são enviadas.

Elas podem ser configuradas conforme o serviço fornecido no servidor, através de

e-mail, Jabber, SMS, script ou Ez Texting. Para se enviar e-mail é necessário con-

figurar o servidor com algum tipo de serviço de correio eletrônico como o Exim4

ou Postfix. Para a utilização com Jabber é necessário ter conexão com um servidor

desse serviço, para que as mensagens sejam enviadas. As mensagens através do

serviço de SMS, podem ser enviadas por um cliente Web ou ter acoplado ao ser-

vidor, algum dispositivo com serviço celular ativo. O Ez Texting é um serviço de

SMS pago e pré-configurado para utilização com o Zabbix. É preciso ter a conta

criada e acesso ao serviço. Por último, o script, que está inserido no escopo desse

trabalho e será explicado mais adiante.

2.1.3 Macros

As macros são utilizadas no Zabbix para aplicação em alertas, relatórios,

gatilhos, sensores, templates, etc. Uma macro é simplesmente uma variável, que

confere grande flexibilidade e poder na utilização da ferramenta no monitoramento

de ativos e serviços. O uso das macros é importante quando precisamos usar va-

lores de objetos que alteram seu conteúdo dinamicamente. O Zabbix faz a leitura

de um valor real no banco de dados em determinada posição e mostra esse valor

na interface que está utilizando a macro. A utilização planejada e pensada deste

recurso pode reduzir drasticamente a quantidade de configurações e o custo de

manutenção do monitoramento. As macros podem ser internas da ferramenta ou

podem ser definidas por usuários. Na Tabela 2.1 será listada as principais macros

utilizadas nesse trabalho.

14

Tabela 2.1: Nome das macros mais utilizadas.

Macro Descrição{TRIGGER.NAME} Nome do gatilho.{TRIGGER.SEVERITY} Severidade do gatilho. Valores possíveis: Não classificado,

Informação, Alerta, Média, Alta, Desastre e Desconhecido.{HOSTNAME<1-9>} Nome do host até o nono item do gatilho que causa a notifi-

cação.{ITEM.NAME<1-9>} Nome até o nono item do gatilho que causa notificação.{TRIGGER.STATUS} Estado do gatilho. Pode ser PROBLEM ou OK.

2.1.4 Gatilhos

Os gatilhos (triggers) são expressões lógicas, que são avaliadas toda vez

que a coleta de dados de um item, em monitoramento, chega ao servidor Zabbix.

Como exemplo, temos a temperatura de um processador. Quando essa informação

é lida, existe uma checagem para verificar se tal dado se enquadra dentro de uma

regra ou não, podendo ser verdadeiro ou falso. Consequentemente é tomada uma

ação conforme programado. A Tabela 2.2 apresenta um exemplo desse procedi-

mento, onde vamos ter hipoteticamente a leitura da temperatura de um processa-

dor.

Tabela 2.2: Exemplo de funcionamento de um gatilho.

GATILHO (TRIGGER)Processador = 57o C (informação enviada ao servidor Zabbix).Regra = toda vez que o processador atingir 60o C disparar um alarme.Processador 57o C < 60o C disparar alarme (falso).

São operações realizadas, que após a checagem de um gatilho, o resultado

fornecido é positivo. O exemplo da subseção anterior ilustra esse funcionamento.

15

2.1.5 Ações

A ação, no caso do exemplo fornecido, seria disparar o alarme caso a

temperatura chegasse a 60o C. O envio do alarme nesse caso, é uma ação que pode

ser feita através das mídias anteriormente apresentadas.

2.1.6 Scripts

No Zabbix existem duas possibilidades de trabalhar com scripts utilizando-

se o shell: uma aplica-se aos comandos externos que podem ser executados direta-

mente nos hosts monitorados pelo Zabbix para automatizar uma ação de recupera-

ção (ação reativa) e outra que pode ser aplicada aos tipos de mídias, chamando um

arquivo que contém uma sequências de comandos para o envio de mensagens, atra-

vés de um serviço interno (e-mail) ou externo (mensagem instantânea via Web). É

a segunda possibilidade de uso de scripts nosso alvo de estudo.

Um script para um shell é um arquivo que armazena um conjunto de

comandos para o shell. Ao se executar esse arquivo, os comandos são

executados em lote, ou seja, os comandos são executados sequencial-

mente. Mais precisamente, os comandos do arquivo são executados

com a simples digitação no nome do arquivo no Terminal em vez do

usuário do sistema operacional digitá-los um de cada vez. O script

faz com que todos os comandos formem um só comando. Entretanto,

na realidade, os comandos são executados um de cada vez no shell

(OLIVEIRA, 2012).

Na integração realizada entre o Zabbix e o Telegram, foi utilizado o re-

curso de suporte ao script externo do Zabbix para a automatização no envio de

alertas para celulares. Em específico foi usado o Shell Script como recurso de

programação da plataforma GNU/Linux, onde foi instalado o servidor Zabbix.

16

Como explicado por (OLIVEIRA, 2012), um shell, é uma aplicação na

qual digitam-se comandos para interação com sistemas operacionais GNU/Linux

em execução, ou seja, é uma interface em modo texto, entre o usuário e esses

sistemas. Entende-se então, que no shell em vez de se arrastar o mouse para copiar

um arquivo por exemplo, é dado um comando de cópia diretamente nesse console

seguindo um padrão organizado de texto. Na mesma linha, podemos digitar vários

comandos um após o outro, combinando-os afim de obtermos um resultado. Se

editarmos um arquivo de texto simples e sem formatação, com vários comandos

em linha, de forma sequencial, teremos em mãos um Shell Script.

Entende-se por script qualquer programa escrito em linguagem não com-

pilada ou interpretada, ou seja, executada por um interpretador de comandos, como

o bash, como mostrado em (OLIVEIRA, 2012), sendo esse o interpretador mais

comum que, geralmente vem por padrão nas distribuições GNU/Linux.

Um dos recursos importantes em um script é a variável. Essa é utilizada

em Shell Script e tem uma grande importância no armazenamento de dados e com

isso pode manipulá-los para se atingir um resultado esperado. Esses dados podem

ser números, caracteres ou frases, outras variáveis e até comandos. Conforme

ilustra a Tabela 2.3, para se armazenar um dado em uma variável sem interpretá-

la, deve-se limitar esse conjunto de caracteres com apóstrofos. Atribuir um valor

à uma variável deve-se especificar o número sem delimitação de nenhum símbolo.

Para interpretação dos valores das variáveis usam-se as aspas. Por fim, as crases

são usadas para interpretar um comando e repassar o resultado para uma variável

(JARGAS, 2008).

Outro recurso importante, muito usado em Shell Script é o controle de

fluxo e verificação. Ele tem a função de testar opções e conforme o resultado vai

executando comandos com objetivo de realizar tarefas ou finalizar uma rotina. Um

dos comandos utilizados no controle de fluxo é o if, que funciona, por exemplo,

da seguinte forma: “se o resultado for x, faça tal operação, senão faça outra coisa”.

17

Tabela 2.3: Exemplo de funcionamento de um gatilho.

$ variavel="Meu nome de usuario e $user"$ echo $variavelMeu nome de usuario e ufla

$ variavel=’Meu nome de usuario e $user’$ echo $variavelMeu nome de usuario e $user

$ variavel="Meu diretorio atual e o ‘pwd‘"$ echo $variavelMeu diretorio atual e o /home/ufla

$ variavel=57$ echo $variavel57

Conforme Tabela 2.4, o if testa a seguinte expressão: Se a variável $var

existir, então (then) é mostrada a frase ela existe com o comando echo, se não

(else) é mostrada a frase de que a variável não existe. A opção (-e) é utilizada

para checar a existência da variável.

Tabela 2.4: Exemplo de controle de fluxo.

if [ -e $var ]thenecho ’A variável $var existe.’

elseecho ’A variável $var não existe.’

fi

Os comandos mais utilizados executados em shell script são mostrados na

Tabela 2.5

18

Tabela 2.5: Principais comandos utilizados em shell.

Comando Descriçãoecho Exibe o texto na tela.clear Limpa a tela.sleep Dá uma pausa na tela medida em segundos.exit Finaliza o script.read Captura os dados do usuário e insere em uma variável.case Controle de fluxo que checa várias expressões ao mesmo tempo.for Controle de fluxo que checa uma ou mais expressões.while Controle de fluxo que checa uma ou mais expressões.

2.2 Telegram

Telegram é um aplicativo, que usa a combinação de mensagem instantânea

com e-mail, para envio de mensagens para celulares, sendo uma alternativa ao seu

concorrente Whatsapp. Através dele pode-se enviar mensagens, vídeos, fotos e

arquivos de qualquer tipo (zip, mp3, doc, jpg, etc) para pessoas da sua lista de

contatos, que possuem o Telegram instalado. Ele também permite a criação de

grupos para interação de até duzentas pessoas. É possível utilizar quantidade livre

de dispositivos e funciona tanto em equipamentos móveis quanto em desktops.

Por se tratar de uma aplicação nova, a única fonte de informação técnica

sobre ele é encontrada na página do próprio desenvolvedor do Telegram, e as ava-

liações e testes sobre o produto podem ser encontrados em diversas páginas espa-

lhadas pela Internet.

Na subseção 2.2.1, são apresentadas as características do Telegram, a tec-

nologia empregada no seu desenvolvimento e as plataformas suportadas pelo apli-

cativo. Na subseção 2.2.2, definem-se as diferenças principais entre o Telegram

e o Whatsapp. Na subseção 2.2.3, serão mencionados outros dois mensageiros

instantâneos, o KakaoTalk e o WeChat, com uma pequena descrição sobre suas

respectivas características.

19

2.2.1 Características do Telegram

Segundo a página oficial do Telegram, na seção de perguntas e respostas,

foi desenvolvido um protocolo de dados desde o início, aberto, otimizado e seguro,

preparado para trabalhar com múltiplos servidores, tornando-o confiável e rápido

em qualquer rede (TELEGRAM, 2014a).

Após a descoberta de espionagem de vários países, inclusive o Brasil, de-

nunciada por um ex-técnico de inteligência da Agência Nacional de Segurança

dos Estados Unidos, Edward Snowden, juntamente com as falhas de segurança na

comunicação do Whatsapp, que são publicadas constantemente, geraram descon-

fiança e medo de invasão da privacidade com roubo de informações. Esse fatores

contribuem para busca de novas alternativas.

A promessa do Telegram em focar na segurança e privacidade de comuni-

cação de seus usuários, faz com que naturalmente seja impulsionada a adesão pelo

uso dele (ALVES, 2014), (OLHAR DIGITAL, 2014) e (OTONI, 2014).

Uma matéria publicada na página do GRIS (Grupo de Resposta a Incidente

de Segurança), pertencente ao Departamento de Ciência da Computação da Uni-

versidade Federal do Rio de Janeiro, relatou que um estudante de Ciência da Com-

putação e Matemática da Universidade de Utrecht, na Holanda, Thijs Alkemade,

fez uma descoberta de uma falha grave na criptografia do Whatsapp recentemente.

O aplicativo passou a ter uma falha no momento da implementação dessa cripto-

grafia, pois uma mesma chave é utilizada para codificar o fluxo de entrada e saída

entre o cliente e o servidor do serviço, e caso um cracker1 consiga interceptá-las,

com análise das mensagens poderá decifrá-las e recuperar a informação original

(GRUPO DE RESPOSTA À INCIDENTES DE SEGURANÇA, 2014).

O Telegram é totalmente gratuito, mas possui uma plataforma parcial-

mente livre, sendo apenas sua interface de programação totalmente aberta e do-

1Termo usado para designar o indivíduo que pratica a quebra de um sistema de segurança, deforma ilegal ou sem ética.

20

cumentada. A única informação encontrada sobre esse assunto está na seção de

perguntas e respostas, onde é explicado porque não é tudo desenvolvido em có-

digo aberto. A tradução da resposta em inglês segue abaixo:

Todo o código será liberado eventualmente. Começamos com as par-

tes mais úteis - uma interface de programação de aplicativos bem do-

cumentada, que permite os desenvolvedores criarem novos aplicativos

baseados no Telegram, e clientes de código aberto que podem ser ve-

rificados por especialistas em segurança. No momento estamos nos

concentrando nas coisas em código aberto, que permitem aos desen-

volvedores criarem rapidamente qualquer coisa usando nossa inter-

face de programação. Começamos com Android e Linux, uma vez

que estas plataformas são as mais aberta, e recentemente, publicamos

o código do aplicativo para iOS também. Nós estaremos liberando

mais código eventualmente (TELEGRAM, 2014b).

Por ter sua interface de programação aberta e documentada, isso incenti-

vou vários desenvolvedores ao redor do mundo criarem diversos outros clientes

não oficiais, para serem utilizados com o Telegram em diversas plataformas, como

Linux, Unix, Mac, Android, Windows, Web, etc. (ESPÍRITO LIVRE, 2014b).

As principais características do Telegram são:

- As conversas são encriptadas com o protocolo MTProto, desenvolvido

pela equipe do Telegram;

- O histórico do chat é armazenado nos servidores em nuvem2 do próprio

e pode ser acessado por qualquer quantidade de dispositivos;

- Existe versão para dispositivos móveis, desktop e Web;

- Pode ser enviado nota de voz, fotos, vídeos e todos os tipos de arquivos;

- Pode ser inserido até 200 pessoas por grupo criado;

2É uma tecnologia para guardar arquivos importantes remotamente em um datacenter podendoacessar a qualquer momento, mediante login e senha.

21

- Conversas secretas possuem encriptação3 fim a fim e não são armazenas

em servidores;

- Mensagens em conversas secretas são autodestruídas;

- Existem 2 status para conversas: um sinal de visto significa que a mensa-

gem foi enviada e dois sinais de visto informam que a mensagem foi lida (aberta).

2.2.2 Diferenças entre Telegram e Whatsapp

Apesar de terem um modelo de desenvolvimento diferente, a interface de

usuário é bem parecida e similar, o que facilita a adaptação do usuário ao Telegram.

Outras características que são comuns aos dois: ambos são mensageiros instantâ-

neos em tempo real e utilizam a conexão de Internet para funcionarem (BRESANI,

2014).

Na Figura 2.1 é apresentado um comparativo entre o Telegram e o Whatsapp,

vem ilustrado as características e as vantagens do primeiro sobre o segundo, que fi-

cam bem claros. Até o momento da confecção desse trabalho, essas características

ainda estavam em vigor. O Telegram possui vantagem na otimização da velocidade

de transferência, autodestruição de mensagens secretas, sincronia em nuvem entre

os dispositivos, suporte a todos os tipos de arquivos, interface de programação do

aplicativo aberta e documentada, acesso às mensagens em diversos dispositivos

simultaneamente. Todas essas características são ausentes no Whatsapp.

No quesito de capacidade de forma mensurada, o Telegram tem suporte a

duzentos usuários por grupo, contra cinquenta do Whatsapp. Pode compartilhar

imagens e vídeos de até 1 GB contra 12 MB. Possui suporte para 6 plataformas

(iOS – iPhone e iPad, Android, Windows Phone, MacOS, Windows e GNU/Li-

nux), contra 3 plataformas (iOS - iPhone, Android e Windows Phone). Outra

grande vantagem do Telegram é que este fornece o serviço totalmente gratuito

contra a cobrança de US$ 0,99 (noventa e nove centavos de dólar) cobrados anu-

3É o processo de codificação de dados informáticos onde apenas o destinatário que possua achave (arquivo de código) possa reconhecer.

22

almente, que exige cartão de crédito internacional para efetuar o pagamento. O

Telegram também é livre de publicidade (ESPÍRITO LIVRE, 2014a).

Figura 2.1: Comparação entre Telegram e Whatsapp.

2.2.3 Outros aplicativos similares

Existem outros aplicativos similares ao Telegram e Whatsapp mas são me-

nos conhecidos que esses.

O KakaoTalk é uma aplicação de mensagem instantânea para smartphones

gratuito criado na Coréia do Sul em 2010 com funções livres de texto e chamadas

telefônicas similares ao VoIP com uma base de 140 milhões de usuários e tradu-

zido para 15 idiomas. Ele é suportado por iOS, Android, Bada OS, BlackBerry,

Windows Phone, Nokia Asha e desktop. Esse aplicativo é utilizado por 93% dos

23

usuários de smartphone na Coréia do Sul. Os usuários do KakaoTalk podem com-

partilhar vídeos, fotos, voz, mensagens, localização, link de endereço como tam-

bém informação de contato, não existindo limite de usuários para grupo de bate

papo. A base de usuários no Brasil é pequena e esse aplicativo não é desenvolvido

em código aberto (TERRA, 2014).

O WeChat é um serviço de comunicação por mensagem de texto e voz

móvel desenvolvido na China, lançado em 2011. A aplicação é suportada pelos

sistemas Windows Phone, Symbiam, iPhone, BlackBerry e Android. Em 2013

o WeChat tinha 300 milhões de usuário, sendo 70 milhões fora da China. Ele

oferece mensagem de texto, de voz via push to talk (aperte para falar), mensagem

por broadcast (um para muitos), compartilhamento de vídeos, fotos e localização.

Pode trocar informações com contatos próximos via Bluetooth4, se essa função

estiver ativa e integrada com serviço de rede social pelo Facebook e Tencent QQ

(KURTZ, 2013).

4É uma tecnologia de comunicação sem fio que permite que computadores, smartphones, tabletse afins troquem dados entre si e se conectem a mouses, teclados, fones de ouvido, impressoras eoutros acessórios a partir de ondas de rádio.

24

3 ESTUDO DE CASO

As necessidades apontadas, pela Coordenação Geral de Tecnologia da In-

formação, do Ministério das Comunicações, à Divisão de Redes, eram a continui-

dade e ininterrupção dos serviços, mantendo-os em funcionamento vinte e quatro

horas por dia e sete dias por semana. Essa demanda exigia um monitoramento

mais austero, afim de evitar qualquer falha e alcançar a meta estabelecida. Assim

foi necessário o envolvimento de todos os profissionais da divisão, como coorde-

nador, líder de equipe, analistas e técnicos.

Com a necessidade crescente de monitoramento dos ativos de rede e dos

serviços da Divisão de Redes, do Ministério das Comunicações, juntamente com

a insuficiência de respostas de algumas soluções à essa demanda, o Zabbix acabou

provando sua capacidade, no apoio e continuidade do funcionamento da infraes-

trutura, fornecendo informações precisas para respostas rápidas aos incidentes.

A grande dificuldade para aprovação e adoção do Zabbix como solução de

monitoramento, foi devido às diversas interrupções do processo de implementa-

ção, que sofreu resistência interna de colegas terceirizados ou por ex-gestores de

escalão mais baixo, que acabaram se desligando da função. Interesses técnicos,

comerciais e financeiros pessoais de alguns funcionários aliados a lobbys de for-

necedores sempre barraram o avanço do Software Livre no Governo Federal, sob o

pretexto de que o gratuito não tem suporte ou não é capaz de resolver os problemas

existentes. Essa prática não é novidade e inclusive é debatida segundo (SERPRO,

2005), (CESAR, 2003) e (SANTOS, 2012).

A solução foi viabilizada por determinação da Coordenação Geral de Tec-

nologia da Informação juntamente com a nova coordenação da Divisão de Redes,

que entenderam a condição e a capacidade da aplicação funcionar e se adequar

perfeitamente ao cenário esperado.

25

Também existia um serviço de mensagem curta, o SMS1, que funcionava

após o expediente, enviando mensagens de alerta para o celular, que ficava em

poder do plantonista, exclusivo para esse fim. Essa solução de mensagens ado-

tada inicialmente, foi muito útil, mas existiam problemas na sua utilização, além

de ser um serviço pago. O tamanho da mensagem enviada era insuficiente, pois

suportava o máximo de 140 caracteres, não sendo grande o bastante para a apre-

sentação detalhada do incidente, ou seja, as mensagens não eram intuitivas e nem

esclarecedoras, fazendo com que o plantonista investigasse mais detalhadamente

o problema antes de agir consumindo mais tempo.

O serviço além de pago era limitado em mil mensagens mensais, podendo

estourar o limite ou sobrar crédito dentro do mês de uso, o que dificultava fazer um

controle para economizar e evitar desperdícios. Se por acaso o crédito chegasse ao

fim, tal situação só seria percebida após um incidente sem notificação por SMS,

acarretando desgaste da divisão perante o usuário.

Outra fator limitador dessa solução era o recebimento dos alertas apenas

pelo plantonista do turno, pois era ele quem ficava com o aparelho cadastrado

para receber as mensagens, não havendo maior acompanhamento da situação por

parte da coordenação ou de outros envolvidos, corroborando para a centralização

do conhecimento da informação. Caso duas pessoas recebessem o mesmo alerta,

eram cobradas duas mensagens, ficando inviável o envio para todos do setor. Neste

caso, não havia backup de plantonistas e nem acompanhamento da coordenação.

Como os serviços oferecidos pelo Ministério das Comunicações não po-

deriam ficar fora do ar, seja por qualquer período de tempo, pois atendiam um

público nacional, qualquer indisponibilidade podia trazer prejuízos à imagem da

instituição ou dos programas por ela geridos.

1Short Message Service, que em português significa Serviço de Mensagens Curtas, é um serviçomuito usado para troca de mensagens de textos breves que podem ser enviadas ou recebidas atravésde um aparelho celular.

26

Para melhor atuação da equipe, um monitoramento mais eficiente e uma

resposta mais rápida, foram pensadas outras alternativas, como envio de mensa-

gem por Whatsapp, mas por possuir também limitações, foi escolhido o Telegram

para integração ao Zabbix. A Figura 3.1 mostra-se o esquema de funcionamento

da solução desenvolvida.

Figura 3.1: Esquema de funcionamento da integração do Telegram com o Zabbix.

Na seção 3.1, apresenta-se a configuração necessária, do cliente Telegram,

utilizada no servidor Zabbix. Na seção 3.2, explica-se a estrutura do script para

integração com o Zabbix e a descrição de seu código linha a linha. Na seção 3.3,

27

descreve-se a configuração necessária, feita no Zabbix, para funcionamento da in-

tegração através do script. Na seção 3.4, mostra-se o funcionamento da integração,

no recebimento de mensagens enviadas pelo Telegram.

3.1 Configuração do cliente Telegram

O primeiro passo é fazer a instalação do cliente Telegram no servidor que

usará o serviço. Nesse caso, o servidor Zabbix fará o uso do serviço para envio

de alertas. É preciso então, fazer as configurações desse servidor. Por questões

de segurança e preservação do ambiente de produção, da Divisão de Redes do

Ministério das Comunicações, algumas informações serão modificadas, utilizando

um nome fictício ou até mesmo omitidas, não comprometendo o objetivo desse

trabalho, no quesito da qualidade da informação fornecida para o desenvolvimento

do meio acadêmico.

Inicialmente é preciso preparar o ambiente para a instalação desse cliente,

que fará o uso do servidor de mensagens instantâneas do Telegram, para enviar o

alerta ao grupo ou pessoa alvo da informação.

Seguem abaixo as especificações do ambiente utilizado para instalação do

cliente:

- Servidor com sistema operacional Debian Wheezy;

- Interpretador de comandos Bash;

- Zabbix versão 2.0.8;

- Número de celular dedicado para registro do serviço;

- Script desenvolvido em Shell Script.

Inicialmente é necessária a instalação de algumas bibliotecas para correta

compilação do código fonte e o funcionamento do cliente, já que não existia até

aquele momento, nenhuma aplicação cliente do Telegram disponível no repositório

do Debian para instalação.

28

Foi preciso baixar o código fonte e compilá-lo. Esse trabalho não irá tra-

tar dos detalhes da instalação, pois a instrução encontra-se na página oficial do

Telegram2, onde é explicada toda a sequência de forma ordenada e detalhada,

sendo desnecessária a transcrição dessa operação.

Depois de instalado, foi criado um atalho do cliente no diretório /usr/bin,

facilitando a execução direta, de qualquer lugar do sistema operacional, pois, esse

diretório geralmente já está inserido no caminho (path) especificado no bash do

root. Foi preciso entrar no diretório onde o Telegram foi compilado, executando-

o pela primeira vez, afim de registrar o telefone celular como pré-requisito de uso,

vinculando o número à uma conta do Telegram. Após ser feito esse registro, foi

gerado um arquivo de configuração, criptografado, contendo as informações da

conta, que a aplicação utiliza para se conectar, garantindo a segurança do usuário

que está enviando a mensagem.

O arquivo de configuração gerado pelo registro do serviço, vinculado ao

telefone, também foi mudado de diretório, passando do diretório da compilação,

para o /etc/telegram criado manualmente. Os novos diretórios precisaram ser

especificados ao invocar a aplicação, para que o cliente funcionasse de forma cor-

reta.

A Figura 3.2 ilustra o registro do serviço no servidor. No momento da

confecção desse trabalho, o cliente Telegram já havia sido utilizado e já estava em

operação, por isso o grupo Zabbix já consta na imagem.

Com o cliente instalado, todas as operações possíveis de serem feitas em

um celular, ou em qualquer cliente do Telegram, também podem ser executadas via

linha de comando, no próprio terminal ou via script, para inserir, renomear e re-

mover usuários, como também criar, renomear ou remover grupos, como também,

qualquer operação disponível nesse cliente.

2Disponível em <https://github.com/vysheng/tg>.

29

Figura 3.2: Registro do serviço Telegram.

São mostrados na Figura 3.3 exemplos de comandos disponíveis, invoca-

dos pelo comando help.

Figura 3.3: Tela de ajuda do cliente Telegram.

30

3.2 Script para integração

Para viabilizar a integração do Telegram, foi necessário desenvolver um

script, que fazia a leitura dos parâmetros do Zabbix, montava a mensagem e a

enviava para o cliente da aplicação. Esse cliente, por sua vez, se encarregava

de enviar ao seu servidor externo, via internet, as mensagens a serem entregues

ao grupo informado pela configuração no Zabbix. As pessoas cadastradas nesse

grupo então recebiam as mensagens. Em seguida apresenta-se na Figura 3.4, o

código original conforme encontra-se no servidor e explicando-se a finalidade de

cada linha abaixo com suas respectivas funções.

1 #!/bin/bash23 ############################################################4 # Autor: Rogério Fernandes Pereira #5 # Data: 07/05/2014 Hora: 01:27 #6 # #7 # Script: tg.sh #8 # Função: captar as informações do Zabbix sobre incidentes #9 # e disparar para o serviço do Telegram #

10 # #11 # Copyleft - 2014 / GPLv3 #12 # #13 # Esse script é livre para cópias e modificações. #14 # #15 ############################################################1617 PROCESSO=‘sudo ps ax | grep telegramID | grep -v grep | wc -l‘1819 if [ \$PROCESSO -eq 0 ]; then20 sudo screen -dmS telegramID /usr/bin/telegram -k /etc/telegram/tg-server.pub21 sudo sleep 522 fi2324 PARA=\$125 OBJETO=\$226 DETALHES=\$327 DATAENV=‘date +\%d/\%m/\%Y" as "\%H:\%M:\%S‘28 COMPOSICAO=’ Em ’\$DATAENV’ - OBJETO: ’\$2’ ’\$32930 echo \$COMPOSICAO >> /var/log/zabbix/telegram.log31 sudo screen -S telegramID -X eval "stuff ’msg \${PARA} \${COMPOSICAO}’\015"32 sudo killall -9 telegramID

Figura 3.4: Script de integração do Telegram como Zabbix.

31

Na linha 1, está declarado o shebang3 e nesse caso, ele passa uma refe-

rência ao sistema operacional, avisando que esse script deve ser interpretado pelo

bash, que se encontra no diretório /bin.

Da linha 3 a 15, existe o símbolo de comentário #, que impede o sistema

operacional de interpretar qualquer coisa que venha após ele, pois a única função

é de comentário no script, informando data de criação, hora de criação, nome do

autor, etc.

Na linha 17, é passado para a variável PROCESSO, o resultado de uma ca-

deia de comando, que retorna 0 se o processo telegramID não existir, ou 1 se ele

estiver carregado na memória.

Da linha 19 à linha 22, é onde está a parte mais crítica do script, cabendo

aqui uma discussão à parte. Após pesquisa na forma de passar os parâmetros e exe-

cutar o cliente do Telegram, para envio das mensagens, nada que funcionasse cor-

retamente foi encontrado, nem mesmo na própria página ou fórum oficial da apli-

cação. Muitos testes e simulações foram tentados. Quando se enviava uma men-

sagem qualquer diretamente pelo console, ela era recebida imediatamente, mas

quando se executava pelo script nada acontecia. A conclusão foi que o problema

não estava no cliente, e sim na interação do script com a aplicação. Buscando

recursos nos comandos do GNU/Linux, finalmente o problema foi resolvido. Até

aquele momento, nenhuma publicação na Internet tinha sido encontrada para a

resolução do problema acima citado.

Na linha 19, é feita uma checagem, para saber se o resultado da variá-

vel PROCESSO é igual a 0, ou seja, processo não iniciado, e em caso afirmativo

ou verdadeiro, então irá criar um processo chamado telegramID com o comando

screen e privilégio administrativo. Esse processo contém o cliente Telegram car-

regado com as opções e a chave pública informadas no arquivo tg-server.pub,

localizado em /etc/telegram, mencionado anteriormente.3Também chamado de hashbang, hashpling, poundbang, ou crunchbang, que é comumente

utilizado em linguagens interpretadas.

32

O comando screen é robusto, pois mesmo que a sessão principal falhar,

tudo que está sendo rodado por ele continua funcionando, sem perda de dados. A

falha ocorre somente se a máquina rodando o GNU/Linux falhar. Esse comando

não vem instalado por padrão na distribuição Debian e por isso foi necessário fazê-

lo. As opções -dmS inicia o processo como daemon4 em tela destacada, ou seja,

carregado na memória liberando o terminal atual para outras operações.

Para completar, foi necessário executar o comando sleep com cinco se-

gundos de espera, para dar tempo de carregar o processo na memória. Com a falta

desse recurso nada acontecia, pois não havia o tempo necessário para carregar o

processo, e o disparo da mensagem acontecia antes, executando uma operação

indisponível, gerando um erro imperceptível. O problema foi descoberto após a

depuração utilizada em outro terminal paralelamente.

Na linha 22, é finaliza a condição de verificação. Nas linhas 24, 25 e 26,

são passados os parâmetros do destinatário, do título e dos detalhes da mensagem.

Na linha 27, é montada a cadeia de strings com a data por extenso, afim

de informar o momento que ocorreu a falha ou sua recuperação.

Na linha 28, é feita a composição da mensagem completa a ser disparada

pelo Telegram. É gerado um histórico de operações do Telegram pela linha 30,

armazenando a informação no arquivo telegram.log, com objetivo de fazer de-

puração de erros, ou auditoria e comparações por questões de segurança.

A mensagem é finalmente disparada na linha 31, onde o screen chama o

processo carregado na memória, o telegramID, que recebe a mensagem montada

nas linhas anteriores e a envia para o servidor externo, que se encarrega de entregá-

las ao grupo. Finalmente na linha 32, o processo é removido da memória liberando

espaço.

4Em Unix e outros sistemas operacionais multitarefas, é um acrônimo de Disk And ExecutionMONitor (Monitor de Execução e de Disco). É um programa de computador que roda de formaindependente em segundo plano, ao invés de ser controlado diretamente por um usuário.

33

O script foi nomeado como tg.sh, dando a ele o atributo de execução

com o comando chmod +x, colocando-o no diretório /etc/zabbix/alert.d.

3.3 Configuração da integração

Para fazer essa integração entre Telegram e Zabbix foi necessário fazer

algumas configurações dentro do servidor de monitoramento através da interface

Web de algumas funções disponíveis para esse objetivo.

Figura 3.5: Configuração de mídia.

Foi preciso na seção de mídia do Zabbix, conforme mostrada na Figura 3.5,

fazer as configurações necessárias nos itens “Descrição”, “Tipo”, “Nome script”

e “Ativo”, para posteriormente configurar as outras opções, tornando a integração

completa e funcional.

Figura 3.6: Configuração da mensagem de alerta.

34

O segundo passo, foi configurar as mensagens de alerta na seção de ações

do Zabbix, conforme mostra-se na Figura 3.6. Explicado anteriormente sobre ma-

cros, elas foram utilizadas na composição das mensagens de alertas para incidentes

e recuperação. O significado delas será discutido mais à frente.

Figura 3.7: Regras de disparo dos alertas ao Telegram.

O próximo passo foi configurar as condições para o envio de alertas con-

forme a Figura 3.7. As condições para disparo de alertas precisaram que os inci-

dentes satisfizessem as seguintes condições:

- O ativo ou o sistema não estivesse em manutenção.

- O intervalo de horário entre 20:01 e 07:59 horas, de segunda a sexta-feira.

- O tipo de problema deveria ser um incidente.

- O incidente fosse um desastre ou de alto impacto.

- E os ativos não fizessem parte das delegacias regionais.

Por último a configuração das ações tomadas conforme a Figura 3.8, onde

a mensagem devia ser enviada imediatamente para o usuário Admin do sistema,

através da mídia “Mensagem por Telegram” que chama o script tg.sh. Este, por

sua vez, realiza as tarefas programadas de acordo com a ilustração da Figura 3.4.

35

Figura 3.8: Configuração das ações dos alertas.

3.4 Resultado do envio de alertas

O resultado dessa integração são mensagens enviadas para o celular dos

profissionais inseridos no grupo Zabbix, criado através do cliente Telegram, para

monitoramento da Divisão de Redes do Ministério das Comunicações. As men-

sagens eram apresentadas de acordo com as macros configuradas no exemplo da

Figura 3.6. Na Figura 3.9 é apresentado o resultado dos alertas enviados para o

celular.

Analisando as mensagens apresentadas na Figura 3.9, estudando a integra-

ção entre o script e as macros definidas no Zabbix, seguem os resultados abaixo

para uma melhor compreensão do funcionamento.

As macros utilizadas, apresentadas na Tabela 2.1, mantém as seguintes

relações com o script:

A variável PARA do script recebe o valor de $1 repassado pelo Zabbix

com o valor do destinatário definido em “Ações” da Figura ??, para o usuário

Admin, que envia para o grupo Zabbix. A variável OBJETO do script recebe o valor

do $2 repassado pelo aplicativo com o valor do “Assunto padrão” ou “Assunto

36

Figura 3.9: Resultado do recebimento dos alertas no celular.

da recuperação”, se for incidente ou recuperação respectivamente. O valor de

$3 é repassado com o valor da “Mensagem padrão” ou “Mensagem recuperação”

na mesma situação de incidente ou recuperação similar à variável $2, conforme

mostrado na Figura 3.6.

37

4 CONCLUSÕES

Procurou-se mostrar os requisitos e os processos da instalação e das con-

figurações realizadas para o funcionamento da integração entre o Telegram e o

Zabbix, na Divisão de Redes do Ministério das Comunicações. Antes de ser de-

senvolvida essa solução de integração do Telegram com o Zabbix, os alertas de in-

cidentes eram enviados aos monitores/televisores, que durante o expediente eram

verificados por profissionais da divisão de redes do ministério e por mensagem

curta, para o celular do plantonista fora do expediente.

Após a implementação dessa integração, o serviço de mensagem curta

continuou em funcionamento, mas usado apenas como recurso de emergência com

um celular acoplado ao servidor Zabbix. Em caso de indisponibilidade da rede

interna e impossibilidade de envio de mensagem ao servidor do Telegram, esse

celular enviaria o alerta para o telefone do profissional de plantão por meio de

SMS.

O uso do Telegram possibilitou gerar mensagens de alerta com quantidade

de caracteres bem maiores, ultrapassando a limitação de 140 caracteres existentes

nas mensagens enviadas por SMS. Essa nova situação facilitou a atuação do plan-

tonista e o acompanhamento pela coordenação, que passaram a ter informações

mais precisas e detalhadas.

Com relação ao custo do serviço, a solução adotada não gerava nenhum

gasto adicional, podendo ser utilizada de forma ilimitada. Sendo assim, as chances

de acabar o crédito sem aviso foram eliminadas, não havendo mais riscos de falhas

no envio de mensagens por falta de saldo, prejudicando o monitoramento.

A possibilidade de incluir mais pessoas no processo de monitoramento

simultaneamente, com inserção delas no grupo, sem custo adicional, foi aceita e

elogiada pela coordenação e pela equipe de analistas da divisão de redes. A inte-

gração com o Telegram possibilitou que todos tivessem acesso às mensagens de

alerta, havendo maior mobilidade nas soluções dos incidentes, maior interação en-

38

tre a equipe e o conhecimento compartilhado sobre a situação da infraestrutura.

Isso aumentou a capacidade de resposta à incidentes, com soluções rápidas e in-

tervenções diretas no problema detectado.

Por fim, a questão da segurança dos dados que trafegavam nas mensagens

enviadas, completava o pacote de vantagens fornecidas pelo Telegram. As men-

sagens de alertas geradas pelo Zabbix, possuíam informações reservadas como

endereço de rede, protocolos, localizações e problemas que poderiam revelar vul-

nerabilidades na infraestrutura.

Por possuir uma interface de programação de aplicação open-source bem

documentada, as possibilidades de desenvolvimento de novas funcionalidades para

a integração do Zabbix com o Telegram são muitas. São exemplos dessas possibi-

lidades a inserção direta de usuários no Telegram a partir de usuários existentes no

Zabbix, criação de grupos de alertas, envio de arquivos ou imagens, ou até mesmo

estabelecer um chat secreto com a utilização de scripts. Juntando-se tudo isso

ao processo de documentação e compartilhamento, a popularidade do Telegram

poderá crescer muito e a comunidade de desenvolvedores se fortalecer, abrindo

espaço para novas aplicações voltadas para soluções de monitoramento, ou até

mesmo ser desenvolvido um agente nativo integrado ao Zabbix.

39

REFERÊNCIAS BIBLIOGRÁFICAS

ALVES, P. WhatsApp ou Telegram? Veja qual é o me-lhor aplicativo de mensagens. [S.l.], 2014. Disponível em:<http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2014/02/whatsapp-ou-telegram-veja-qual-e-o-melhor-aplicativo-de-mensagens.html>.Acesso em: 02 de junho de 2014.

BRESANI, B. Telegram um ótimo substituto para o WhatsApp.[S.l.], 2014. Disponível em: <http://www.blogtechsoeasy.com/telegram-um-otimo-substituto-para-o-whatsapp>. Acesso em: 25 dejulho de 2014.

CESAR, R. Software livre: iniciativa privada pressiona Governo. [S.l.], 2003.Disponível em: <http://computerworld.com.br/gestao/2003/01/14/idgnoticia.2006-05-15.4941110110>. Acesso em: 10 de setembro de 2014.

ESPÍRITO LIVRE. Telegram apresenta tabela compara-tiva mostrando suas principais vantagens. [S.l.], 2014.Disponível em: <http://www.revista.espiritolivre.org/telegram-apresenta-tabela-comparativa-mostrando-suas-principais-vantagens>.Acesso em: 25 de julho de 2014.

ESPÍRITO LIVRE. Telegram: um clone opensource doWhatsApp com mensagens que se autodestroem. [S.l.],2014. Disponível em: <http://www.revista.espiritolivre.org/telegram-um-clone-opensource-do-whatsapp-com-mensagens-que-se-autodestroem>.Acesso em: 25 de julho de 2014.

GRUPO DE RESPOSTA À INCIDENTES DE SEGURANÇA. Encontradafalha grave de segurança no Whatsapp. [S.l.], 2014. Disponível em: <http://gris.dcc.ufrj.br/news/encontrada-falha-grave-de-seguranca-no-whatsapp>.Acesso em: 07 de junho de 2014.

JARGAS, A. M. Shell Script Profissional. São Paulo: Novatec, 2008.

KURTZ, J. Saiba o que é e como funciona o WeChat,o aplicativo rival do Whatsapp. [S.l.], 2013. Disponívelem: <http://www.techtudo.com.br/noticias/noticia/2013/08/saiba-o-que-e-e-como-funciona-o-wechat-o-aplicativo-rival-do-whatsapp>.Acesso em: 25 de julho de 2014.

LIMA, J. dos R. Monitoramento de Redes com Zabbix: Monitore a saúde dosservidores e equipamentos de redes. Rio de Janeiro: Brasport, 2014.

40

OLHAR DIGITAL. Falha no WhatsApp permite que qualquer app acesse suasmensagens. [S.l.], 2014. Disponível em: <http://olhardigital.uol.com.br/noticia/40766/40766>. Acesso em: 02 de junho de 2014.

OLIVEIRA, S. L. Gonzaga de. Programação Shell Script. Lavras: UFLA/FAEPE,2012.

OTONI, I. Aplicativos criptografados oferecem alternativa ao Whatsapp.[S.l.], 2014. Disponível em: <http://www.revistaforum.com.br/blog/2014/02/aplicativos-criptografados-oferecem-alternativa-ao-whatsapp>. Acesso em: 25de julho de 2014.

QUEIROZ, R. Tecnologia da Informação, Crescimento Exponencial e aSingularidade. [S.l.], 2010. Disponível em: <http://osventosdaliberdade.blogspot.com.br/2010/06/tecnologia-da-informacao-crescimento.html>. Acesso em: 25 dejulho de 2014.

SANTOS, E. A Verdadeira defesa do Software Livre. [S.l.],2012. Disponível em: <http://www.eduardosan.com/2012/05/30/a-verdadeira-defesa-do-software-livre>. Acesso em: 10 de setembro de2014.

SERPRO. Lobbies travam software livre, diz Amadeu. [S.l.], 2005. Disponível em:<http://www4.serpro.gov.br/noticias-antigas/noticias-2005-1/20050916_01>.Acesso em: 10 de setembro de 2014.

TELEGRAM. Who are the people behind Telegram? [S.l.], 2014. Disponível em:<https://telegram.org/faq#q-who-are-the-people-behind-telegram>. Acesso em:2 de junho de 2014.

TELEGRAM. Why not open source everything? [S.l.], 2014. Disponível em:<https://telegram.org/faq#q-why-not-open-source-everything>. Acesso em: 10de junho de 2014.

TERRA. Gigante de tecnologia pode surgir com fusão na Coreiado Sul. [S.l.], 2014. Disponível em: <http://tecnologia.terra.com.br/negocios-e-ti/gigante-de-tecnologia-pode-surgir-com-fusao-na-coreia-do-sul,cc2d7049d4a36410VgnVCM3000009af154d0RCRD.html>. Acesso em: 25 dejulho de 2014.