segunda-feira, 27 de junho de 2011

Separar log dos daemons com RSyslog.

Se você quer ou precisa separar os logs dos daemons de forma a ter um arquivo para cada daemon, saiba que é muito simples fazer isso no RSysLog.

Vou usar como exemplo o servidor DNS bind.

  1. Edite ou crie um novo arquivo em /etc/rsyslog.d/51-bind.conf;
  2. Crie uma linha com o seguinte conteúdo: if $programname == 'named' then /var/log/bind/bind.log
  3. Salve e saia do arquivo;
  4. Reinicie o rsyslog: /etc/init.d/rsyslog restart
Após executar estes passos vamos ter todos os logs do bind registrados no arquivo /var/log/bind/bind.log.


Porém existe um detalhe a ser observado, tudo que é gravado neste arquivo, é gravado também em /var/log/daemon.log e /var/log/syslog, isso gera redundância(que por um lado é bom) e pode acabar com o espaço em disco mais rapidamente dependendo do nível de detalhes do log do bind, e da configuração do logrotate.

Caso você não queira que esse comportamento continue, ou seja, você quer que o log do bind seja gravado somente no /var/log/bind/bind.log, faça o seguinte:
  1. Abra o arquivo /etc/rsyslog.d/51-bind.conf;
  2. Adicione o seguinte conteúdo abaixo da primeira linha: if $programname == 'named' then ~
  3. Salve e saia do arquivo;
  4. Execute o comando: mv /etc/rsyslog.d/51-bind.conf /etc/rsyslog.d/49-bind.conf;
  5. Reinicie o rsyslog: /etc/init.d/rsyslog restart
No passo 2 colocamos uma condição que impede o tratamento dos logs vindos do programa chamado named. Isso é feito pois já gravamos o log em /var/log/bind/bind.log com a instrução da linha anterior.

No passo 4 mudamos a ordem de carregamento das regras, pois se mantivéssemos como antes, ele seria carregado após as regras padrão, o que faria com que os logs do bind continuassem a serem gravados no /var/log/syslog e /var/log/daemon.

Após esses passos nós já temos o log do bind gravado em um arquivo separado somente para essa finalidade.

Até a próxima!

segunda-feira, 14 de fevereiro de 2011

Acessar desktop Linux remotamente.

Está precisando acessar a área de trabalho de sua distro Linux e não está com vontade ou não sabe configurar serviços como o VNC?
Existe uma solução(infelizmente não é open source mas funciona) simples fácil e rápida para resolver este problema. Um software chamado TeamViewer, que é gratuito para uso não comercial.
A melhor parte disso é que existem pacotes .deb e .rpm(e até tar.gz) a disposição, é só fazer o download e instalar. Assim que o software for aberto ele irá gerar um ID e uma senha aleatória para sua máquina, agora para acessar seu desktop basta preencher o ID e informar a senha quando for solicitado e pronto, você já consegue acessar seu desktop sem dor de cabeça.
O desempenho não é uma maravilha mas em momentos emergenciais é uma mão na roda.

Espero que essa dica ajude alguém!

quarta-feira, 27 de outubro de 2010

Débito automático Banco do Brasil via wine.


Após a felicidade de saber que o gerenciador financeiro do Banco do Brasil funciona perfeitamente no Ubuntu, tive a infelicidade de saber que o software Débito automático não funciona. Como sempre faço ao me deparar com uma situação destas, fui tentar descobrir o tipo de tecnologia usada para desenvolver o aplicativo, e para minha surpresa era Java, mas infelizmente uma versão muito muito velha, 1.1.8 que só existe para windows.


Na hora veio a idéia, vou tentar fazê-lo funcionar com a versão nova do java, fiquei até feliz ao ver o splash screen do mesmo, mas logo veio a decepção, uma mensagem muito descritiva dizendo: "Erro geral!". Tentei de todo jeito mas nada, analisando mais um pouco vi que o mesmo usa um banco de dados access(uma vergonha diante de tantas opções boas), ao ver isso desisti na hora de tentar fazê-lo funcionar no Ubuntu sem o wine pois sei que isso seria sinônimo  de muita dor de cabeça.

Tentei entrar em contato com Banco do Brasil para saber se existia uma versão deste software para Linux ou se existia alguma previsão de lançamento. A resposta foi bem simples e direta: 

"Prezado Sr Elton, Inicialmente,

gostaríamos de agradecer o seu contato

Informamos que a versão atual do

aplicativo Débito Automático não é
compatível com a plataforma Linux e
ainda não temos previsão de lançamento
de uma nova versão compatível


Atenciosamente, "


Pessoal a pedido do Ricardo(via comentário) aqui está o link para reclamação do banco do brasil, vamos começar a lotar a caixa de mensagens deles para ver se eles migram logo este e outros sistemas para todas as plataformas. Abaixo está a reclamação que  enviei hoje(14/02/2011)



"O aplicativo de Débito Automático, assim como outros softwares do Banco do Brasil, não funcionam em  sistemas operacionais que não sejam Windows, para um banco que a vários anos está migrando boa parte de sua infraestrutura(inclusive caixas eletrônicos) para Linux isso é um fato contraditório. E além disso este aplicativo está usando tecnologia ultrapassada(java 1.1.8). Além dos graves riscos a segurança por usar uma versão tão antiga de um software, existe a questão de forçar os usuários a comprarem licenças de um software estrangeiro para que possa usar com plena capacidade seus softwares. Isso tem consequências tecnológicas, financeiras e sociais para o país.
Na empresa onde trabalho estamos migrando para a plataforma Linux pois a atual plataforma esta trazendo problemas tecnológicos e financeiros. O Banco do Brasil não está me permitindo fazer alguns de seus softwares funcionarem em meu sistema operacional baseado em Linux(por vias normais). Sou obrigado a arriscar meu nome como profissional pois sou obrigado a usar estas tecnologias ultrapassadas aliada com uma plataforma que é mundialmente conhecida por ser extremamente vulnerável a milhões de pragas virtuais dos mais diversos tipos o que coloca informações sensíveis sob um elevado risco.
Fica aqui minha reclamação, e espero que gere bons resultados. Permitindo assim que qualquer cidadão decida qual sistema operacional usar e não seja mais obrigado a ter aborrecimentos ou ficar vulnerável por causa de certas tecnologias."

Já que não tinha outro jeito mais simples de solucionar este problema fui tentar instalar o software com o wine que vem no ubuntu 10.04, ele muito bem instala sem problemas mas na hora de executar recebo uma mensagem dizendo que não conseguia conectar com o banco de dados. Pesquisando no site do Banco do Brasil constatei que era necessário instalar o MDAC. Realizei o download e instalei mas mesmo assim não teve acordo.

Pesquisando um pouco mais no site do wine, verifiquei a versão mais nova(1.2) vem com um aplicativo extra para instalar e configurar bibliotecas nativas do windows(winetricks), então segui as instruções no site do wine e fiz a atualização.

Após atualizar apaguei todo o diretório .wine(rm -r .wine) e executei o winetricks para instalar o mdac25(as versões mais novas não funcionam - típico da plataforma Windows):

Após marcar a biblioteca e clicar em OK ele faz o download, instala e deixa tudo pronto.
Biblioteca instalada é hora de instalar o Débito Automático:
Agora é a hora da verdade, ao executar o Débito Automático veio a surpresa. Tudo funcionando perfeitamente normal, pelo menos aparentemente. Como na primeira execução eu não tenho dados ele abre em modo de demonstração:


OBS(14/02/2011): O gerenciador financeiro já está funcionando a mais de 4 meses e tudo está ok! Consigo enviar remessas, receber retorno e cadastrar clientes.

A restauração e teste de cadastro funcionaram perfeitamente. A única ressalva fica para o envio de remessa que funcionou mas não abre automaticamente o gerenciador financeiro para enviar o arquivo, o que deve ser feito manualmente. Isso não chega a ser um problema, é apenas uma mudança de procedimento.

Bom é isso ai pessoal, espero que esta dica ajude alguém. E principalmente que o Banco do Brasil crie vergonha e atualize este software, porque usar o java versão 1.1 é retrô demais, e principalmente removam o access dai e coloquem algo mais multiplaforma como o SQLite.


Atualização(15/02/2010): Após o envio da mensagem acima o banco do Brasil me enviou a seguinte mensagem:


"
Prezado Sr. Elton, para mais
esclarecimentos, gentileza contatar o
Suporte Técnico através dos seguintes
telefones: Atendimento Pessoa
Física: Telefone 0800 729 0200, com
atendimento 24h todos os dias da
semana; Atendimento Pessoa
Jurídica: Telefones 3003-0500 ou 0800
729 0500 com atendimento 24h, todos os
dias da semana. Atenciosamente
Central de Atendimento Banco do Brasil.

"


Muito útil e esclarecedora a resposta deles!

Abraços a todos!

quarta-feira, 21 de julho de 2010

Software livre migração - diário de bordo - parte 4

Após quase um ano sem publicar nada sobre a implantação de software livre na empresa onde trabalho, acho que alguns já estavam pensando que eu tinha desistido. Mas quem já planejou/executou uma migração deste tipo sabe que é uma tarefa trabalhosa e delicada. Mas felizmente tudo está caminhando conforme o planejado, e a pausa nas publicações foi por uma boa causa. Como eu disse na parte 3 existia muita coisa errada na rede elétrica e lógica, e como eu sou o responsável pela administração da rede e não gosto de coisas bagunçadas comecei fazer os levantamentos(juntamente com um profissional qualificado) do que seria necessário para colocar as áreas críticas em ordem. Bem, após muito trabalho conseguimos contornar a maior parte dos problemas encontrados, e finalmente desde o mês de junho iniciei a fase de testes com Ubuntu.

Como em todas empresas, temos aqui algumas máquinas um tanto ultrapassadas para os padrões do sistema operacional Windows®, mas felizmente ainda podem render alguns anos com o uso de software livre, porém existe outro problema, os sistemas que utilizamos aqui são um tanto exigentes, e realizar uma atualização de hardware custaria um valor muito considerável, então a solução encontrada foi montar um servidor LTSP(que está operando desde o dia 20 de junho) e colocar os sistemas em outro servidor com Windows® 2008 server que será acessado via terminal service.

O servidor Windows® foi instalado em uma máquina virtual utilizando KVM. Ambos os servidores foram montados com hardware comum, pois estamos em fase de testes, e caso está alternativa funcione adequadamente iremos adquirir um novo servidor para hospedar tanto o LTSP quanto o Windows® server.

No momento temos 4 usuários utilizando o LTSP e 6 usando o terminal server, dos que estão usando o Ubuntu 2 nunca tiveram nenhum tipo de contato com um Linux na vida e apesar de eu ter fornecido um treinamento bem básico ambos estão se saindo perfeitamente bem, inclusive um fato interessante me deixou muito orgulhoso de um deles. Ao abrir um arquivo para impressão, ela(sim uma mulher) não encontrou a impressora que queria, então mandou uma mensagem pra mim dizendo o seguinte: "Eu estou querendo adicionar uma impressora mas existem várias aqui para escolher. Eu fui em sistema->administração->impressão->adicionar mas não sei qual devo adicionar. Está correto?". Alguns podem dizer, o que isso tem demais, para mim isso diz muito pois eu nem sequer expliquei qual a utilidade do menu sistema, e muito menos como adicionar impressoras.

Como em todo processo de migração problemas acontecem(cedo ou tarde), até o momento os problemas mais chatos foram os seguintes:

Problema 1: O LTSP no ubuntu 10.04 vem por padrão com um bug chato, que simplesmente não deixa as estações desligarem nem reiniciarem pelo ícone que fica perto do relógio, ao invés disso ele faz logoff e o usuário tem que então clicar em preferências para em seguida escolher se quer desligar ou reiniciar, mas felizmente este bug já foi relatado, e o melhor já existe um patch disponível.
Solução 1: Para quem não quer ver a evolução do bug até chegar a um patch, eu só precisei executar estes comandos(lembrando que eu testei esta solução no lunid lynx): sudo add-apt-repository ppa:ts.sch.gr && sudo apt-get update && sudo apt-get dist-upgrade

Problema 2: tive uma pequena dor de cabeça com duas impressoras de grande porte que temos, ambas do fabricante Ricoh os modelos são aficio 1075 e aficio 2105, o ubuntu muito bem reconhece e instala ambas, porém sempre que mandava imprimir, a configuração da página chegava na impressora incorretamente e por conta disso era necessário sempre haver intervenção manual para selecionar uma bandeja.
Solução 2: Simples e fácil, bastou fazer o download dos driver PPD no site do projeto open printers e após instá-los tudo passou a funcionar maravilhosamente bem.

Problema 3: Algumas vezes existem problemas que envolvem "forças superiores" que são incontroláveis, e como não poderia deixar de ser diferente, um dos maiores causadores de problemas chama-se caixa econômica federal(que atire a primeira pedra quem nunca teve problemas com os sistemas desta instituição), e a bola da vez vai para o , um sistema para informação de dados contábeis dos municípios que só funciona unica e exclusivamente com o Internet Explorer
Solução 3: A maneira mais simples de resolver este problema foi liberando o acesso ao SISTN pelo terminal service.

sexta-feira, 9 de abril de 2010

HnTool 0.1 liberado.

Após um bom tempo usando software livre, agora posso dizer que realmente faço parte desta enorme comunidade pois finalmente(antes tarde do que nunca) fiz algumas contribuições para algum projeto.

O nome deste projeto é HnTool, ele é uma ferramenta para *nixes que faz uma série de testes de segurança no servidor e gera um relatório que pode ser visto diretamente no terminal ou em HTML, a primeira versão(0.1) foi liberada no dia 09/04/2010.

Importante: O HnTool não modifica nada no servidor, apenas testa e informa o grau do problema encontrado, a solução fica por conta do administrador.

Não vou me estender demais para não deixar a leitura cansativa, todos os detalhes podem ser encontrados nos links abaixo.

Links importantes

Site oficial
Código fonte
Relatando bugs
Sugerindo melhorias
Wiki
Downloads

Autores

Hugo Doria(criador do projeto), Alexandro Silva, Aurélio Heckert, Candido Vieira, Elton Pereira, Italo Valcy, Késsia Pinheiro, Rafael Gomes(foi graças a ele que cheguei até o projeto, obrigado Rafael!), Rafael Gonçalves Martins, picoloto, Sebastian SWC. :-)

OBS: No dia 18/04/2010 teremos uma reunião no IRC para discutirmos os rumos da versão 0.2, caso tenha interesse de participar veja os detalhes na agenda do projeto.

quinta-feira, 25 de fevereiro de 2010

Usuários vs Servidores

Todos que trabalham administrando redes que tenham servidores de arquivos já passaram, ou passarão pelo clássico problema de falta de espaço em disco, mas não por um mau dimensionamento, e sim pela falta de consciência dos usuários.

Alguns administradores optam por definir quotas de disco, mas infelizmente cada empresa trabalha de uma forma diferente, e aqui elas só iriam causar transtornos pois os usuários guardam arquivos grandes em suas pastas pessoais, e estes arquivos são importantíssimos.

Apesar de eu ter enviado uns dois emails falando sobre este problema, sempre existem os usuários que parecem que não entender o significado de "Não é permitido armazenar músicas, vídeos, fotos ou qualquer tipo de arquivo pessoal no servidor.", eles pensam que estão usando seus computadores de casa, por conta desta falta de disciplina já tive problema uma vez com a falta de espaço em disco, e esta semana o disco já estava chegando no limite mais uma vez, quando vi isso resolvi criar um script em python para varrer as pastas e simplesmente mover estes arquivos. O script já está pronto e hospedado no google code: http://code.google.com/p/find-delete/

OBS1: Por falta de opção deixei o nome do script como find-delete, caso alguém tenha uma sugestão melhor...
OBS2: Apesar do nome find-delete, este script não apaga nenhum arquivo(por questão de segurança), ele apenas copia ou move os arquivos para uma pasta de backup que pode ser configurada, mais detalhes no wiki do projeto.

domingo, 23 de agosto de 2009

Software livre migração - diário de bordo - parte 3

Sumi por alguns dias mas foi por uma boa causa(ou seria ruim?)!

Tudo estava indo muito bem com a implantação de software livre na empresa, no começo do mês foi iniciado o processo de reorganização do rack que deixou de ser assim:





E passou a ser assim:






Acho que nem é necessário fazer comentários pois as imagens já dizem tudo. Isso é um clássico exemplo do popular ditado "Esse é o barato que saiu caro", assim que eu assumi a gerência da rede tinhamos um quebra galho fazendo serviços que deveriam ter sido confiados desde o princípio a um profissional da área, a primeira coisa que fiz foi providenciar a contratação de um verdadeiro profissional. E não pensem que o problema era só organização, na empresa nós tinhamos 5 computadores que vez ou outra apresentavam problemas, e na maioria das vezes problemas sérios e inexplicáveis como a perda total de arquivos, do nada. E justamente todas estas máquinas estavam com a configuração dos cabos trocadas tanto no patch panel quanto na tomada, hoje estes computadores estão operando de forma normal e sem gargalos durante operações de rede.

E além disso o quebra galho fez o favor de não identificar nenhum ponto no rack nem nas tomadas, resultado, era uma operação de "dar tiros no escuro" quando um ponto apresentava problemas, e para complementar, nada de mapa físico da rede.

Quando terminamos a organização física da rede, fui providenciar a identificação de todos disjuntores(com um profissional contratado), mas quando começamos a abrir os quadros de distribuição a situação era tão preocupante quanto a situação da rede, e a diretoria não ficou nada satisfeita com o que viu. Agora estamos fazendo os levantamentos preliminares para desfazer as gambiaras deixadas pelo "quebra-galho".

Algumas pessoas podem se perguntar o que tem haver a parte física da empresa com a implantação de software livre, e eu digo o seguinte: eu não posso dar continuidade na implantação com as redes lógica e elétrica cheias de gambiarras pois se ocorrer algum problema causado por estas instalações vão logo começar as críticas, ta vendo que este negócio de software livre é furada, ta vendo que software livre não presta, etc... E eu prefiro não arriscar. Mas acima de tudo isso, este trabalho que estou fazendo deveria ser feito por todos os administradores de rede, pois é muito importante conhecer toda a rede física pois ela vai influenciar diretamente em futuras expansões que venham a ocorrer, além de que como foi visto, uma rede deixada na mão de qualquer um gera sérios problemas.

Por enquanto é isso, dentro de alguns dias(ou semanas) eu volto com novidades.Mas para não fechar este post só com más notícias, já está em andamento o desenvolvimento do sistema de controle de quota por usuário do squid, eu apelidei o projeto de SQM(Squid Quota Manager) e está hospedado no launchpad. O projeto está sendo desenvolvido com o Django e está em fase experimental, então aproveito para pedir a quem puder que ajude no projeto corrigindo meus erros de inglês(pois estou usando o projeto para me forçar a melhorar o inglês), propondo funcionalidades(via launchpad), codificando ou fazendo qualquer coisa que ajude o projeto a atingir a maturidade.