As emocionantes aventuras de um sysadmin linux na procura pelo uptime perfeito!

Para ser um Sysadmin

Posted: março 7th, 2010 | Author: coredump | Filed under: Linux e Open Source, segurança | Tags: , ,

Vendo o formspring do fike eu tentei me lembrar do que um bom sysadmin precisa. Eu e ele terminamos o papo no gtalk, e eis a lista sem uma ordem específica:

  1. Sistemas Operacionais e Organização de Computadores (não adianta tentar ser um sysadmin sem ter um amplo conhecimento de como o SO e Hardware funcionam)
  2. Rede (mesma coisa ali de cima, e aqui estamos falando daquelas chatices de TCP/IP, cabeçalhos, window size, mtu e tudo mais, não só roteamento)
  3. Programação (tem de saber algum shell script, e mais uma linguagem de verdade)
  4. Conceito das linguagens utilizadas no ambiente que vai se administrar (java, python, etc…)
  5. Banco de Dados (como eles funcionam, transações, locking, particionamento, tuning)
  6. Inglês (isso é óbvio)

Mas dai você vai dizer “porra, mas esse monte de coisa?”. Acredite, o seu ambiente vai dar merda e você pelo menos tem de ter conhecimento o bastante para apontar a falha (além de ter de resolver).

intel

1 Comment »

Consertando Heisenbugs por observação.

Posted: fevereiro 12th, 2007 | Author: coredump | Filed under: Linux e Open Source, Programação | Tags: , ,

Heisenbugs são bugs são problemas em programas que desaparecem quando se tenta consertá-los. Hoje eu me deparei com um destes. Alguma coisa simplesmente pirava e o proxy parava de funcionar. Resultado, tive de mudar minha senha umas 8 vezes.

A solução? Deixar um programa aberto o dia todo para tentar achar o bug. Como agora ele está sendo observado, ele não aparece mais. Deixei o Wireshark capturando pacotes para descobrir quem era o responsável pela lambança no proxy e tudo voltou ao normal, não travou mais. Tosco né?

Eu odeio o OpenSuSE, definitivamente. Ele é a prova que Linux trava e que Open Source pode ser Tosco Source… Ou que a Microsoft anda mexendo no código do SuSE.

meh.

intel.

tags: heisenbug, opensuse

No Comments »

Turbogears (ou zope, ou ruby) Behind Apache: Diminuindo o load.

Posted: janeiro 30th, 2007 | Author: coredump | Filed under: Linux e Open Source, Programação | Tags: , , ,

E então, muita gente usa frameworks como o Turbogears ou alguns menos legais como o Zope ou mesmo Ruby on Rails. Para garantir um bom serviço web, segurança e disponibilidade nada melhor que deixar essas belezas rodando atrás de um proxy Apache. Com o mod_proxy do Apache2 então, as coisas ficaram ainda mais simples.
Só que as vezes rola uma leseira meio generalizada. Como por exemplo deixar o servidor do framework servir conteúdo estático. Por mais que os servidores sejam confiáveis, melhor deixar para eles a tarefa mais especializada e deixar o trabalho pesado de imagens e javascript (ainda mais nestas épocas de javascripts gigantes) para nosso amigo Apache. Coisa simples na configuração, exemplo abaixo para turbogears:

Alias /static/ /usr/lib/python2.4/site-packages/app/static/
Alias /images/ /usr/lib/python2.4/site-packages/app/static/images/

ProxyPass /static !
ProxyPass /images !

ProxyPass http://127.0.0.1:8080/
ProxyPassReverse http://127.0.0.1:8080/
RequestHeader set CP-Location /
RewriteRule ^(.*) http://localhost:8080/$1 [P]

Basicamente, mandamos os requests de imagens e conteúdo estático direto pelo apache, sem precisar passar pela aplicação rodando no localhost. Ainda tenho de testar isso em ambiente real, mas pela minha experiência, só tem a melhorar a performance de tudo.

intel!

PS: Tive de editar o post umas 3 vezes, mas o boo-box tá mostrando os resultados direitinho. O que é o boo-box? São essas palavrinhas destacadas. Você pode saber mais no site deles. Muito massa a idéia. Eu to no beta testing com a Amazon e tá sendo bem interessante.

tags: turbogears, apache, proxy, boo-box

No Comments »

Usando o Tor e Foxy Proxy para acessar o YouTube

Posted: janeiro 9th, 2007 | Author: coredump | Filed under: Cybermundo, desobediência Virtual, Linux e Open Source, segurança | Tags: , , ,

E então. Pela segunda vez tenho a impressão de que o Brasil está degringolando para um autoritarismo sem pé nem cabeça na internet.
E o pior, desta vez nem é o governo ou grandes corporações como foi da última vez, agora é um “empresário” com advogados demais e inteligência de menos acompanhado da sua namoradinha ofendida que sequestram o acesso ao YouTube de grande parte do país simplesmente porque, literamente, não conseguiram pensar com a cabeça de cima…

Mas felizmente, as pessoas que pensam já tinham uma solução pra isso há algum tempo. A EFF já previa há algum tempo casos como estes e principalmente a necessidade de uma internet anônima. Para isso eles criaram o projeto Tor (The Onion Routing, ou o Roteamento Cebola). Sem entrar em muitos detalhes, o Tor faz com que sua conexão seja feita passando por vários caminhos alternativos pelo mundo inteiro, efetivamente transformando sua conexão numa conexão irreconhecível por IP. Usando o Tor mais uma ferramentinha para o Firefox, acessamos o YouTube numa boa e podemos voltar a assistir ao que importa.

Porque, veja bem, eu nunca me interessei em ficar assistindo ciclicamente o vídeo da supracitada modelo e seu namorado com priapismo… Eu uso o YouTube basicamente para assistir séries famosas como “Ask a Ninja” ou diversos outros vídeos, dos engraçados aos mini-programas, que existem na comunidade. Mas obviamente os responsáveis pelo bloqueio não estão nem aí com isso. Então, sem mais delongas:

  1. Baixe o Tor:
    • Se você usa Linux Debian ou Ubuntu, basta usar o aptitude: aptitude install tor
    • Se você usa algum outro Linux, imagino que o gerenciador de pacotes ou similar de sua distro tenha o pacote tor pronto para ser instalado, é bem popular.
    • Se você usa windows, vá no site do tor e escolha o pacote para baixar. Eu sugiro o “Instável” que vem com o Vidalia. O Vidalia é uma interface gráfica para o Tor para windows.
  2. Instale o Tor:
    • No Linux, depois dos passos acima você deve estar conectado e funcionando. Caso seja necessário (seu firewall é linha dura, sua rede tem alguma diferença), dê uma lida no man tor e altere o torrc.
    • No windows, alguns programinhas vão estar rodando na sua systray ali do lado do relógio. O realmente importante é o Tor. Pode ser que tenha um tal de Privoxy também. Ele é interessante para várias coisas, mas eu não vou usá-lo neste caso porque o objetivo não é anonimato, é só acessar um site. Se a “cebolinha” do Tor ficou verde, você está na rede.
  3. Dê uma checada:
    • No Linux: torctl status vai te dar uma visão geral da conexão.
      Existem vários pacotes para fornecer graficamente o status do Tor,
      escolha o que mais lhe agrada (existe o Vidalia para Linux, usa QT
      então o pessoal do GNOME como eu torce o nariz :P )
    • No Windows: Use o menu do botão direito em cima da “cebolinha” para dar uma olhada
      no log de conexão e no mapa de servidores por onde sua conexão vai
      passar, é divertido. Se quiser ser simpático e tiver uma boa conexão,
      marque a opção para ser um servidor Tor.
  4. Instale o FoxyProxy:
    • Vá na página do Addon FoxyProxy e instale o addon seguindo os meios normais. Eu não preciso dizer como fazer isso, certo?
    • O Firefox vai pedir para reiniciar. Quando ele voltar, vai abrir um assistente para configurar o Tor. Use as seguintes respostas…
      Deseja configurar para usar o Tor? Sim.
      Com ou Sem Privoxy? Sem.
      Porta do Tor. Deixe a padrão e clique Ok.
      DNS através do Tor? Sim.
    • Vai abrir uma janela com algumas opções. Nesta janela criamos uma “regra” para redirecionar o tráfego do site bloqueado pelo Tor, enquanto o resto passa pelo nosso local normal. Faça o seguinte:
      • Clique na entrada “Mail do Google” na lista e peça “Excluir Seleção”.
      • Clique “Adicionar Novo Padrão”.
      • Preencha…
        Nome: YouTube
        Endereço ou Padrão: *youtube.com/*
        Marque “Whitelist”
        Marque “Curingas”
      • Clique Ok.
    • Se você não usa normalmente um proxy para se conectar a internet, está tudo funcionando. Caso contrário, você tem de abrir o menu de configuração do FoxyProxy e configurar o proxy “Default” dele para ser o seu proxy normal de conexão.
  5. Teste. Navegue.
  6. Ao final, a situação deve ser a seguinte:
    • Requisições para qualquer coisa no YouTube devem usar o Tor (que deve estar rodando na sua máquina) para serem completadas.
    • Requisições para outros sites vão passar pelo seu proxy normal ou pela sua conexão sem proxy.

Apenas um detalhe: por mais que eu não concorde com o bloqueio, foi uma ordem judicial que obrigou o mesmo. A ordem judicial foi, aparentemente, mal elaborada e acabou bloqueando o site inteiro, enquanto deveria filtrar apenas o vídeo da infeliz modelo. Mas, de qualquer forma, usem o Tor da forma acima sabendo que atravessar este bloqueio pode ser um crime ou na melhor das hipóteses uma desobediência.

Eu acho que precisamos realmente de uma EFF. Continuo achando. Talvez eu monte uma.

E no mais, cito o A Declaration of Independence of Cyberspace:

In China, Germany, France, Russia, Singapore,
Italy and the United States, you are trying to ward off the virus of
liberty by erecting guard posts at the frontiers of Cyberspace. These
may keep out the contagion for a small time, but they will not work in
a world that will soon be blanketed in bit-bearing media.


Ou, tradução livre:

Na China, Alemanha, França, Russia, Singapura, Itália e Estados Unidos, vocês estão tentando combater o vírus da liberdade construindo guaritas nas fronteiras do Cyberspace. Estas podem manter o contágio longe algum tempo, mas elas não vão funcionar em um mundo que em breve vai ser coberto em bits.


coredump desligando.

tags: tor, eff, youtube, proxy

18 Comments »

Trac Hacks Indispensáveis

Posted: dezembro 1st, 2006 | Author: coredump | Filed under: Linux e Open Source, Programação | Tags: , ,

Então, eu uso bastante o trac como gerenciador de projetos. Além disso ele é uma ótima ferramenta para integrar wiki/svn/controle de tempo, de uma forma simples e limpa.
Além disso, é feito em Python e usa uma estrutura de plugins muito legalzinha, depois de configurar um Trac/SVN perfeitamente, tenho pelo menos 3 destes plugins que eu achei indispensáveis:

WebAdmin: Este é básico. Administrar o Trac sem ter de logar na interface shell é muito mais prático, seguro e hosteável. O companheiro dele, AccountManager, também é bem legal mas eu não cheguei a usar porque nenhum dos meus sites usando Trac permite/necessita cadastro de usuários e coisas assim.

PageToPDF: O nome já diz tudo. Exporte as páginas do Wiki em PDF além do formato normal (texto). Só isso já é uma mão na roda no quesito documentação.

Acronyms: Usa uma tabela criada em uma página especial do próprio wiki para mostrar aquelas explicações sobre abreviaturas quando se passa o mouse em cima. Além disso suporta links dinâmicos, muito legalzinha.

DoxygenPlugin: Para o caso de projetos legados ou mesmo projetos atuais que usam documentação no formato Doxygen este plugin é fantástico. Ele não só disponibiliza o conteúdo HTML do Doxygen no Trac como cria um namespace wiki [doxygen:] que você pode referenciar nas páginas, linkando diretamente do Wiki para a documentação gerada do código. Pena que o suporte a Python do Doxygen é meio fraquinho :(

Mas então, dêem sempre uma olhada no Trac-hacks, tem muita coisa legal lá e algumas bem específicas que mesmo não indo para a distribuição principal podem ajudar bastante, principalmente nas ferramentas de integração com outros sistemas.

intel

Technorati Tags: , ,

1 Comment »