Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Aprenda inglês de uma vez por todas

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Mensagens Jabber via linha de comando (ideal para servidores de rede)

Colaboração: João Eriberto Mota Filho

Data de Publicação: 07 de março de 2011

Ontem tive a necessidade de fazer um script que provesse comunicação comigo, informando a situação de um servidor. A minha primeira ideia foi o envio de um e-mail. Mas depois pensei: poderia ser jabber! Isso faria a mensagem pipocar na tela, quando ocorresse um evento que necessite de atenção urgente. Então, fiz um $ apt-cache search jabber terminal e apareceu, dentre outros, o sendxmpp. Com ele, foi fácil a implementação do meu desejo tecnológico. A manpage é simples e clara.

A instalação e a configuração se deu como narrarei agora. Primeiro, instalei o sendxmpp:

  # apt-get install sendxmpp

Depois, dentro do usuário root, que iria executar a tarefa agendada que dispararia o script, criei um arquivo chamado /root/.sendxmpprc, com permissão 400 (obrigatório) com o seguinte conteúdo:

  nome_do_usuario@servidor.jabber   minha_senha

No meu caso, tenho um servidor jabber aqui na minha rede. Se quiser montar um igual, siga esta artigo: http://bit.ly/jabber_sasl_tls. Mas você poderá usar qualquer servidor. Sugiro o jabber-br.org. Veja detalhes em https://jabber-br.org. No meu caso, o nome de usuário foi o nome do servidor (pegasus).

Depois disso, considerando o uso de TLS para dar mais segurança (opção -t), a linha de comando foi algo assim:

  echo Olá | sendxmpp -t destinatario1@servidor.jabber destinatario2@jabber.outro.servidor

No caso mostrado, a palavra Olá será enviada para dois destinatários diferentes.

Só para que fique bem claro, a seguir, um exemplo para o alerta sobre problemas com um servidor Squid:

  # verifica problemas no log cache do squid a cada 10 min
  # colocar no cron como */10  8-18  *  *  1-5
  #
  # by eriberto - 2011
  
  TEMPO=$(date --date '1 minute ago' '+%Y:%H:%M' | cut -c 1-9)
  
  cat /var/log/squid/cache.log | grep $TEMPO | egrep '(filedescriptors|lifetime|failure)' > /tmp/squidcon2
  
  if [ -s /tmp/squidcon2 ]
  then
  echo -e "SQUID - OCORRENCIAS IRREGULARES \n\n$(cat /tmp/squidcon2)" | \
  sendxmpp -t eriberto@servidor.jabber
  fi

O script mostrado deve ser colocado no cron e irá verificar a situação do log cache do Squid a cada 10 minutos. Caso ocorra algum problema que possa paralisar a rede, será enviada uma mensagem para o administrador via Jabber. Veja um exemplo a seguir:

http://www.eriberto.pro.br/blog/wp-content/uploads/2011/03/pegasusjabber.jpg

Bem, é isso. Divirta-se!

Esta dica foi originalmente publicada, pelo seu autor, em http://www.eriberto.pro.br/blog, em 02 mar. 2011. O seu twitter é http://twitter.com/eribertomota

Veja a relação completa dos artigos de João Eriberto Mota Filho

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 3.04/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (919 votos)

Opinião dos Leitores

Luiz Agostinho
11 Mar 2011, 09:08
Opa,

Para aqueles que estiverem encontrando o erro abaixo ou parecido, basta atualizar o XML::Stream para a versão 1.23, aqui no Ubuntu 10.04 eu atualizei pelo cpan (install XML::Stream):

Can't use an undefined value as a HASH reference at /usr/share/perl5/XML/Stream.pm line 1165.

Abraço e valeu pela dica!
junior
09 Mar 2011, 11:31
Este comando funciona em windows ou linux somente?
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script
Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Objective-C Fundamental