quarta-feira, 30 de setembro de 2009

Nagios Web Config funcionando com Nagios 3.2.0

Para quem ainda não conhece, o Nagios Web Config é uma excelente ferramenta que permite configurar o Nagios através do browser, tornando essa tarefa muito mais rápida e agradável.

Já utilizei o mesmo inúmeras vezes, só que hoje precisei instalá-lo na última versão do Nagios (3.2.0 de 12 de agosto de 2009) e me deparei com a seguinte situação: a partir desse release, o Nagios sofreu algumas mudanças na interface web, o que fez com que parte do tutorial de instalação do Nagios Web Config não correspondesse a nova realidade (especificamente no que diz respeito a alteração do arquivo side.html).

Resolvi então adaptar o mesmo a nova estrutura e fiz contato com o desenvolvedor para que as alterações sejam adicionadas na próxima versão do software(que não é atualizado desde 2006) .Mas, enquanto isso não acontece, se você precisar instalar o Nagios Web Config baixe o arquivo side.php atualizado para o Nagios 3.2.0 aqui.


Leia também:


quarta-feira, 23 de setembro de 2009

Squid e webservers com autenticação NTLM


Outra situação envolvendo o Squid com a qual me deparei foi um problema de autenticação em um determinado website.

Foi observado o seguinte:
  • ao tentar abrir uma página desse site sem fazer uso do Squid, uma janela para autenticação do usuário era exibida, e com isso era possível logar e acessar o mesmo perfeitamente.
  • Ao tentar abrir a mesma página, porém usando o Squid, a janela de autenticação não era exibida, fazendo com que automaticamente o site redirecionasse a navegação para a página de acesso negado.
Depois de muitas pesquisas, visualizações de logs e vários testes com tcpdump, resolvi acessar a página usando o lynx e percebi que a mesma enviava um header que não podia ser processado (Invalid header 'WWW-Authenticate: NTLM'). Pura sorte minha, pois pesquisando por esse problema percebi que o que acontecia no Squid era exatamente o mesmo.

A questão é que o Squid só possui o suporte para autenticação em webservers com NTLM a partir das versões 3.1 (beta) ou 2.6. Como a versão que estava em uso era a 3.0, tal operação não podia ser realizada.

Nesse caso só restou fazer com o que acesso ao site fosse realizado por fora do proxy, usando ferramentas como iptables e o protocolo wpad, mas isso já é assunto para um outro post.

Fica então a dica, e espero que isso ajude outras pessoas a não perderem o tempo que perdi com tal situação.

Squid e Windows Live Messenger 2009


Há algum tempo a Microsoft começou a obrigar os usuários do MSN Messenger (ou Windows Live Messenger) a atualizar seus softwares para a última versão, caso contrário os mesmos não poderiam mais logar no serviço.

Isso acabou gerando uma situação bem desagradável: a última versão do Windows Live Messenger 2009 passou a não funcionar mais com o Squid (enquanto as versões 8.x continuavam conectando perfeitamente).

Depois de muitas pesquisas e tentativas (seguindo inclusive informações do suporte da MS), finalmente encontrei a solução na FAQ do próprio Squid, o que mais uma vez demonstra que normalmente a solução mais simples é a mais correta.

Foi necessário somente adicionar as seguintes linhas ao arquivo /etc/squid/squid.conf :
acl msn urlpath_regex -i gateway.dll
acl msnd dstdomain messenger.msn.com gateway.messenger.hotmail.com
acl msn1 req_mime_type application/x-msn-messenger

http_access allow msnd
http_access allow msn
http_access allow msn1

Obviamente é necessário colocar as permissões (http_access) na ordem correta no seu arquivo de configuração, já que o Squid funciona por ordem de precedência das regras. Mantive também as regras antigas, mas só por precaução. Futuramente irei removê-las e atualizarei esse post com o resultado.

A diferença básica com relação as regras anteriores é que não estava usando uma acl que avaliava o mime type, o que parece ser a grande sacada para o uso do MSN.

UPDATE 25/09/09: Para resolver o problema de não carregar a lista de contatos, basta configurar que a URL contacts.msn.com e seus subdomínios possa ser acessada sem autenticação.

sexta-feira, 18 de setembro de 2009

Post-LA-ng - o início de um novo projeto

Algo que sempre sinto falta quando faço uma nova instalação de um servidor de correio eletrônico é a possibilidade de permitir que o administrador do mesmo possa pesquisar nos logs de e-mails de forma simples e eficaz. Já procurei várias ferramentas, mas não encontrei nada que atendesse minhas expectativas.

Pois parece que essa insatisfação é compartilhada com muitas outras pessoas, pois essa semana fui procurado pelo Fábio Luiz, que me apresentou ao software Post-LA (software para geração de relatórios e análise de logs do Postfix) e me convidou para dar sequência ao projeto.

Analisando o mesmo percebi que ele é bastante interessante, mas que ainda existe muito para ser melhorado e explorado. Então, percebemos que o interessante mesmo seria pegar a idéia inicial do Post-LA e fazer um fork avançado do mesmo, que acabei batizando de Post-LA-ng (nomes criativos para projetos nunca foram o meu forte).

E parece que iniciamos já com o pé direito, pois o Post-LA-ng já nasce com uma equipe de peso. Contamos com o Fábio Luiz, com o Leandro Mendes, com o Reinaldo de Carvalho (que irá desenvolver o parser em Python), com o Henrique Bueno (desenvolvedor do Post-LA original) e também com a ajuda da equipe de desenvolvimento da Propus, que deverá cuidar da interface web da aplicação (talvez usando Django).

Algumas features planejadas para as primeiras versões:
  • Parser dos logs em "tempo real" com armazenamento em banco de dados (MySQL ou Postgres - a definir);
  • Interface web para geração de relatórios com filtros e ordenamento pelos campos (remetente, destinatário, data, etc..);
  • Geração de gráficos e estatísticas (maiores remetentes, maiores destinatários, maiores mensagens, entre outros);
A expectativa é já ter em algumas semanas uma primeira versão funcional, com recursos básicos de pesquisa.

Aguardem mais notícias e sigam acompanhando o projeto na página do SourceForge. E fiquem de olho porque o projeto promete !

sábado, 12 de setembro de 2009

Utilizando o Postfix Quota Reject 2.0

Implementar o Postfix Quota Reject em um servidor com Postfix + Cyrus/Courier é uma tarefa bastante simples e que agrega muito ao serviço de correio.

O PQR é composto de 2 scripts Perl que rodam como policy daemons no Postfix. Existe uma versão para Cyrus e outra para Courier, mas ambas funcionam de forma análoga. O projeto é bem documentado, e o tarball vem com um pdf que explica mais sobre o software.

Instalando o PQR

Para começar baixe o .tar.gz do PQR e abra-o em um diretório ( por exemplo /usr/local/pqr ). É preciso dar permissão de leitura e de execução nesse diretório e nos scripts para o usuário que for rodar os daemons ( nesse caso, vou usar o usuário vmail ).

Configurando o Postfix

Arquivo /etc/postfix/master.cf:

Adicione as seguintes linhas no arquivo master.cf:
127.0.0.1:2222 inet n n n - 0 spawn user=vmail argv=/usr/local/pqr/postfix-qreject-frontales.pl
127.0.0.1:3333 inet n n n - 0 spawn user=vmail argv=/usr/local/pqr/postfix-qreject-buzones-courier.pl

Se você for usar cyrus, troque o script postfix-qreject-buzones-courier.pl pelo script postfix-qreject-buzones-cyrus.pl.

E não esqueça: é preciso que o usuário que rodará os scripts (configurado no master.cf) tenha permissão de leitura e execução dos mesmos, caso contrário os daemons não serão carregados.

Arquivo de classe de restrição (/etc/postfix/qreject):

É necessário criar um arquivo com os domínios que serão consultados pelo PQR. O conteúdo do arquivo deve ser algo como:
[root@mailserver /etc/postfix]# cat qreject
seudominio.com.br pqr

Após a criação ou modificação desse arquivo, gere a tabela hash com o comando postmap /etc/postfix/qreject.

Explicando de forma bem simples, esse arquivo (juntamente com as demais configurações) garante que qualquer e-mail enviado para o domínio seudominio.com.br deverá consultar a classe de restrição pqr, que será criada no arquivo /etc/postfix/main.cf e que evocará os scripts do Postfix Quota Reject.

Arquivo /etc/postfix/main.cf:
# Classe do pqr
pqr = check_policy_service inet:127.0.0.1:2222

smtpd_restriction_classes = pqr # caso já existam outras classes, basta adicionar a classe pqr a lista

smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
check_recipient_access hash:/etc/postfix/qreject,
...

smtpd_end_of_data_restrictions = check_policy_service inet:127.0.0.1:2222

Criando o banco de dados do PQR


Antes de continuar, é preciso criar o banco de dados do PQR no servidor MySQL.

Para isso crie um database (com nome de qreject, por exemplo) e um usuário (novamente qreject) que tenha permissão total nesse banco. Como não é o objetivo desse post, não irei entrar nos detalhes dessas operações, supondo que o leitor saiba como efetuar tais tarefas.

Depois de criados adicione os dados do script qreject.sql que vem com o tarball do PQR nesse novo DB. Isso pode ser feito com o seguinte comando (logado como root) :
mysql -p -D qreject < /usr/local/pqr/qreject.sql

Arquivo /usr/local/pqr/postfix-qreject-frontales.pl
(obs. do Allan Carvalho)

Abra o arquivo /usr/local/pqr/postfix-qreject-frontales.pl e altere as variáveis do banco de dados, com os dados do seu servidor.

No meu exemplo, tenho o seguinte:
our $mysql_server = "127.0.0.1";
our $mysql_port = 3306;
our $database = "qreject";
our $usu_mysql = "qreject";
our $clave_mysql = "password";

Inserção de usuários no DB


Como já explanado em meu post anterior, o mais trabalhoso na configuração do PQR é a necessidade de cadastrar no banco de dados cada conta que deverá ser verificada (o que por outro lado também torna a ferramenta mais flexível, pois permite que você verifique somente as contas desejadas).

Para facilitar essa tarefa (pelo menos nos casos onde todas as contas do servidor devem ser consultadas), adaptei alguns scripts (baseados nos originais sugeridos por Egoitz Aurrekoetxea Aurre, desenvolvedor do Postfix Quota Reject) e os mesmos podem ser baixados aqui. É bem provável que sejam necessárias pequenas adaptações para fazê-los funcionarem no seu ambiente, mas nada que seja complexo.

DICA: caso existam contas com quota ilimitada (ou sem quota), não adicione estas no DB, pois o sistema irá negar todas as mensagens destinadas as mesmas por overquota (experiência própria).

Concluindo

O PQR é uma ferramenta eficiente que permite o bloqueio de mensagens destinadas a usuários com caixas postais lotadas diretamente no SMTP. Tal abordagem além de não gerar tráfego desnecessário, reduz as filas no seu servidor e garante que o remetente tenha consciência de que a mensagem não foi entregue logo após enviá-la, o que em muitos casos é algo fundamental. Sua instalação é simples e sua performance é muito boa, o que me faz recomendar sua instalação sem receios em qualquer servidor que necessite desse recurso.


Leia também:Link

sexta-feira, 11 de setembro de 2009

Lançado o RC1 do servidor XMPP ejabberd 2.1.0

Três semanas após o lançamento do beta2, acaba de ser liberado o RC1 do servidor XMPP ejabberd 2.1.0.

A nova release traz vários bugfixes, melhorias nas traduções e alguns novos recursos em relação ao beta2.

Faça o download da versão e ajude a testar o software. Se não houver mais nenhum bug crítico, a versão final deverá ser liberada no fim da próxima semana.

Leia a notícia oficial aqui.


Leia também:

quinta-feira, 10 de setembro de 2009

Lançado o Postfix Quota Reject 2.0

No início dessa semana foi disponibilizada a versão 2.0 do Postfix Quota Reject. O PQR é um policy daemon do Postfix que permite a rejeição diretamente no SMTP de mensagens enviadas para caixas postais que estejam lotadas (consultando em tempo real o status da quota).

Já baixei a nova versão e estou testando-a. A configuração foi muito simples, mas encontrei uma situação que parece "engessar" a ferramenta: a obrigatoriedade de cadastramento das contas que serão consultadas pela ferramenta em um DB. Por isso já entrei em contato com o desenvolvedor pra esclarecer essa questão e sugerir a criação de uma feature que permita consultar todas as contas de um servidor, sem necessidade de uso do DB.

Estou ainda no início dos testes, mas assim que tiver mais dados farei um post completo sobre a ferramenta.


Leia também:

segunda-feira, 7 de setembro de 2009

Pidgin 2.6.2

Sei que hoje é feriadão, mas não poderia deixar de postar essa dica rápida:

Saiu o Pidgin 2.6.2. ChangeLog aqui e pacotes para Ubuntu (9.04) aqui.

terça-feira, 1 de setembro de 2009

Lançado o KDE 4.3.1


Passado quase um mês do lançamento do KDE 4.3.0, a versão 4.3.1 acaba de ser liberada.

A nova versão é um release de bugfixes, traduções e manutenção. Ou como informado no próprio site do KDE, é um update mensal do KDE 4.3 (o que pode vir a ser algo interessante). Apesar de não trazer novos recursos e ferramentas, a atualização é recomendada. Leia o anúncio oficial ou o ChangeLog completo.

Se você for usuário de Ubuntu 9.04 e suas variações (Edubuntu, Xubuntu, Kubuntu), saiba que os pacotes para a nova versão já estão disponíveis. Para instalá-los adicione a seguinte linha a seus repositórios (/etc/apt/sources.list):
  • deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu jaunty main
Depois de adicionar o novo repositório basta rodar um apt-get update && apt-get dist-upgrade. Se preferir, utilize as ferramentas gráficas (adept updater ou equivalente) para realizar a operação.

Boa sorte ;-)

quinta-feira, 27 de agosto de 2009

"Resposta" do desenvolvedor do plugin Java-monitor do Openfire

Hoje recebi o seguinte comentário do desenvolvedor do plugin Java-monitor, com relação a meu post sobre o mesmo:

Dear Marcelo,

I just read your comment on my Java-monitor. I agree that many people will be put off by the fact that we collect the data centrally.

For the people who like and use Java-monitor it this is the whole point, though. :) No need to set up a separate monitoring server and spend time on that. Ultimately, it is a choice between convenience and control.

For you, who has the experience and time to set up a Zabbix or Nagios server, that is probably the better choice. It allows you to customise the monitoring in a way that Java-monitor does not offer.

Best of luck with monitoring your servers. If you have any tips about what to monitor in a JVM or an Openfire server, I would love to hear from you. :-)

Kees Jan, operator of Java-monitor

PS. I posted a link-back and some further comments at http://java-monitor.com/forum/showthread.php?t=512

Li a "resposta" e também o post no fórum e só tenho a dizer que apesar de não gostar do modelo adotado pelo plugin acredito que o mesmo possa atender muita gente que talvez não tenha as mesmas preocupações que tenho e a disponibilidade de usar ferramentas próprias para tarefa.

Com relação ao argumento de que me importo em manter meus dados de monitoração fechados, mas não me incomoda manter meus posts num serviço de Blogs (sobre o qual não tenho controle direto), acredito que a importância dos dados e da disponibilidade do monitoramento dos meus serviços e de nossos clientes seja mais relevante do que o meu blog, já que este último é só um hobby. Além disso, creio que não faria muita diferença (do meu ponto de vista), postar aqui no Blogger ou num servidor próprio que rodasse WordPress, por exemplo. O meu objetivo seria atingido de qualquer maneira.

Vou tentar contatar Kees Jan e adicioná-lo na minha conta Jabber.org, pois parece que temos muitas idéias pra trocar e discutir.

;-)


Leia também:

terça-feira, 25 de agosto de 2009

Nova versão do Dspam a caminho

Se tudo ocorrer como planejado, parece que até o final do mês de setembro será lançada a primeira versão do Dspam (3.9.0) desde que o mesmo voltou para a comunidade.

Mas segundo informações de Ion-Mihai Tectu, um dos novos desenvolvedores, a versão 3.9.0 não irá trazer nenhum novo recurso. Segundo ele, essa versão servirá para corrigir uma série de bugs encontrados, melhorar a performance do software e adaptá-lo ao novo modelo de desenvolvimento.

E mais, a expectativa é que em torno de duas semanas após o lançamento da versão 3.9.0, a versão 3.9.1 seja disponibilizada. A versão 3.9.1 terá seu foco na melhoria do suporte a localização da interface web do Dspam, um aspecto desse software que, do meu ponto de vista, nunca recebeu a atenção necessária.

Com base nessas informações podemos esperar por novas features somente a partir da versão 3.9.2, o que não diminiu a importância da realização dos upgrades assim que as novas versões forem sendo lançadas (eu diria que pelo menos o upgrade para a versão 3.9.0 é bastante recomendado).

O Dspam 3.9.0 beta1 está disponível para download e já estou testando-o há vários dias sendo que o mesmo está funcionando perfeitamente. Também segundo informações de Ion, o beta2 estará disponível ainda essa semana com muitas correções em relação ao beta1.


Leia também:

KDE 4.3 no (K)Ubuntu 9.04 - Old news


São notícias velhas, mas como muita gente chega no meu blog procurando informações sobre como instalar o KDE 4.2.3 no (K)Ubuntu 9.04 resolvi lançar esse post "atualizado". ;-)

Os pacotes para a versão 4.3 do KDE estão disponíveis para o Jaunty Jackalope desde o início desse mês. Para instalá-los adicione a seguinte linha a seus repositórios (/etc/apt/sources.list):

deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu jaunty main

Depois de adicionar o novo repositório basta rodar um apt-get update && apt-get dist-upgrade. Se preferir, utilize as ferramentas gráficas (adept updater ou equivalente) para realizar a operação.

Os pacotes ainda não são oficiais. O KDE 4.3 será parte do Kubuntu Karmic (9.10) que será lançado no próximo mês de outubro.

Via kubuntu.org.

segunda-feira, 24 de agosto de 2009

M-Link no Jabber.org

A troca do servidor XMPP do domínio Jabber.org de ejabberd (software livre) para M-Link (que é um projeto comercial) me deixou preocupado. Encontrei o stpeter (Peter Saint-Andre, diretor executivo da XMPP Standards Foundation (XSF)) online e conversei com ele para tentar esclarecer minhas dúvidas sobre o ocorrido.

Questionado sobre a troca realizada, stpeter esclareceu que o Jabber.org ainda está rodando sobre ejabberd e que eles ainda estão planejando o processo de migração, que deve ocorrer no final de setembro.

Com relação a escolha do M-Link, ele explicou que a última troca de servidor realizada (jabberd 1.x para ejabberd em 2006) foi feita de uma maneira não muito aberta. Então, para tornar o processo público, foi criado o Server RFP, que foi atendido somente por dois projetos: M-Link e Tigase. O projeto ejabberd não enviou proposta (talvez os desenvolvedores estivessem envolvidos demais no lançamento da versão 2.1). E, como todos já sabem, o escolhido entre os dois projetos foi o M-Link, que de um ponto de vista FLOSS é um retrocesso pois trata-se de um projeto comercial.

Apesar desse "retrocesso" (na minha opinião), é preciso seguir em frente, pois como o próprio stpeter disse, quem sabe daqui há dois anos o escolhido não seja o Tigade ou o Prosody (ou até mesmo o ejabberd novamente).

Depois de esclarecida a questão confesso que fiquei menos incomodado e aproveito para desejar boa sorte ao Jabber.org nesse nova etapa. E já que estamos falando de um novo servidor, solicitei a stpeter que quando o serviço for migrado e estiver funcional ele escreva um post com suas impressões sobre o mesmo.

PS: aproveitei a oportunidade e pedi para que a URL de status do serviço fosse reativada, e ele me garantiu que eles já estão trabalhando nisso também.


Leia também:

Blog da Propus

Depois de contas no Twitter e no Identi.ca, agora a Propus passa a contar também com um Blog.

No estilo planet, o blog da Propus se propõe a agregar os melhores posts dos blogs de seus colaboradores, além de contar eventualmente com um conteúdo exclusivo e direcionado.

Então, se você acompanha meu blog, você está convidado a acompanhar também o Blog da Propus e ficar ligado nas mais variadas notícias e informações sobre Software Livre e Open Source.

domingo, 23 de agosto de 2009

Postfix Quota Reject

Quem acompanha meu blog deve ter lido em um dos meus últimos posts sobre a necessidade que tinha de enviar e-mails "em tempo real" informando ao remetente sobre problemas de over quota na caixa postal do destinatário de seu e-mail.

Depois de tentar usar o Postfix com patch VDA para tal realizar tarefa (sem obter sucesso), pesquisei mais e parece que encontrei a ferramenta que vai resolver a situação. A mesma chama-se Postfix quota reject (UPDATE 10/09/2009: a pedido do desenvolvedor já atualizei o link desse post, mas a versão 1.0 está disponível aqui).

O Postfix quota reject é um policy daemon que funciona de forma muito mais eficiente e segura do que o sistema de bounce do patch VDA. Ele barra o e-mail diretamente na porta SMTP, evitando que a mensagem seja recebida, fazendo assim com que o servidor que originou o e-mail gere o bounce para o remetente. Tal abordagem além de economizar banda e processamento ainda reduz a chance de problemas de DoS.

No site do projeto encontrei a versão 1.0 que ainda não atende a minha necessidade, mas ao pesquisar mais encontrei posts falando de uma versão 2.0 que trabalha com maildir usando Cyrus ou Courier.

Entrei então em contato com o desenvolvedor (Egoitz Aurrekoetxea) que foi muito simpático e atencioso, e me prometeu que assim que voltar das férias em setembro irá me enviar o software (que será oficialmente lançado em outubro) para que eu já vá utilizando e possa dar meu feedback .

Então por enquanto só resta aguardar até setembro para colocar o software em produção. Assim que o mesmo estiver instalado postarei minha impressões sobre a ferramenta.


Leia também:

Monitorando a temperatura e fans com o MRTG

Todo ano quando chega o verão me deparo com uma preocupação: a temperatura do meu computador.

Depois de anos "sofrendo" com isso, conversando com o Alberto recebi uma sugestão simples mas que nunca tinha pensado em utilizar: monitorar a temperatura do micro com o MRTG.

Com essa ideia na cabeça, cheguei em casa e me dedique a implementação.

Para começar, instalei o pacote lm_sensors e configurei o computador para ler os sensores, com o comando sensors-detect. Após responder SIM a todas as perguntas, testei se a leitura dos sensores estava funcionando com o comando sensors. A saída recebida foi:
root@hellboy:/# sensors
it8718-isa-0680
Adapter: ISA adapter
in0: +1.15 V (min = +0.00 V, max = +4.08 V)
in1: +2.13 V (min = +0.00 V, max = +4.08 V)
in2: +3.34 V (min = +0.00 V, max = +4.08 V)
in3: +2.98 V (min = +0.00 V, max = +4.08 V)
in4: +3.06 V (min = +0.00 V, max = +4.08 V)
in5: +1.52 V (min = +0.00 V, max = +4.08 V)
in6: +0.00 V (min = +0.00 V, max = +4.08 V) ALARM
in7: +2.96 V (min = +0.00 V, max = +4.08 V)
in8: +3.23 V
fan1: 1027 RPM (min = 0 RPM)
fan2: 0 RPM (min = 0 RPM)
temp1: +18.0°C (low = -1.0°C, high = +127.0°C) sensor = thermal diode
temp2: +25.0°C (low = -1.0°C, high = +127.0°C) sensor = thermistor
temp3: -128.0°C (low = -1.0°C, high = +127.0°C) sensor = disabled
cpu0_vid: +0.000 V

coretemp-isa-0000
Adapter: ISA adapter
Core 0: +36.0°C (high = +86.0°C, crit = +100.0°C)

coretemp-isa-0001
Adapter: ISA adapter
Core 1: +35.0°C (high = +86.0°C, crit = +100.0°C)
De posse dessa informação, comecei a criar os scripts de leitura das temperaturas dos processadores e da velocidade dos fans.

Como tenho 2 processadores, tenho de ler a temperatura do Core 0 e do Core 1. Para isso estou usando o seguinte script (/usr/local/sbin/cputemp.sh):
#!/bin/bash
echo "`/usr/bin/sensors | grep Core\ 0 | awk '{print " " $3}' | cut -c 3-6 `"
echo "`/usr/bin/sensors | grep Core\ 1 | awk '{print " " $3}' | cut -c 3-6 `"
Exemplo da saída do script:
root@hellboy:/# /usr/local/sbin/cputemp.sh
37.0
36.0
Da mesma maneira, tenho 2 fans. Assim, para ler a rotação dos mesmos estou usando o seguinte script (/usr/local/sbin/fans.sh):
#!/bin/bash
echo "`/usr/bin/sensors | grep fan1 | awk '{print " " $2}' | cut -c 2-5 `"
echo "`/usr/bin/sensors | grep fan2 | awk '{print " " $2}' | cut -c 2-5 `"
Exemplo da saída do script:
root@hellboy:/# /usr/local/sbin/fan.sh
1025
0
Esses scripts não são genéricos, e provavelmente terão de ser adaptados para a realidade de cada computador, pois dependem da versão do lm_sensors instalada e de como seus dispositivos serão detectados.

Depois de verificar que os scripts estão funcionando é hora de instalar o MRTG e o Apache (para poder visualizar os gráficos no browser). No meu caso, como uso Ubuntu, rodar apt-get install mrtg apache2 é o suficiente. Depois de instalados, é necessário criar a pasta /var/www/mrtg.

Edite então o arquivo /etc/mrtg.cfg colocando no mesmo o seguinte conteúdo:
WorkDir: /var/www/mrtg
Language: brazilian

Target[fan]: `/usr/local/sbin/fan.sh`
Title[fan]:"Coolers"
PageTop[fan]:

Coolers


Options[fan]: growright,gauge,noinfo,unknaszero
YLegend[fan]: RPM
ShortLegend[fan]: RPM
MaxBytes[fan]: 8000
Legend1[fan]: Fan1
Legend2[fan]: Fan2
LegendI[fan]: Fan1
LegendO[fan]: Fan2

Target[temp]: `/usr/local/sbin/cputemp.sh`
Title[temp]:"Temperatura da CPU/MB"
PageTop[temp]:

Temperatura CPU/MB


Options[temp]: growright,gauge,noinfo,unknaszero
YLegend[temp]: Graus Celsius
ShortLegend[temp]: Graus
MaxBytes[temp]: 90
Legend1[temp]: Core0
Legend2[temp]: Core1
LegendI[temp]: Core0
LegendO[temp]: Core1

Como uso Ubuntu, o MRTG por padrão já roda no cron a cada 5 minutos. Se não for seu caso, basta criar o arquivo /etc/cron.d/mrtg, com o seguinte conteúdo:
*/5 * * * * root if [ ! -d /var/lock/mrtg ]; then mkdir /var/lock/mrtg; fi; if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg.cfg 2>&1 | tee -a /var/log/mrtg/mrtg.log ; fi
Para finalizar, crie um index.html para sua página, o que irá facilitar a visualização dos gráficos. Para isso rode o comando indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html.

Finalmente, após tudo instalado e configurado, aponte seu browser para http://localhost/mrtg para acompanhar os gráficos.



Boa monitoração. :-)

PS: Baixe os scripts e arquivos de configuração aqui.

sexta-feira, 21 de agosto de 2009

Lançado o beta 2 do servidor XMPP ejabberd 2.1.0

Alguns dias depois do lançamento do ejabberd 2.1.0-beta1, os desenvolvedores acabam de lançar a versão beta2.

Cheio de novos recursos e melhorias, a versão 2.1.0 promete tornar o ejabberd um servidor XMPP ainda mais competitivo (é sempre bom lembrar que o ejabberd foi o servidor utilizado pelo Jabber.org por muito tempo).

As mudanças do beta2 para o beta1 são:
  • Adição de um servidor STUN.
  • Atualização de arquivos de tradução de várias linguagens (entre elas o pt_BR).
  • Correções no PubSub
  • Melhorias no MUC
  • E além disso, como de costume, foram corrigidos vários bugs
A expectativa de lançamento da versão final ainda é para o final do mês. Se você quiser ajudar a testar a nova versão, baixe os fontes aqui.


Leia também:

Jabber.org altera seu servidor XMPP

Depois de quase 3 anos utilizando o servidor XMPP ejabberd, a Jabber.org anunciou no último dia 12 de agosto que passará a utilizar o servidor M-Link da Isode pelo próximos dois anos pelo menos.

Pelo menos duas coisas me incomodaram muito nessa troca:
  • O M-Link não parece ser FLOSS. Se for, não achei onde baixar os sources (se é que estão disponíveis).
  • O M-Link usa um LDAP próprio, e parece não ser integrável com outros servidores LDAP, como o OpenLDAP, por exemplo.
Quando li a notícia da troca, na hora fiquei interessado em efetuar alguns testes com esse servidor, mas após ler mais sobre o M-Link fiquei realmente decepcionado. É bastante possível que seja um produto comercial e proprietário.

Vou tentar um contato com stpeter pra tentar esclarecer melhor esses pontos e posto aqui o que descobrir.

UPDATE: Segundo informações do Thiago Rocha Camargo: "Infelizmente não é FLOSS. Mas é uma boa estratégia para consolidar Open Standards, a Isode é séria e utilizada até por militares."

quarta-feira, 19 de agosto de 2009

Pidgin agora com suporte a voz e vídeo

Boas notícias. Foi lançada hoje a versão 2.6.1 do cliente de mensagens instantâneas Pidgin.

Cheia de novas features e muitas correções, o destaque principal dessa versão é sem dúvida os recursos de voz e vídeo disponíveis. São eles:
  • suporte a voz e vídeo com Jingle
  • suporte a voz com GTalk
  • suporte a voz e vídeo com o cliente web Gmail.
Não perca tempo e atualize o mesmo agora. Baixe a versão 2.6.1 aqui ou aqui (usuários de Ubuntu).

Leia o ChangeLog completo e veja as novidades da nova versão.

terça-feira, 18 de agosto de 2009

Novo plugin de monitoramento para o Openfire

Depois de meses sem atividade (desde o ano passado), hoje me deparei com um novo post no site do Openfire.

O mesmo trata de um novo plugin de monitoramento, desenvolvido pela empresa (na realidade não fica claro se é desenvolvido por uma empresa, projeto ou comunidade) Java-monitor.com, que permite ao administrador monitorar seu servidor via web, com facilidade e maior conveniência (será ?).

Até aí muito bacana, a não ser pelo fato indigesto (na minha opinião) de que para usufruir do plugin você terá de usar a infraestrutura da empresa desenvolvedora, além de mandar estatísticas de seu servidor para a mesma.

E agora? Bom, infelizmente (pelo menos para a Java-monitor), eu me importo demais com a independência e privacidade (nossa e de nossos clientes), e não vejo motivo para depender de uma empresa (por maior que seja) para dispor de tais serviços, por melhor que eles sejam.

Ainda prefiro monitorar os servidores usando uma combinação dos plugins já disponíveis com outras ferramentas como Nagios ou Zabbix rodando em nossos servidores. Isso me dá controle e maior disponibilidade.

Por isso, cartão amarelo para o novo plugin. No meu ponto de vista, não vale a instalação.

Agora, não querendo ser chato nem rabugento, mas depois do site da Ignite Realtime ficar tanto tempo inativo, eu sinceramente esperava que o próximo post publicado fosse tratar de uma nova versão ou novo recurso do servidor e não de uma "pseudo propaganda" de um plugin que na minha opinião não trará vantagens pra ninguém além da empresa desenvolvedora.

Meus dois centavos.