terça-feira, 27 de setembro de 2011

E o troféu sem noção vai para ...

Quando pedir ajudar em forums, nunca plublique suas chaves!

https://forums.aws.amazon.com/thread.jspa?threadID=45204

Eu me pergunto porque alguém quer aumentar a segurança com uma VPN se não conhece nem os princípios básicos de chaves?

segunda-feira, 15 de agosto de 2011

Spam na vida Real

Não tem nada mais chato que receber spam em papel. Seja no sinal ( semáfaro, farol, sinaleiro), seja em casa.

Este pequno truque visa pelo menos descobrir quem são os picaretas que divulgam seu endereço físico para terceiros.

A ideia é simples, e funciona melhor se você tiver acabado de se mudar. Para cada local que fornecer seu endereço, coloque no campo complemento um identificador (ID).

Depois, anote em uma planilha o ID e para quem você forneceu o endereço, além da data.

Exemplo:

Rua Dos Não sei das quanta, 1234 Apt 201 ID02 Cidade Tal, MG

Na sua planilha:

ID   Data      Nome
01    12/8/11 Banco Semvergonnha
02   15/8/11  Loja do João


Quando receber um spam, localize o ID na correspondência e verifique na tabela pra saber quem foi o safado...



Mudança de paradigma sobre Antivirus


Particularmente, não uso antivirus algum. Boas práticas são mais eficientes.

 http://g1.globo.com/tecnologia/noticia/2011/08/talvez-esteja-na-hora-de-desinstalar-o-antivirus-de-seu-computador.html

 



quinta-feira, 21 de julho de 2011

Novo desafio

Pessoal, parti para um novo desafio, me tornei CIO da mais nova empresa de TI e Cloud Computing de Belo Horizonte.

Conheçam a www.wh1.com.br a 1ª reseller Google de Minas Gerais.



segunda-feira, 18 de julho de 2011

Complicar pra que?

Recentemente estou numa fase de simplificação. Após oito anos trabalhando com Tecnologia da Informação, Administração de redes e Segurança, percebi que as coisas podem ser mais simples, e, consequentemente, mais baratas.

Uma das maneiras é utilizar ferramentas robustas, de empresas notavelmente sólidas, mas como serviço. Atualmente, a idéia de Cloud Computing está se encaixando como uma luva.

Uma das coisas aparentemente simples, mas que é de uma enorme complexidade é o email. No mundo corporativo, o email é uma forma oficial de comunicação, que serve hoje, como aceite de propostas, fechamento de negócios e até como prova jurídica.

Deve existir uma maneira mais simples de manter um email eficiente em uma empresa, sem ter que ficar monitorando logs de smtp, gerenciando quotas, e migrando arquivos pst de um lado para o outro.

A busca continua!

sábado, 23 de abril de 2011

DynDNS no OpenWrt

Olá pessoal,

Como todos já deve ter percebido, sou super fã do OpenWrt e outros firmwares alternativos para roteadores wireless.

Hoje fui colocar o Dyndns pra funcionar e esbarrei num probleminha e vou postar aqui como resolver.

A maneira mais fácil é utilizar o pacote ndyndns. Basta instala-lo com o comando:

opkg update
opkg install ndyndns

Depois, basta copiar o arquivo de configuração modelo e edita-lo.

cd /etc/ndyndns
cp ndyndns.conf.sample ndyndns.conf
vim ndyndns.conf

Depois, basta habilitar (e iniciar, caso não queira dar boot) o serviço pela interface web em Services - Initscripts.

Até ai tudo bem, o problema é que eu utilizo um modem ADSL roteado, isto é ele mesmo já faz a autenticação e já oferece uma rede privada na porta Ethernet. Em geral estes modems funcionam como bridge e o usuario tem que fazer PPPoE no computador ou roteador.  Com isso, minha porta WAN do roteador wireless tem na verdade uma outra rede privada, como se fosse uma DMZ.

O NAT das portas pra dentro eu resolvi coloando o IP da WAN do roteador como o "DMZ Host IP" no modem. Com isso, todas portas externas são mapeadas para o Roteador Wireless.


O problema é que o ndyndns, por padrão, pega o IP da interface WAN. Com isso, o Dyndns era atualizado com meu IP privadp :-p.

Pra resolver, bastou editar o arquivo de initscript do ndydns:

vim /etc/init.d/ndyndns

Comentei a linha original e criei outra utilizando o parâmetro -r, que irá pegar o Ip externo com o auxilio do host remoto do Dyndns.
Ficou assim:

#/usr/sbin/ndyndns -c $CHROOT -f $CONFIG -i $(config_get wan ifname) $OPTIONS

    /usr/sbin/ndyndns -c $CHROOT -f $CONFIG -r  $OPTIONS


Depois disso, bastou reiniciar o serviço que tudo funcionou maravilhosamente bem.

Em tempo. Não estava a fim de mexer com firmware de modem pra funcionar como bridge.... Além disso, desta forma, o modem fica mais flexivel, caso eu precise dele desta forma.

Até mais!

sábado, 19 de março de 2011

USB no DIR-320 com OpenWrt

Depois das férias em janeiro e um fevereiro bem corrido, segue mais um pequeno post que pode ser útil para alguém.

Pra quem está "brigando" com a porta USB do roteador DIR-320 no OpenWrt, ai vai o macete.

É necessário instalar os pacotes para os módulos OHCI_HCD e EHCI_HCD. Em princípio, apenas o EHCI seria necessário, mas parece que este driver não reconhece o hardware do DIR-320...

Nao instale o UHCI_HCD, se não, não funciona nada.


opkg update
opkg install kmod-usb2
opkg intall kmod-usb-ohci

Se for usar algum pendrive:

opkg install kmod-usb-storage
opkg install kmod-fs-vfat
opkg-install kmod-fs-ntfs

Se for usar impressora:
opkg install kmod-usb-printer
opkg install luci-app-p910nd
opkg install p910nd

Pelo Luci será possível habilitar o p910 ( print spooler)


Referência:
http://wiki.openwrt.org/toh/d-link/dir-320?s[]=dir&s[]=320

quarta-feira, 29 de dezembro de 2010

Como autenticar o squid no LDAP

Olá pessoal,

Ai vai uma dica interessante pra quem quiser autenticar o Squid no LDAP, inclusive Active Directory, sem ter que colocar a máquina Linux no domínio e usar aquele winbind chato.


Crie um script em PHP chamado, por exemplo /etc/squid/authldap.php e marque ele como executável com chmod 755 /etc/squid/authldap.php.

Segue o conteudo:

#!/usr/bin/php

$ldaphost="192.168.0.1";
$ldapport="389";

$ldapconn = ldap_connect($ldaphost, $ldapport)
           or die("Could not connect to $ldaphost");


if ($ldapconn) {

        # Loop infito - cada requisicao do proxy é 
        while(!feof(STDIN)){

                $ldapbind = false;
                # toma a linha e separa usuario e senha
                $line = trim(fgets(STDIN));
                list($user,$pass) = split(" ",$line);
       
                 // binding to ldap server
                $ldapbind = ldap_bind($ldapconn, $user."@seudominiodoad.com.br", $pass);
                #
                # Se ele nao existir, ja retorna ERR
                if($ldapbind){
                        echo "OK\n";
                }
                else{
                        echo "ERR\n";
                }
        }
      }      
?>








No squid.conf utilze o script acima para autenticar:

Adicione as linhas abaixo,

auth_param basic realm   Entre com seu login e senha da rede
auth_param basic program /etc/squid/authldap.php
acl password proxy_auth REQUIRED


Altera a linha correspodente, mais no fim do squid.conf, como se segue. Nao deixe outros "http_access" com o nome da sua rede sobreporem a regra de uso de senha.

http_access allow password


Qualquer dúvida entrem em contato!

terça-feira, 28 de dezembro de 2010

Como um script se suicida?

Como um script se suicida?

rm -f $0 && kill -9 $$

Explicação:
$0 expande para o nome do próprio script
$$ é o PID do script rodando

quinta-feira, 9 de dezembro de 2010

Como compilar o ESD para AR71xx


O ESD é um software muito interessante. Ele permite que você "envie" o som via TCP/IP para tocar em computador remoto. O PulseAudio é compatível com ele, o que torna as coisas bem legais, como poder mandar tocar musicas no meu amplificador de potência estando em qualquer parte da casa sem precisar conectar cabos ao notebook. Como utilizo um roteador com placa USB, resolvi comprar uma dessas placas de audio USB baratinhas e tornar o router um sound server.

Como encontrei o esd pre-compilado somente para processadores Broadcom ( plataforma MIPSEL), tive que compilar o esd para o processador Atheros AR71xx (plataforma MIPS) do TP-Tink WR-1043ND.

Depois de brincar bastante com o DD-WRT, decidi que seria hora de migrar para o OpenWrt, por ser mais versátil e menos "engessado". O DD-WRT é ótimo, mas o OpenWrt é, digamos, mais "hacker friendly". Só peca na interface web, mas usando o X-Wrt achei até melhor que o DD-WRT.

O primeiro passo foi baixar os fontes do OpenWrt, na versão BackFire 10.03, pois contem todos os compiladores e ferramentas necessárias para compilar cruzado. Descompactei o fonte dentro da pasta ~/src do meu home, mas você pode ajustar para o caminho que desejar. Depois de ter as ferramentas instaladas, passei para a compilação dos softwares. É possível criar um pacote, mas isso vai ficar pra uma outra hora, pois exige um pouco mais de estudo...

Em seguida, baixei o fonte do audiofile-0.2.7, que é uma lib necessária para o ESD.

Usei o script abaixo para compilar.
#!/bin/bash
export PATH=$HOME/src/backfire_10.03/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/bin:$PATH
export CC=mips-openwrt-linux-uclibc-gcc
export LD=mips-openwrt-linux-uclibc-ld

./configure --prefix=/usr \
--without-libiconv-prefix \
--without-libintl-prefix \
--disable-nls \
--program-transform-name="" \
--host=mips \
--target=mips-openwrt-linux-uclibc
make




Depois, baixei o fonte do esound-0.2.8, e de modo similar, utilizei o script abaixo. Note que tive que adequar os caminhos para a libaudiofile, compilada a pouco.


#!/bin/bash
export PATH=$HOME/src/backfire_10.03/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/bin:$PATH
export CC=mips-openwrt-linux-uclibc-gcc
export LD=mips-openwrt-linux-uclibc-ld

export AUDIOFILE_CFLAGS="-I $HOME/src/audiofile-0.2.7/libaudiofile"
export AUDIOFILE_LIBS="-L $HOME/src/audiofile-0.2.7/libaudiofile/libaudiofile.la"

./configure --prefix=/usr \
--without-libiconv-prefix \
--without-libintl-prefix \
--disable-nls \
--enable-arts=no \
--enable-alsa=no \
--program-transform-name="" \
--includedir=$HOME/src/audiofile-0.2.7/libaudiofile \
--libdir=$HOME/src/audiofile-0.2.7 \
--host=mips \
--target=mips-openwrt-linux-uclibc

make

Com isso, temos o binário chamado esd, que pode ser transferido para o router via scp, por exemplo.

Para utilizá-lo, uso o seguinte comando na inicialização:

/opt/bin/esd -tcp -public -nobeeps &


Compilei também o aumix, que é um mixer de linha de comando. O som fica no máximo por padrão, o que pode ser um inconveniente. O procedimento é o mesmo.

#!/bin/bash
export PATH=/home/jones/src/backfire_10.03/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/bin:$PATH
export CC=mips-openwrt-linux-uclibc-gcc
export LD=mips-openwrt-linux-uclibc-ld

./configure --prefix=/usr \
--without-gpm \
--without-sysmouse \
--without-libiconv-prefix \
--without-libintl-prefix \
--without-gtk \
--disable-nls \
--host=mips \
--target=mips-openwrt-linux-uclibc \
--libdir=$HOME/src/backfire_10.03/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/lib/ \
--includedir=$HOME/src/backfire_10.03/staging_dir/toolchain-mips_r2_gcc-4.3.3+cs_uClibc-0.9.30.1/usr/include/
make

A partir de então, basta apontar o player para utilizar o esd. O mplayer e o audacity são  dois que sei que funcionam. Ainda estou tentando colocar o PulseAudio para usar o ESD, mas ainda não funcionou. Com isso, será possível redirecionar o som de qualquer aplicativo que utilize o som padrão do Ubuntu.


Nota Importante

O conteúdo deste blog foi desenvolvido por mim e não foi copiado de outros locais, embora alguns poucos tópicos tenham sínteses e adaptações de outras fontes, que neste caso, serão referenciadas para se dar o devido crédito.
A reprodução é permitida desde que citada a fonte e para fins não comerciais. É proibido o uso para fins comercias sem a expressa autorização do autor.
Embora o conteúdo aqui apresentado seja testado pelo autor e/ou passado por sua aprovação, não é oferecida nenhuma garantia de que tudo funcionará corretamente ou não irá danificar os sistemas envolvidos, pois o sucesso dependerá do ambiente e/ou conhecimento do leitor.
Ao utilizar este blog, para qualquer fim, o leitor concorda com estes termos e isenta o autor de qualquer responsabilidade, ficando o uso do conhecimento aqui apresentado por sua conta e risco.
Caso discorde destes termos, gentileza fechar esta página imediatamente.

Copyright Jonathan Araújo 2010