“@andrelop
Somente agora, com 30 anos, descobri qual é a sensação de receber a primeira parcela do 13 salário. Posso dizer que é ótima :-) ”
Um tweet do @andrelop, o qual tomei a liberdade de transcrever acima, me pensar/lebrar/imaginar uma série de coisas a respeito da idade:
Aos 13, zerei meu primeiro RPG!!
Aos 15, descobri o quanto é bom tomar um porre de whisky!
Aos 15, descobri que porre de conhaque vagabundo não é tão bom assim!
Aos 17, descobri o sexo!
Aos 19, descobri como é bom terminar um namoro mala!
Aos 20, descobri a mulher da minha vida!
Aos 23, descobri como é trabalhar (quase) sério com software livre.
Aos 24, como é legal contribuir com traduções (yeah, preciso voltar).
Aos 25, descobri que posso aprender a tocar violão/guitarra.
Aos 25, descobri que a faculdade um dia acaba!!!!
Hoje, com 26, descobri que não tenho mais 15 e preciso dar um jeito na minha vida.
Aos 30, provavelmente esquecerei o que fiz dos 15 até o fim da faculdade.
Aos 40, lembrarei de quando tinha 25.
Aos 45, me arrependerei de ter trabalhado tanto!
Aos 50, estarei igual meu pai, me comportando como se eu tivesse 15…
Aos 60, #totaly #fail :(
November 30th, 2009 in
Uncategorized | tags:
fail,
jack,
myself |
2 Comments
Problema: Realizar downloads via ‘ wget ‘ através de um squid que exige autenticação.
Solução: Exportar as variaveis corretamente com o nome de usuário e senha utilizadas no proxy:
$ export http_proxy=”http://usuario:senha@192.xxx.xxx.xxx:3128″
$ export ftp_proxy=”http://usuario:senha@192.xxx.xxx.xxx:3128″
Bonus Track: Limpar o histórico para que a senha não fique armazenada
$ history -c
Enjoy the ride!
Método ‘Quick And Dirty’ de fazer as coisas.
Problema: Uma lista com 780 mac addresses com letras maiusculas, que serão utilizados para gerar configurações de telefones IP.
Solução: Um one-liner com for + tr :D
Materiais: comando for, a lista com os mac address (mac_list), o comando tr
Comando:
for i in $(cat mac_list ) ; do echo $i | tr [A-Z] [a-z] >> lista_oficial_de_macs ; done
I really love One-Liners :D
Como administrador de redes e implementador de tecnologias VoIP (um tal de asterisk, saca? ), raramente há um dia no qual eu não utilize o tcpdump para detectar problemas ou depurar o tráfego de rede.
Este software, disponível em tcpdump.org possibilita visualizar a informação que trafega pelas interfaces de rede, dando ao administrador condições de compreender a origem e destino dos pacotes, portas origem/destino, e constatar o bom funcionamento da rede ou detectar e corrigir eventuais problemas.
Por fazer uso da libpcap, (disponível no mesmo site do tcpdump), o sistema de filtros que irei descrever aqui pode ser utilizado em praticamente qualquer sniffer que faça uso da libpcap, como o Wireshark, Etherape* e outros.
Bom, se você executar o comando tcpdump (como root ou usando o sudo) na sua estação de trabalho, devem aparecer algumas coisas não tão emocionantes assim, como um eventual acesso a uma página web ou ssh para outro servidor.
Dica: Se você tiver acesso a um servidor/firewall/roteador baseado em linux, as coisas irão ficar mais divertidas ;)
Dica2: O parametro -i na linha abaixo específica a interface de rede, no caso, en1.
bash-3.2# tcpdump -i en1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en1, link-type EN10MB (Ethernet), capture size 96 bytes
16:37:41.820798 IP hermes.jabber.org.jabber-client > 172.25.50.1.49185: Flags [P.], ack 101, win 501, options [nop,nop,TS val 2786794633 ecr 32003128], length 314
16:37:41.820868 IP 172.25.50.1.49185 > hermes.jabber.org.jabber-client: Flags [.], ack 315, win 65535, options [nop,nop,TS val 32003131 ecr 2786794633], length 0
Aqui, temos o IP 172.25.50.1, na porta 49185 conversando com o servidor hermes.jabber.org na porta jabber-client (!?), ou seja, a notação do tcpdump é a seguinte:
ip_origem.porta > ip_destino.porta
É exatamente neste momento que entra a importancia de conhecer alguns parámetros bacanas e os filtros.
No próximo exemplo, usarei o parametro -n, para não resolver nomes.
bash-3.2# tcpdump -i -n en1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en1, link-type EN10MB (Ethernet), capture size 96 bytes
16:54:49.305931 IP 208.68.163.220.5222 > 172.25.50.1.49478: Flags [P.], ack 3024, win 501, options [nop,nop,TS val 2787051513 ecr 32013390], length 234
16:54:49.306025 IP 172.25.50.1.49478 > 208.68.163.220.5222: Flags [.], ack 40285, win 65535, options [nop,nop,TS val 32013393 ecr 2787051513], length 0
Creio que fizemos algum progresso, certo?
Sabemos como olhar origem/destino, sem resolver nomes, porém, se você fizer isso em uma tarde movimentada em um servidor com muitos acessos, você vai literalmente ter uma enxorrada de caracteres em sua tela.
É ai que entram os filtros.
Como o próprio nome diz, os filtros são capazes de capturar e exibir apenas os pacotes dentro de um padrão especificado por vossa mercê logo após os parametros.
O comando abaixo tem como objetivo capturar apenas os pacotes que tenham como origem o IP 172.25.50.1.
bash-3.2# tcpdump -i en1 -n src 172.25.50.1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en1, link-type EN10MB (Ethernet), capture size 96 bytes
17:03:57.966875 IP 172.25.50.1.49478 > 208.68.163.220.5222: Flags [P.], ack 1791748800, win 65535, options [nop,nop,TS val 32018873 ecr 2787180975], length 101
17:03:58.125112 IP 172.25.50.1.49478 > 208.68.163.220.5222: Flags [.], ack 315, win 65535, options [nop,nop,TS val 32018875 ecr 2787188714], length 0
17:03:58.402324 IP 172.25.50.1.49186 > 207.46.124.87.1863: Flags [P.], ack 4218053211, win 65535, options [nop,nop,TS val 32018878 ecr 40801509], length 5
17:03:58.592978 IP 172.25.50.1.49186 > 207.46.124.87.1863: Flags [.], ack 9, win 65535, options [nop,nop,TS val 32018880 ecr 40801810], length 0
Agora, mais filtros.
Capturando pacotes com origem em 172.25.50.1 e destino sendo 201.XXX.XXX.XXX
bash-3.2# tcpdump -i en1 -n src 172.25.50.1 and dst 201.XXX.XXX.XXX
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en1, link-type EN10MB (Ethernet), capture size 96 bytes
17:24:41.016407 IP 172.25.50.1.49593 > 201.XXX.XXX.XXX.22: Flags [P.], ack 482545008, win 65535, options [nop,nop,TS val 32031289 ecr 121570066], length 48
Capturando pacotes com origem em 172.25.50.1 e destino 201.XXX.XXX.XXX, com exeção da porta 22 ;)
bash-3.2# tcpdump -i en1 -n src 172.25.50.1 and dst 201.XXX.XXX.XXX and port not 22
(Ok, eu usei um telnet para testar ;)
17:29:04.685025 IP 172.25.50.1.49614 > 201.XXX.XXX.XXX.23: Flags [S], seq 982381860, win 65535, options [mss 1460,nop,wscale 3,nop,nop,TS val 32033923 ecr 0,sackOK,eol], length 0
Capturando pacotes do tipo DNS. (udp, porta 53)
bash-3.2# tcpdump -i en1 -n udp and host 4.2.2.2 and port 53
(o comando usado para testar foi: dig -t any google.com.br. @4.2.2.2 )
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en1, link-type EN10MB (Ethernet), capture size 96 bytes
17:30:42.622847 IP 172.25.50.1.57322 > 4.2.2.2.53: 38414+ ANY? www.google.com.br. (35)
17:30:42.772963 IP 4.2.2.2.53 > 172.25.50.1.57322: 38414 1/0/0 CNAME[|domain]
Felizmente, o tcpdump é um software com uma curva de aprendizado incrivelmente curta e de uma utilidade imensa. Para maiores referencias, consulte esta documentação aqui, que relata os filtros existentes para a libpcap/tcpdump.
http://www.cs.ucr.edu/~marios/ethereal-tcpdump.pdf
Em 2006, eu escrevi este artigo aqui, sobre o etherape (ignore a parte que eu falo mal dos filtros, coisa de iniciante ;)
http://www.vivaolinux.com.br/artigo/Apresentando-o-monitor-de-redes-EtherApe/
Bom… a menos de 10 minutos atrás precisei clonar um diretório de linux para um servidor a alguns metros de distância e, para isso, utilizei a amplamente conhecida opção de tar + netcat :D
Na origem, execute:
# tar c /caminho/para/diretorio | nc -q 10 -l -p 6666
E, no destino, execute:
#nc -w IP_DA_ORIGEM 6666 | tar xv
Aposto uma cartela de cigarrilhas pan, como, com alguns ajustes, dá para clonar uma instalação.
[ ] ‘ s
Hoje eu tive alguns problemas para compilar o pacote drbd8-source que existe na arvore debian, pois o meu kernel é backports e o módulo simplesmente se recusou a compilar. Solução adotada:
Compilar o módulo oficial do site drbd.org .
Para isso, é necessário cumprir alguns pré requisitos:
# aptitude install linux-source-2.6.30 flex build-essential
Descompacte os fontes do kernel e crie o link simbólico para /usr/src/linux
# cd /urs/src/linux
#make mrproper
# cp /boot/config-2.6.30-bpo.2-686 /usr/src/linux/.config
Agora, baixe os sources do drbd8 e descompacte-os. Eu estou utilizando a versão 8.3.4, release estável em 07/10/2009.
Entre no diretório e então compile o módulo:
# make clean all
[ ] ‘ s
Não sei porque a porcaria do iTunes duplica alguns albums que eu possuo, e eu acho isso um saco.
Para resolver o problema, basta usar o fdupes, um aplicativo para Unix que procura arquivos duplicados usando a assinatura MD5.
O fdupes pode ser obtido atraves do sistema de pacotes da sua distribuição linux, ou atraves do sistema ports, se você estiver no FreeBSD ou Mac OS X.
Para utilizá-lo, basta utilizar o comando:
# fdupes -r -d path/para/busca
Maiores informações: http://www.susegeek.com/utility/fdupes-command-line-tool-to-find-and-listdelete-duplicate-files/
October 7th, 2009 in
Uncategorized | tags:
sysadmin |
1 Comment
To de volta (eu acho…) a este blog, e com um montão de coisas pra falar. Mas um montão mesmo.
Mas antes de começar, eu vou fazer um ‘quick post’ de tudo que aconteceu que eu gostaria de ter escrito na época, porém, fatores profissionais (como ter sua alma sugada 24/7) não me permitiram :D
- Me formei na faculdade.
- Comprei uma guitarra elétrica (e até toco algumas músicas)
- Descolei um nintendo Wii
- Comecei a fazer exercícios regularmente (ok… nem tão regularmente assim)
- Virei coordenador de uma equipe de 4 pessoas
- Abandonei o posto de coordenador de uma equipe de 4 pessoas
- Abandonei meu emprego antigo, por que eu me sentia frustrado e sem perspectivas (gerencia sux)
- Descolei um emprego com pessoas bacanas, com muitas perspectivas e uma gaveta cheia de novos horizontes (Yeah!!)
Bom… resumindo rapidamente, foi isso.
De volta ao trabalho!!!
Ao bom e velho trabalho de System Administrator.
October 7th, 2009 in
Uncategorized | tags:
sysadmin |
4 Comments
P.S -> Este micro tutorial não cobre a instalação do OpenWRT nos LinkSys da vida. Vai pro google e se vira!
Hum… faz um tempo que eu estou para resolver este problema idiota.
Afinal, eu quero assistir meus videos e filmes na tela grande, e não na tela do notebook. Após pesquisar sobre as funções multi-media do Xtudo XBOX, dei uma geral nos meus 2 roteadores wireless WRT54G, coloquei OpenWRT Kamikaze 8.09.1 e foi uma marvilha só. 4 temporadas de House em 29″. :D
Bom, a primeira coisa a ser feita e fazer com que o seu OpenWRT reconheça e monte o filesystem Samba.
Para isso, instale os seguintes pacotes:
# opkg update
# opkg install cifsmount kmod-fs-cifs ushare
Após instalar os pacotes, use a interface do OpenWRT para configurar o ponto de montagem, com suas respectivas opções.
Se você possui um destes “fancy panties” network storages autenticados e tals, talves a linha abaixo o ajude, retirado do fstab do OpenWRT te ajude a acertar a montagem:
//192.168.1.200/Disk /mnt cifs unc=\\192.168.1.200\Disk,ip=192.168.1.252,user=admin,password=asupersenhadoadmin 0 0
Depois disso, basta montar o diretório no seu roteador e configurar o ushare. Para isso, abra o arquivo /etc/ushare.conf configure-o. Apenas atente-se para o fato de habilitatar a opção de compatibilidade com o XBOX e DLNA.
Após configurar, execute:
#ushare -x -D
E pronto. Deixe ele scanear o diretório e então, ligue o seu XBOX e divirta-se.
Bonus Track:
Para codificar seus videos para um formato suportado pelo XBOX, e com legendas, aplique o seguinte comando no seu Linux:
mencoder -o arquivo_saida.avi -sub arquivo_legenda.srt -oac copy -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell=yes -ffourcc xvid arquivo_entrada.avi
Maiores informações:
www.google.com.br
www.openwrt.org
July 10th, 2009 in
Uncategorized | tags:
360,
games,
house,
linux,
media,
mencoder,
openwrt,
upnp,
ushare,
xbox |
No Comments
Hoje eu passei vergonha com minha noiva, pois quebrei uma palheta enquanto tocava uns acordes de “I Wanna Be Sedated” , dos Ramones.
Como diziam os caras do AC/DC:
“It’s a long way to the top if you wanna rock and roll!”
April 19th, 2009 in
Uncategorized |
5 Comments