quinta-feira, 1 de dezembro de 2011

Spamassassin bloqueio/liberação pelo nome do anexo


Precisei liberar um e-mail que tinha um anexo com uma extensão maluca, procurei na documentação do spamassassin, e não tinha nada que ajudasse, e também no google. Demorei um tempão para encontrar.

describe LOCAL_TEST1 adicionado para liberar extensao teste...
full   LOCAL_TEST1     /Content-Disposition: attachment; filename=[a-zA-Z0-9._-]*\.gxs/
score LOCAL_TEST1 -50

Onde o .gxs era a extensão do anexo.

segunda-feira, 31 de outubro de 2011

TOEFL, tips and traps

Semana passada fiz a prova do TOEFL, na verdade ela não é muito difícil e não tem pegadinhas como dizem por aí, das palavras terminadas em -ed e -ing ou coisas do gênero, as perguntas exigem apenas que você tenha entendido o texto, mas os textos não são nem um pouco fáceis de ler, são todos extensos e o tempo disponível nem sempre é o suficiente (pelo menos para mim não foi, mas eu acho que sou um pouco lento para ler mesmo ;) ou melhor o tempo é muito curto, como já tinha lido sobre isso antes, eu nem perdi meu tempo lendo os textos eu fui direto nas perguntas e então procurava a passagem no texto e respondia caso contrário duvido que dê tempo de responder.
O lado bom do teste do TOEFL que inicia pelo reading, pois é muito tempo de leitura e concentração nas perguntas. Entre um texto e outro tive que parar um tempinho, pois os olhos cansam...
Depois vem o listening, uma coisa que eu não gostei é que nas perguntas o narrador fala MUITO claro, mas quando é o diálogo para responder as perguntas que vem logo após, o som já não é tão claro assim, eu sou meio surdo, por padrão, em inglês com o audio "piorado" do diálogos ajudou ainda mais para minha nota horrível ;)
Outra coisa MUITO ruim do listening é que não tem como trocar a resposta de uma questão já respondida.
Depois do intervalo, vem a parte pior... speaking.
Como todos iniciam juntos o teste e passam pelas mesmas etapas, no speaking vira um enrosco só... No centro que eu fiz em São José - SC, na sala de testes todos ficam próximo e em forma de círculo uns de frente para os outros eu não achei muito legal isso pois eu não me senti confortável para falar (não que fosse melhorar a minha performance se eu estivesse sozinho) e fica difícil de se concentrar nas perguntas, o tempo disponível para pensar o que responder é muito pouco, e para responder parece uma eternidade hehe.
Em algum lugar eu li que era bom ficar atrasado e escutar o que os outros falam para usar como resposta, acho que isso não funciona mais, pelo que escutei não pareceu nada com o teste que eu tinha.
A última parte do teste do TOEFL é o writing, são apenas duas perguntas, uma com um texto nada pequeno seguido de um listening também grande, e então tu tem que fazer um texto respondendo/defendendo o listening e/ou o texto 150 palavras pelo menos.
O segundo texto já é mais complicadinho (pelo tempo), tem que ter pelo menos 300 palavras, eles fornecem um assunto e você tem que fazer um "ensaio" (essay), o meu era para dizer o que eu achava sobre tal assunto (quando você vai fazer o check-in, tem que assinar um termo de compromisso que não vai nem comentar sobre a prova com outra pessoa).
Aqui um dos problemas é o tempo (sim eu sei que sou lento para pensar...), meu texto ficou muito simples, minha pontuação ficou bem baixa, aqui o bom é usar palavras difíceis é nessa parte que eles vão ver se tu sabe um pouco de gramática ou não...
O legal que no resultado eles dizem mais ou menos no que tu errou e como foi o desempenho não é apenas a pontuação final e deu...
Bom, eu gastei quase R$ 700 e não consegui tirar a pontuação que precisava (80), mas foi legal (e cansativo, caxias - floripa é uma BOA viagem..., comprovei que sou surdo em inglês, mas me impressionei que meu speaking é melhor que meu writing (não sei como mas tudo bem...).


terça-feira, 13 de setembro de 2011

Blocos de IPs alocados para o Brasil

Como saber quais os blocos de IPs alocados para o Brasil?
Segue a dica.

baixar a lista dos blocos de IPs que já foram delegados.
# wget ftp://ftp.lacnic.net/pub/stats/lacnic/delegated-lacnic-latest

# logaritmo copiado do site http://phodd.net/gnu-bc/bcfaq.html#bashlog
log() {
  local x=$1 n=2 l=-1;
  if [ "$2" != "" ];then
    n=$x;
    x=$2;
  fi;
  while ((x)); do
    let l+=1 x/=n;
  done;
  echo $l;
}

Assumindo que você está no mesmo diretório que baixou a lista da lacnic.
# grep BR delegated-lacnic-latest | grep ipv4 | awk -F'|' '{print $4, $5}' | while read ip mask; do m=$(log $mask); echo "$ip/$((32-$m))"; done

Tem alguns problemas que eu vi, mas não sei se é a lista que está desatualizada...
Exemplo os blocos: 200.20.0.0/16 200.96.0.0/13

Se utilizar o whois, retorna respectivamente os valores 200.20.0.0/21 200.96.0.0/16

terça-feira, 21 de junho de 2011

Mundo dos Livros

    A uma semana atrás comprei um livro no site http://www.mundolivros.com.br, normalmente eu
faço compra de livros na estante virtual, esse site eu não conhecia, mas como era um livro que eu
queria e nos outros lugares  que achei o preço estava terrivelmente mais caro resolvi arriscar.
   A navegação no site é extremamente lenta, com certeza era do site, pois testei da empresa que tem 50Mb e não mudou nada, para criar o usuário não foi um problema, as formas de pagamento são até interessantes, não é como na estante virtual que você faz o deposito bancário, lá tem a "possibilidade" de pagar por boleto (não tem como pagar via depósito), ou cartão, no cartão eu não quis arriscar, se desse problema no boleto eu teria menos prejuízo e dor de cabeça.
    Tive um certo receio, pois demorou um certo para o boleto ser "processado", e quando foi, recebi apenas um e-mail avisando que foi postado, mas não tinha o número de rastreio dos correios, tive que enviar 2 e-mails para receber um retorno, mas obtive, e com o número.
    Bom, me livro chegou aqui está ele.

Introdução à Programação Linear. Editora Campus, 3ª ed., 1988 Bregalda, P.F., Oliveira, A.F. e Bornstein


terça-feira, 14 de junho de 2011

Como se calcula a prestação do imóvel com variação pelo INCC? | Financiamento Imobiliário | Acerto de Contas | Economia, Política e Atualidades

Como se calcula a prestação do imóvel com variação pelo INCC? | Financiamento Imobiliário | Acerto de Contas | Economia, Política e Atualidades

Comprei um apartamento pela caixa, e "notei" que as prestações não aumentavam com juros simples e sim composto, dai achei esse site e vi o porque, que sacanagem esse imposto heim, o cara compra um cubículo e paga o valor de um mega apartamento....Além que aqui em Caxias é um absurdo o valor de terrenos e casas...
É bem interessante o blog, dêem uma olhada.

quinta-feira, 2 de junho de 2011

SVN: APR does not understand this error code

Instalei um servidor novo de subversion com apache2 e quando fui dar um commit recebi o erro:

amcorreia@host:~/repos/$ svn ci -m 'teste'
svn: Commit failed (details follow):
svn: Can't open activity db: APR does not understand this error code

Resolvi meu problema da seguinte forma:
-Alterei as permissões para o usuário do apache (www-data)
-Criei o diretório dav dentro do repositório (caso não exista)

root@host:/var/lib/svn/repos# pwd
/var/lib/svn/repos
root@host:/var/lib/svn/repos# ls
README.txt conf db format hooks locks
root@host:/var/lib/svn/repos# mkdir dav
root@host:/var/lib/svn/repos# chown www-data:www-data -R *
root@host:/var/lib/svn/repos# find -type f -exec chmod 550 {} \;
root@host:/var/lib/svn/repos# find -type d -exec chmod 770 {} \;

E tudo funcionou.

segunda-feira, 23 de maio de 2011

Javascript PC Emulator - Technical Notes

Javascript PC Emulator - Technical Notes

Hoje pesquisando sobre memória, achei algo muito legal, um kernel emulado via Javascript, o código fonte do emulador ainda não é disponibilizado, mas no site podemos testar (roda local claro). A velocidade é bem aceitável.

segunda-feira, 9 de maio de 2011

vivo 3g

eeeeeba! finalmente depois de 5 anos sem internet em casa, assinei o mega ultra hiper plano da vivo 3G.
É uma beleza mesmo viver no brasil, pagar R$ 30/mês para ter uma bosta de internet e ainda ter uma limitação de transferência em 150Mb, isso é o cúmulo, eu no primeiro dia do plano estourei esse limite e olha que foi uma navegação normal, apenas olhei meu e-mails e fiz umas pesquisas para fazer um trabalho da faculdade.
Se não existisse a maldita venda casa de internet (net + telefone), poderia pegar uma conexão decente por um preço melhor, mas... estamos no brasil.. ah eu teria a opção de pegar a NET (tv a cabo), mas adivinhem, não tem cabo no meu bairro, que maravilha não?! isso que eu moro a ~5km do centro da cidade do lado da UCS para ser mais preciso.
Agora começa a peleja para fazer funcionar no meu ubuntu.

quinta-feira, 28 de abril de 2011

IPv6 e o suporte ao cliente

Hoje, fui olhar meu blog e como sigo meu camarada Marcio, vi o post dele sobre IPv6.
Isso me fez lembrar a uns anos atrás, quando eu imaginava como seria o uso do mesmo, sabemos que vai aumentar drásticamente a quantidade de endereços, mas e a forma com é escrito?
Para quem trabalha com informática até não será tanto problema (convenhamos que não é algo prático de lembrar de cabeça, ou mesmo ditar para outras pessoas), mas agora imagine quem trabalha com suporte (assim como eu), que muitas vezes tem que conversar com pessoas que nem o formato atual de IPs consegue nos dizer, e no telefone então? se a pessoa errar uma letra será um parto de burro corrigir.
Enfim, dá de ter uma ideia de que teremos muitos problemas... hehehe
Mas o legal é que dá de escrever frases nos IPs, f0da:5e::01, entre outras, huahuahuah

sexta-feira, 8 de abril de 2011

Apagar histórico de conversas no openfire

Para quem usa o plugin de log de conversas no openfire e quer apagar as conversas, eu
escrevi um mini-script para apagar, ele apaga apenas de um determinado usuário.

Ex:
# ./ofhistdel.py zequinha@ficou.sem.log




*****
Atualização (2014-04-30): Alterado nome do repositório
https://github.com/amcorreia/openfire-cli

Atualização (2012-08-28): O código está hospedado na minha conta do Github
https://github.com/amcorreia

quarta-feira, 16 de fevereiro de 2011

iftop

Guia básico de utilização do iftop

para utilizar, chamar na linha de comando
# iftop

IP:PORTA Fluxo IPORTA MT1 MT2 MT3
200.200.200.200:51774 <=> 66.150.117.32:443 30.6Kb 30.6Kb 30.6Kb
200.200.200.200:51570 <=> 66.150.117.32:443 30.3Kb 30.3Kb 30.3Kb

Fluxo é entrada/saída de tráfego senão aparecerá apenas '=>' ou '<=', dependendo das opções escolhidas. Sendo que nesse caso '<=>' indica que é o somatório do tráfego de upload/download, que pode
ser alterado pressionando a tecla 't'.
As colunas IP:PORTA não é garantido que na primeira coluna sempre terá os IPs
locais, mas nesse caso sim. A configuração padrão não mostra as portas, mas
é possível configurar o iftop para mostrar.
As colunas MTx, indicam a média de trafego nos períodos de 2, 10 e 40 segundos
respectivamente.

Para monitorar a rede interna utiliza o comando (nesse caso o nome da minha placa de
rede é int, mas poderia ser qualquer outra coisa, eth0 eth1 etc)
# iftop -i int

Para garantir que na primeira coluna de IP:PORTA apareçam apenas IPs da rede
interna você pode usar
# iftop -i int -F 192.168.1.0/24


Caso precise monitorar apenas uma estação
# iftop -i int -f 'host 192.168.1.170'

Pode fazer o mesmo por portas
# iftop -i int -f 'port 80'

Ou uma combinação dos dois
# iftop -i int -f 'host 192.168.1.170 and port 80'

O mesmo filtro pode ser feito quando esta no modo de
visualização do iftop com a tecla 'f' depois é só entrar com
o filtro sem as aspas.

Como é meio chato toda hora 'configurar' o iftop eu criei um arquivo de configuração.

amcorreia@chronos:$ cat ~/.iftoprc
interface: ext
dns-resolution: no
port-resolution: no
port-display: on
line-display: one-line-both
max-bandwidth: 2M

quinta-feira, 27 de janeiro de 2011

Python: variáveis de ambiente

Para exportar as variáveis de ambiente no python podemos utilizar o seguinte código:

import os
print os.environ

A variável os.environ terá todos as variáveis de ambiente para pegar apenas uma podemos usar

print os.environ['LOGNAME']

Que imprimirá o usuário logado.

quarta-feira, 26 de janeiro de 2011

MathJax

A um tempo atrás postei como instalar o MathJax no blogger, mas utilizava o servidor do próprio MathJax o que não é aconselhado pois sobrecarrega o servidor deles, vi que um cara disponibilizou no hosting dele o MathJax, como no meu também está sobrando banda, resolvi fazer o mesmo.

Para utilizar basta usar:


<script type="text/javascript" src="http://mathjax.zarathustra.com.br/MathJax.js"></script>



No blogger já utilizo o do meu servidor.

Código de teste.


\[\begin{aligned}
\int \int_{0}^{\infty} x^2 dx \\
\end{aligned} \]

quarta-feira, 19 de janeiro de 2011

Liberar apenas alguns videos do youtube

Liberar apenas alguns videos do youtube

Precisei liberar apenas um video do youtube mas mantendo todo o resto
do site bloqueado, pesquisei algum tempo no google mas não encontrei
uma forma de fazer essa liberação, o squid que eu tenho a politica
padrão é liberar tudo para os usuários autenticados, mas os bloqueios
são feitos via squidguard com as listas do shallalist, que tem o youtube
cadastrado na seção movies - portanto, bloqueia o acesso).

No squid.conf eu adicionei as seguintes ACLs:


acl ytb_dom dstdomain .youtube.com .ytimg.com
acl ytb_video_re url_regex -i aoiP-WK3V8o generate_204 videoplayback watch_as3-vflqEsLb3.swf
redirector_access deny ytb_dom ytb_video_re
http_access allow ytb_dom ytb_video_re
acl ytb_css url_regex -i \.css$ \.js$ \.jpg$
redirector_access deny ytb_css ytb_dom
http_access allow ytb_css ytb_dom


ytb_dom contém os domínios do youtube (pelo menos os que eu vi quando acompanhei os logs)
aoiP-WK3V8o é o video que eu quero liberar

Liberei também os arquivos javascript e CSS do youtube, apenas para ficar com uma aparencia melhor
mas isso faz com que mostre os outros videos que "podem" ser assistidos.

Com uma pequena alteração é possível bloquear pelo menos as imagens dos videos que aparecem.
acl ytb_video_jpg url_regex \/vi\/
http_access deny ytb_css ytb_dom ytb_video_jpg
http_access allow ytb_css ytb_dom

Mais algumas alterações e o arquivo final ficou assim:

acl ytb_video_re url_regex generate_204 videoplayback watch_as3-vflqEsLb3.swf "/etc/squid/acls/youtube_video.txt"
acl ytb_dom dstdomain .youtube.com .ytimg.com
redirector_access deny ytb_dom ytb_video_re
http_access allow ytb_dom ytb_video_re
acl ytb_css url_regex -i \.css$ \.png$ \.jpg$ \.js$


redirector_access deny ytb_css ytb_dom


# Bloquear as imagens dos videos (sugestoes) do lado direito
acl ytb_video_jpg url_regex \/vi\/

http_access deny ytb_css ytb_dom ytb_video_jpg
http_access allow ytb_css ytb_dom

Não consegui remover completamente a barra lateral direita (vulgo sugestões) de videos,
mas dessa forma o usuário não poderá nem pesquisar por videos.