Blog de casa nova

Novo domínio, mesmo blog... :D

Incrível minha regularidade com o blog! Atualizado regularmente de 6 em 6 meses... :P

Abandono

Estou precisando parar para tirar as teias de aranha do Blog... :(

Infelizmente não vai ser hoje...


Aguardem novidades em breve... Espero... :P

Blog de volta ao ar

Depois de passar um tempo fora do ar (deu algum problema no cadastro do meu domínio no blogger.com :S ), eu finalmente tomei vergonha na cara e dei uma fuçada para ver se resolvia...
Coisa simples, foi só desativar e re-ativar o domínio personalizado.

Aos fãs do FwBuilder, o Ubuntu Gutsy já possui pacotes da versão 2.1.x do fwbuilder.
Até o momento a última versão disponível do pacote é a 2.1.12, sendo que o fwbuilder está na versão 2.1.13.

A versão 2.1.12 possui a nova funcionalidade de importar regras de um script de iptables, enquanto a versão 2.1.13 é uma versão de correção de bugs, incluindo uma mudança no compilador de regras do PacketFilter, para refletir as alterações sofridas no OpenBSD 4.1.


Abraço a todos...

PS: Espero melhorar a freqüência dos meus posts e diversificar um pouco os assuntos... :)

Nova versão do Firewall Builder

Eu sei, eu sei, ainda estou devendo o tutorial!

Enquanto ele não vem, fiquem com os links para a nova versão do FwBuilder (2.1.11):

http://ufpr.dl.sourceforge.net/sourceforge/fwbuilder/fwbuilder-2.1.11.tar.gz
http://ufpr.dl.sourceforge.net/sourceforge/fwbuilder/libfwbuilder-2.1.11.tar.gz


Abração para todos!

To Whom It May Concern...

"À quem, interessar, possa..."

A Sabrina estava querendo assistir "Sex in the City" na maquina dela, com Ubuntu 7.04 recém instalado. Infelizmente a placa de video (uma VIA S3 Unichrome Pro onboard) não queria cooperar.

Fuça daqui, fuça de lá, man page aqui... Pronto, achei a opção!
O xorg.conf ficou assim:


Section "Device"
Identifier "VIA Technologies, Inc. S3 Unichrome Pro"
Driver "via"
(...)
Option "DisableIRQ" "true"
Option "NoXVDMA" "true"
EndSection
Essas opções eu encontrei na manpage via(4).

Essa foi uma rapidinha só para dar uma movimentada no blog... ;)

Boa noite à todos.

Criando pacotes para o Firewall Builder no Ubuntu

Quem diria... Terceiro post em três meses! Estou ficando bom nesse negócio de blogar... HeHeHe

No post anterior, eu passei algumas dicas para a compilação do FwBuilder no Ubuntu. Versão nova do FwBuilder, post novo. Desta vez explicando como criar um pacote .deb para manter os arquivos organizados (ou pelo menos catalogados...)

O processo é basicamente o mesmo, porém ao invés de instalarmos os arquivos diretamente nos diretórios /usr/..., iremos instala-los em um diretório temporário que será utilizado para gerar os pacotes. O procedimento pode ser utilizado para gerar pacotes para qualquer programa, com pequenas modificações. Quem sabe no próximo post eu não falo sobre como criar um repositório ?


Chega de papo, vamos botar a mão na massa.
Desta vez, a ultima versão disponivel é a 2.1.10. Os arquivos podem ser encontrados em:
[1] -
http://ufpr.dl.sourceforge.net/sourceforge/fwbuilder/fwbuilder-2.1.10.tar.gz
[2] -
http://ufpr.dl.sourceforge.net/sourceforge/fwbuilder/libfwbuilder-2.1.10.tar.gz

Compilando o LibFwBuilder:
O procedimento de compilação é basicamente o mesmo:
$tar xzf libfwbuilder-2.1.10.tar.gz
$cd libfwbuilder-2.1.10
$./configure --with-lwres --with-advanced-dns --prefix=/usr --sysconfdir=/etc
$make
Agora as coisas mudam um pouco de figura, ao invés de simplesmente rodar um "make install", iremos adicionar o parametro "DDIR" ao comando, para especificarmos o destino dos arquivos:
#make install DDIR=/tmp/libfwbuilder_2.1.10-dev
#make install DDIR=/tmp/libfwbuilder_2.1.10
O diretório
libfwbuilder_2.1.10-dev irá conter os arquivos necessários para compilar o fwbuilder e seu pacote poderá ser removido após a compilação do mesmo.

"Limpando" os diretórios:
#cd /tmp/libfwbuilder_2.1.10
#rm usr/bin/ usr/include/ -rf
#mkdir DEBIAN
#cat > DEBIAN/control <<>Package: libfwbuilder
>Priority: optional
>Section: libs
>Maintainer: Andre Sencioles [asenci@gmail.com]
>Architecture: i386
>Version: 2.1.10
>Depends: libc6 (>= 2.4-1), libgcc1 (>= 1:4.1.0), libsnmp9 (>= 5.2.1.2-3), libssl0.9.8 (>= 0.9.8a-1), libstdc++6 (>= 4.1.0), libwrap0, libxml2 (>= 2.6.24), libxslt1.1 (>= 1.1.15), zlib1g (>= 1:1.2.1)
>Description: Firewall Builder API library and compiler framework
> Firewall Builder consists of a GUI and set of policy compilers
> various firewall platforms. It helps users maintain a database of
> objects and allows policy editing using simple drag-and-drop
> operations. GUI generates firewall description in the form of XML
> file, which compilers then interpret and generate platform-specific
> code. Several algorithms are provided for automated network objects
> discovery and bulk import of data. The GUI and policy compilers are
> completely independent, this provides for a consistent abstract model
> and the same GUI for different firewall platforms.
>EOF

#cd /tmp/libfwbuilder_2.1.10-dev
#rm usr/lib/ usr/share/ -rf
#mkdir DEBIAN
#cat > DEBIAN/control <<>Package: libfwbuilder-dev
>Priority: optional
>Section: libdevel
>Maintainer: Andre Sencioles [asenci@gmail.com]
>Architecture: i386
>Version: 2.1.10
>Depends: libc6 (>= 2.4-1), libgcc1 (>= 1:4.1.0), libsnmp9 (>= 5.2.1.2-3), libssl0.9.8 (>= 0.9.8a-1), libstdc++6 (>= 4.1.0), libwrap0, libxml2 (>= 2.6.24), libxslt1.1 (>= 1.1.15), zlib1g (>= 1:1.2.1)
>Description: Firewall Builder API library and compiler framework
> Firewall Builder consists of a GUI and set of policy compilers
> various firewall platforms. It helps users maintain a database of
> objects and allows policy editing using simple drag-and-drop
> operations. GUI generates firewall description in the form of XML
> file, which compilers then interpret and generate platform-specific
> code. Several algorithms are provided for automated network objects
> discovery and bulk import of data. The GUI and policy compilers are
> completely independent, this provides for a consistent abstract model
> and the same GUI for different firewall platforms.
>EOF
Criando e instalando os pacotes:
#cd /tmp
#dpkg-deb -b libfwbuilder_2.1.10 libfwbuilder_2.1.10.deb
#dpkg-deb -b libfwbuilder_2.1.10-dev/ libfwbuilder_2.1.10-dev.deb
#dpkg -i libfwbuilder_2.1.10.deb libfwbuilder_2.1.10-dev.deb
Compilando o FwBuilder:
#tar xzf fwbuilder-2.1.10.tar.gz
#cd fwbuilder-2.1.10
#./configure --prefix=/usr --sysconfdir=/etc
#make
#make install DDIR=/tmp/fwbuilder_2.1.10
Limpando o diretório:
#cd /tmp/fwbuilder_2.1.10
#mkdir DEBIAN
#cat > DEBIAN/control <>Package: fwbuilder
>Priority: optional
>Section: net
>Maintainer: Andre Sencioles [asenci@gmail.com]
>Architecture: i386
>Version: 2.1.10
>Depends: libc6 (>= 2.3.4-1), libfwbuilder (= 2.1.10), libgcc1 (>= 1:4.0.2), libqt3-mt (>= 3:3.3.5), libsnmp9 (>= 5.2.1.2-3), libssl0.9.8 (>= 0.9.8a-1), libstdc++6 (>= 4.0.2-4), libwrap0, libx11-6, libxml2 (>= 2.6.22), libxslt1.1 (>= 1.1.15), zlib1g (>= 1:1.2.1)
>Description: Firewall Builder
> Firewall Builder consists of a GUI and set of policy compilers for
> various firewall platforms. It helps users maintain a database of
> objects and allows policy editing using simple drag-and-drop
> operations. GUI generates firewall description in the form of XML
> file, which compilers then interpret and generate platform-specific
> code. Several algorithms are provided for automated network objects
> discovery and bulk import of data. The GUI and policy compilers are
> completely independent, this provides for a consistent abstract model
> and the same GUI for different firewall platforms.
>EOF
Criando e instalando o pacote:
#cd /tmp
#dpkg-deb -b fwbuilder_2.1.10/ fwbuilder_2.1.10.deb
#dpkg -i fwbuilder_2.1.10.deb
Conclusão:
O FwBuilder pode ser iniciado com o comando: fwbuilder
Opcionalmente, pode-se remover o pacote libfwbuilder-dev.

Encerrando mais um post, ainda devendo o tutorial de como utilizar o FwBuilder, um forte abraço à todos que freqüentam o meu blog (Kadu?).

Compilando o FwBuilder no Debian/Ubuntu

O Firewall Builder[1], para quem não conhece, é uma interface orientada à objetos para manipulação de regras de filtros de pacote.
Após montadas as regras, ele gera um arquivo XML com os relacionamentos dos objetos. Esse arquivo pode ser compilado (pelo próprio FwBuilder) em scripts para IPTables, IPFilter, IPFW, PF, Cisco PIX, entre outros.

Infelizmente, os pacotes oficiais disponibilizados para Debian estão bem desatualizados (versão 2.0) e não tem algumas funcionalidades incorporadas nas ultimas versões (2.1).
Ao tentar compilar o codigo fonte no Ubuntu, me deparei com alguns problemas como localização de arquivos e falta de bibilhotecas de desenvolvimento. Como todo mundo gosta de compartilhar as suas receitas, eu resolvi postar um mini-howto (ao melhor estilo "Ana Maria Braga") com dicas de como eu consegui compilar o FwBuilder no Ubuntu. Como os pacotes estão aproximadamente na mesma versão, as dicas devem valer também para o Debian Etch, não sei dizer quanto ao Debian Sarge (Ei, o FwBuilder é uma aplicação que roda em janela, logo, deve ser executado em uma maquina com ambiente gráfico, um servidor não deve ter ambiente grafico, logo, você deve utiliza-lo no seu desktop, desktops não devem utilizar Debian Stable! :P ).

Para começar, precisamos instalar alguns pacotes que serão nescessários para a compilação do codigo fonte:

Os pacotes nescessários para a compilação são os seguintes:
  • libsnmp9
  • libbind-dev
  • libqt3-mt-dev
  • libsnmp9-dev
  • libxslt1-dev
Quem ainda não possuir instalado, deve instalar também o pacote virtual "build-essential". Ele irá instalar os pacotes básicos necessários para compilar qualquer codigo fonte escrito em C ou C++, incluindo o kernel (para utilizar o "make menuconfig" você irá precisar do "libncurses5-dev" também).

O seguinte comando deverá cuidar de tudo:
# aptitude install build-essential libsnmp9 libbind-dev libqt3-mt-dev \
libsnmp9-dev libxslt1-dev

Caso você não tenha habilitado a conta de root no seu Ubuntu (isso não quer dizer que você deva utilizar o usuário root para executar tarefas do dia-a-dia! >:( ), utilize o comando sudo antes do comando acima:
$ sudo aptitude install build-essential libsnmp9 libbind-dev \
libqt3-mt-dev libsnmp9-dev libxslt1-dev
As barras invertidas ("\") indicam que não deverá haver quebra de linha no meio do comando.
O sifrão ("$") indica que o comando pode ser executado como usuário comúm (não-root).
O sustenido, cerquilha, picas ou qualquer outro nome bizarro que você esteja acostumado a chamar o simbolo de jogo-da-velha ("#") indica que o comando deve ser executado como root.

Caso a instalação falhe, verifique se o banco de dados do apt está atualizado:
# aptitude update
$ sudo aptitude update
Observação importante:
Antes que alguem diga que o Gentoo ou o Slackware já instala as bibilhotecas de desenvolvimento junto com os pacotes principais, eu digo: No Debian/Ubuntu eu posso optar por não instala-las e/ou remove-las depois de terminar a compilação! Nhe nhe nhe nhé!! :P

Adiquirindo o código fonte:

O codigo fonte do FwBuilder está disponivel para download na pagina oficial do projeto[2].
Ao escrever este post, a versão mais atual do FwBuilder é a 2.1.8, que pode ser encontrada nos links:
http://ufpr.dl.sourceforge.net/sourceforge/fwbuilder/fwbuilder-2.1.8.tar.gz
http://ufpr.dl.sourceforge.net/sourceforge/fwbuilder/libfwbuilder-2.1.8.tar.gz

Mais folga que isso, só se eu enviar um CD com os arquivos! :P

Compilando o código fonte:

Com o código fonte já em mãos, vamos iniciar a compilação pelo libfwbuilder, visto que este será necessário para a compilação do fwbuilder:
Entre no diretório onde você colocou os pacotes "tar.gz" e execute os seguintes comandos:
$tar xzf libfwbuilder-2.1.8.tar.gz
$cd libfwbuilder-2.1.8
$./configure --with-lwres --with-advanced-dns --prefix=/usr --sysconfdir=/etc
$make
#make install
Depois de terminada a compilação e a instalação do libfwbuilder, é a vez do fwbuilder:
$tar xzf fwbuilder-2.1.8.tar.gz
$cd fwbuilder-2.1.8
$./configure --prefix=/usr --sysconfdir=/etc
$make
#make install

Pronto. Agora é só executar o comando "fwbuilder" e se divertir...
Eu tenho que documentar a administração da aplicação para uso interno aqui da empresa, então eu devo estar postando um mini-manual de como operar o FwBuilder em breve.


Um grande abraço à todos os meus visitantes, que atualmente devem se resumir ao Kadu...


PS:
Viram só como eu usei a tática de hipnose da Globo? Algo como: "Continue me dando audiência ou você irá ficar sem saber quem matou Odete Reutemann!".

[1] - http://www.fwbuilder.org/
[2] - http://www.fwbuilder.org/archives/cat_downloads.html