Você está na página 1de 100

Scribus AdBlock

Editoração eletrônica no Linux O fim da propaganda na Internet

NÚMERO 6

não contém CD
exemplar de cortesia
LINUX MAGAZINE
NÚMERO 6

SuSE 9.2 BR
Mantenha-se a salvo!

SEGURANÇA
Fluxbox
Linux de bolso
Implemente uma bridge

PaX
Gerencie regras de firewall

Firefox
Firewall fácil com

Shorewall
Guarddog e Shorewall
Guarddog
Firefox
Saiba mais sobre o navegador
Firewall GUIs

que está agitando a Internet


Veja também:
Bridgewall

GUIs para Firewalls


Proteja a memória com PaX
Linux em um “chaveiro” USB
Segurança

Brasil R$14,90
Europa € 6,50

Fluxbox: leve, rápido, prático Edição Número 6 Ano II

Tutorial de compilação cruzada


00006

9 771806 942009

W W W. L I N U X M A G A Z I N E . C O M . B R
100

95

O banco de dados mais 75

consumido no mundo 25

30 mil downloads por dia!


0

5 milhões de instalações!
O MySQL é um banco de dados voltado para aplicações de missão crítica, com altos
volumes, disponibilizado gratuitamente para aplicações GPL e com baixo
custo de licenciamento para aplicação não GPL (sem limite de usuários, processadores e
upgrades).

Atualmente o MySQL é o banco de dados de código aberto mais popular e fácil de


administrar do mundo, com mais de 5 milhões de instalações entre websites,
datawarehouse, aplicações comerciais e outras tantas. Usuários como Yahoo!Finance,
MP3.com, Motorola, NASA, Silicon Graphics e Texas Instruments já usam o MySQL.

Segundo pesquisas realizadas em sites como Slashdot.org e Linux.com, o MySQL possui


mais de 40% do market share para bancos de dados voltados à web.

Além disso, o MySQL possui:


• suporte, treinamento e consultoria oficial no Brasil;
• suporte a integridade referencial, transações e views;
• ferramentas gráficas de administração e extração de dados;
• atualizações constantes através de equipe própria;
• cluster, stored procedure e subselects.

www.mysqlbrasil.com.br TECHNOLOGY

www.mysql.com
(31) 3273 4415 GLOBAL PARTNER 100

95

75

www.elaborata.com.br www.hitec.com.br www.nethouse.com.br www.opentec.com.br 25


(41) 324-0015 (51) 3395-4777 (31) 3225-3005 (21) 2242-3464
5

0
Bem-vindo EDITORIAL

Segurança e Linux
Prezado leitor, prezada leitora da Linux Magazine,

no final do mês de Agosto de 2004, mercado de desktops é de menos de 5%. Para encerrar, gostaríamos de lembrar
durante uma coletiva de imprensa reali- Não haveria interesse de nenhum “cra- mais uma característica do Linux – na
zada no âmbito da 9ª Conferência Anual cker” em criar um vírus para Linux, ou verdade do Unix – que também contri-
sobre o Futuro da TI, o grupo Gartner mesmo um worm ou cavalo de Tróia, já bui para que tais sistemas sejam por
anunciou o resultado de uma pesquisa de que o sistema não seria um alvo real- padrão mais seguros: a sua arquitetura.
opinião sobre qual área de TI de empresas mente apetitoso, certo? Mais uma vez, a No Unix, como no Linux, há uma clara
no Brasil deveria receber atenção (e inves- resposta é NÃO. O Linux, e outros sis- separação de privilégios. Usuários são,
timentos) em especial em 2005. Desenvol- temas de código aberto como o servidor normalmente, incapazes de instalar
vida junto aos participantes do evento web Apache, constituem hoje o funda- qualquer programa ou mesmo apagar
que ocupam cargos de direção, a resposta mento da Internet. A maioria maciça arquivos fora do seu diretório pessoal.
da grande maioria foi segurança. de servidores web no mundo lá fora é Para tanto, é necessário obter privilé-
Quando se fala em segurança, sistemas baseada no quarteto de acrônimo LAMP gios de administrador. Além disso, não
baseados em tecnologia de código aberto, – Linux, Apache, MySQL e PHP, todos basta um arquivo qualquer ter a exten-
como o Linux, são, via de regra, a esco- projetos livres. Eles são alvos muito mais são EXE ou COM para automaticamente
lha apropriada. Mas por que o Linux é tão interessantes que o desktop do João, do ser executado com um clique do mouse.
seguro? Ou melhor, por que o Software José etc., uma vez que guardam infor- Ele precisa ter atributos especiais que
Livre é, por natureza, normalmente mais mações corporativas que podem valer digam ao sistema: “Ei, eu sou execu-
seguro que suas contrapartes proprietá- muito dinheiro. De outro lado, modifi- tável, mas só o usuário ‘fulano’ é que
rias? Não deveria ser o contrário? Afi nal, car o conteúdo de tais servidores é um pode me executar!” Isso dificulta a vida
se todo mundo pode ler o código fonte excelente modo de se mostrar – coisas do programador de vírus. Aliado a isso
dos programas, é mais fácil encontrar as que “crackers” sempre apreciam. Aliás, some-se a velocidade com que correções
falhas que podem ser exploradas, não? tanto isso é verdade, que basta o admi- de segurança aparecem para Software
A resposta a essa última pergunta é um nistrador de sistemas não ficar atento e Livre – em contraste com o que acontece
sonoro NÃO! Muito pelo contrário: é jus- deixar de aplicar com freqüência as cor- com o software de código fechado, para
tamente porque o código pode ser lido por reções de segurança que a sua distribui- o qual às vezes espera-se por meses até
milhares de desenvolvedores no mundo ção Linux torna disponíveis diariamente que uma correção apareça – e temos um
todo que pode ser auditado e provado em para que os sistemas sob sua supervi- cenário muito mais vantajoso de utili-
segurança por quem quer que deseje e são sejam atacados – infelizmente com zação, o que estimula a adoção de solu-
disponha de conhecimento técnico para sucesso. Há inúmeros casos em que isso ções abertas por governos, empresas e
fazê-lo. Enquanto alguém está imple- ocorreu no passado. vai, inevitavelmente, acabar por chamar
mentando um novo recurso, outros estão Mas para agradar os céticos, vamos a atenção do usuário doméstico.
corrigindo erros nessa implementação, embasar nossa retórica com alguns Não é à toa que o projeto OpenBSD
empresas a estão testando sob cenários números: na edição anterior da Linux anuncia com orgulho a ocorrência de
de missão crítica e devolvendo “patches” Magazine, noticiamos que, segundo apenas uma falha de segurança explo-
(correções – literalmente, “remendos”) um estudo realizado desde o ano 2000 rável remotamente na instalação padrão
que tornem a execução do programa pro- no Centro de Pesquisas em Ciência da em mais de 8 anos! Projetos como Ada-
duzido menos passível de erros e mais Computação da Universidade de Stan- mantix (Trusted Debian) e Security-
eficiente. É, em resumo, por essa razão ford, o kernel 2.6 do Linux, em suas Enhanced Linux (SELinux) seguem a
que o desenvolvimento de Software Livre 5,6 milhões de linhas, apresentou uma mesma linha. Nesta edição, você vai
torna essa modalidade de programas taxa média de erros de implementação conhecer algumas das tecnologias de
mais eficiente, rápida e segura. da ordem de 0,17 a cada 1000 linhas de segurança disponíveis em sistemas aber-
Será que isso é verdade? Ou será que código. Estudo semelhante, realizado tos que, apesar de não serem visíveis,
só se trata de retórica? Será que o Linux pela Universidade Carnegie Melon com podem constituir a diferença entre a
não é atingido por problemas de segu- softwares proprietários, identificou vida e a morte de sua estrutura de TI.
rança com a mesma freqüência que, por uma média variando entre 20 e 30 bugs
exemplo, o Windows®, sistema opera- a cada 1000 linhas, o que coloca o ker-
cional da Microsoft, porque o sistema nel do Linux em uma posição absoluta-
criado por Linus Torvalds ainda não está mente vantajosa em relação à média de
tão disseminado quanto o da empresa sistemas semelhantes, mas de código
de Bill Gates & Co.? Afi nal, segundo fechado, embora comparações específi- Rafael Peregrino da Silva
pesquisas, a participação do Linux no cas devam ser feitas caso a caso. Editor

www.linuxmagazine.com.br edição 06 3
LINUX MAGAZINE edição 06

CARTAS 6
19 Firewall para leigos
Seu computador permite
NOTÍCIAS 8 que você tenha uma
visão do mundo, mas
[In]segurança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 ninguém quer ter
o mundo olhando
Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 seu computador.
Os i nva s o r e s
Entrevista: Jaison Patrocínio . . . . . . . . . . . . . . . . . . . . . . . . . 12 est ão f ic a ndo
O Gerente de Marketing de Servidores da HP nos conta sobre a cada vez mais
estratégia da empresa para o Linux no mercado nacional. ousados e tec-
nicamente mais
Gerais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 “afiados”. Não é
mais aceitável espe-
rar que tais delin-
CAPA 19 qüentes simplesmente
não notem sua estação de
Cão de guarda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 trabalho “dando sopa”. Se você
O Guarddog é um programa que promete um “firewall fácil”
está conectado à Internet, é melhor
com uns poucos cliques do mouse, e ajuda os usuários a
colocar-se atrás de algum tipo de fi rewall.
proteger suas máquinas contra os perigos da Internet.
Obviamente, os fi rewalls mais exóticos são produtos dedi-
cados, baseados em hardware e destinados a redes gigantes-
Abrindo a caixa preta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 cas e configurações complexas. Estamos mais interessados
Alguns firewalls produzem logs tão monstruosos que para no que se pode fazer com hardware comum, uma distribui-
processá-los precisamos de ferramentas de análise. Testamos ção Linux e alguns programas fáceis de encontrar. Este mês,
o IPtables Log Analyzer, o Wallfire Wflogs e o FWlogwatch. trazemos uma seleção de ferramentas para construção de
fi rewalls, além de utilitários poderosos que simplificam
Ponte levadiça . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 sua confi guração e manutenção. Com elas, você não pre-
Filtros de pacotes baseados no princípio de bridging podem cisa ser um expert em redes ou segurança para adminis-
ser inseridos em qualquer ponto de sua rede sem alterar a trar um fi rewall.
topologia e a configuração de seus nós. Saiba como funcionam.
40 Liga pro suporte!
Cumprindo tabela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Ficar atento aos pedidos de suporte dos clientes pode fazer a
Mostramos como confi gurar um fi ltro de pacotes usando diferença quando se trata de voltarem – ou não – a contratá-
NetFilter/IPTables com o Shorewall. lo. Felizmente, há diversos aplicativos baseados em Linux
que oferecem soluções para o gerenciamento de seu depar-
tamento de suporte técnico.
ANÁLISES 36

The quick firefox jumped over the lazy explorer . 36 45 Tipografia e texto
Continuando nossa série de artigos sobre editoração eletrô-
Desde 1998 que um navegador não chama tanto a atenção
nica no Linux com o Scribus, nesse mês mostramos como
do público. Saiba mais sobre o Firefox e descubra o porquê.
lidar com imagens em CMYK e trabalhar com texto.

Liga pro suporte!. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 50 Linux é chave!


Diversos aplicativos baseados em Linux oferecem soluções para Todo mundo já está careca de saber que dá pra ini-
o gerenciamento de seu departamento de suporte técnico. ciar o Linux em um computador a partir de um Live CD.
Mas quem já pensou em
TUTO RIAL 45 instalar seu sistema
operacional favorito
Tipografia e texto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 em um minúsculo
Continuando a série sobre o Scribus, veja como lidar com chaveiro USB?
imagens em CMYK.

Linux é a chave! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Esqueçam os Live CDs, quem já pensou em “socar” o pin-
güim em um chaveiro USB?

4 edição 06 www.linuxmagazine.com.br
edição 06 LINUX MAGAZINE

53 SYSADMIN
54 Regras para todos
A tecnologia de fi rewall presente no kernel do Linux já há Coluna do Augusto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
algum tempo atende às exigências profissionais. Agora, os
configuradores gráficos chegaram para diminuir a distância
Regras para todos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
entre as soluções comerciais e livres.
Os configuradores gráficos chegaram para diminuir a distância

61 PaX Romana entre os firewalls baseados em Linux e as soluções comerciais.

Conheça o patch para o kernel que oferece proteção con-


tra corrupção da memória usada pelos processos e traz um
Pax Romana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Um patch para o kernel que traz paz de espírito aos paranói-
pouco de paz de espírito aos paranóicos por segurança.
cos por segurança.
70 SuSE Linux 9.2
Fruto do trabalho conjunto entre 66 PROGRAMAÇÃO
a SuSE Linux AG e a Linux
������������
������
Ma ga z i ne, este mês Produto de exportação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
temos o prazer de lhe Compile seus programas em uma plataforma e rode em outra!
oferecer um CD com
a versão nac io-
69 LINUX USER
nalizada de uma
����������������������

das distribuições Suse Linux 9.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70


mais cobiçadas do Uma das distribuições mais cobiçadas, em português pra
���������

momento: o SuSE você instalar no HD!



�����

�����������������������������������
������������������������������������ ������������ Linux 9.2. Instale
�����

����������������������������������� ������
����

em seu HD e aprecie
Por que existem tantas distribuições? – Parte II . . 72
���������������������������������
����������������������������������
���

�������������������������������������
���

�����������������������������������
���

������������������������������������
o que há de melhor
���

�����������������������������������
��
���

��������������������������������������
���

������������������������������������
ent re os desktops
���

Leve, rápido, prático . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75


���
���

����������������������������� ���
���������������������� ���
���
��� ���
����
���
���
����
baseados em Linux.
����
���
���
���

����
������
��������
����������������������������
�����
����
��� ��
O Fluxbox herdou as melhores características do Blackbox
e acrescenta alguns recursos úteis à área de trabalho.
80 A porta de entrada
Tanto o KDE quanto o GNOME possuem gerenciadores de login. A porta de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Vamos olhar o que o KDM e o GDM têm a oferecer e aprender a Vamos olhar o que o KDM e o GDM têm a oferecer e aprender
configurar a tela de boas-vindas de seu sistema Linux. a configurar a tela de boas-vindas de seu sistema Linux.

LM06_bolachaCD.indd 1 83 Surfando sem banners 28.01.05 12:08:16 Surfando sem banners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83


Que nos perdoem os publicitários, mas anúncios em websi- Ferramentas que eliminam os banners de páginas da Inter-
tes podem dificultar sua navegação e atrapalhar a concen- net, apenas em uma máquina ou em toda a sua rede.
tração do visitante, além de consumir muita banda. Neste
artigo, conheceremos ferramentas que permitem bloquear Papo de botequim IV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
banners, janelas pop-up, “overlays” em Flash e outras for-
mas de propaganda, seja apenas em uma máquina ou em
sua rede local inteira. 91 COMUNIDADE

Caminho livre para administração pública . . . . . . . . 91


O caso de sucesso do Centro de Tecnologia Aplicada do RJ.

Planeta GNU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

95 SERVIÇOS
Mercado Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Eventos / Índice de Anunciantes . . . . . . . . . . . . . . . . . . . . 96

Expediente Editorial / Quadrinhos . . . . . . . . . . . . . . . . . 97

Na próxima edição… . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

www.linuxmagazine.com.br edição 06 5
CARTAS Escreva pra gente

Cartas para o editor

Permissão
de escrita

■ Sobre o Debian Su l a m i t a res-


» Em seu artigo sobre distribuições a ponde: Muitos deta-
Sulamita Garcia, como sempre, “man- lhes das distribuições
dou bem”. Só gostaria de fazer uma acabam não cabendo
observação quanto ao seguinte trecho: nos artigos, que são
uma visão mais geral. Só
“Os pacotes disponíveis para a versão sta- me parece que os leitores não
ble são conhecidos por serem quase pré- entenderam minha crítica: ouço
históricos. Se você quiser usar versões pessoas defendendo tanto o testing
mais atuais, é instruído a usar o unstable. quanto o unstable, dizendo que ambas
Espera aí, mas não é instável? Sim, o pró-
são bastante estáveis. Se são tão estáveis,
prio nome está dizendo. E se você estiver
porque não são chamadas assim? Isto me
usando o unstable e acontecer algum
problema... bom, você estava usando o
soa como um empurra-empurra, e acho
unstable. Quer dizer que ou uso pacotes que uma comunidade desse tamanho
pré-históricos ou uso instáveis? Pois é.” deveria ter algo mais declaradamente
estável, atual e assumir a responsabili-
Ela esqueceu de dizer que a versão dade por isso. Ficar eternamente “tes-
Sarge (testing) é uma boa opção para tando” não me parece uma boa idéia. ■
desktop, já que seus pacotes não são
tão “arcaicos” quanto a Woody (stable) ■ SlaX Figura 1: Racer, um dos jogos distribuídos em
e nem tão instáveis quanto a Sid (uns- » Informo que o meu monitor, um nossa edição passada.
table). Na verdade, quando um pacote “manjado” LG SW 500G plug and play,
passa da unstable para a testing ele já também não é reconhecido pelo Slax ■ Mais Jogos
foi bem testado e o risco do sistema desde versões anteriores à distribuída » Me surpreendi ao ver um CD repleto
“quebrar” é muito baixo. pela revista. Como a ajuda não docu- de jogos nessa nova edição. Positi-
Grande parte das distribuições deri- menta as opções xrefresh e vrefresh, vamente, claro. Mas o que mais me
vadas do Debian usam como base a tive que editar na unha os arquivos decepcionou foi não ter encontrado na
testing, como por exemplo o Ubuntu e de configuração de vídeo para poder lista um jogo que, com certeza, seria de
a brasileira Debian-BR-CDD. No canal rodar o sistema. grande agrado para os gamemaníacos:
#debian-br (irc.freenode.net) geralmente Com relação à sugestão para o leitor Return to Castle Wolfenstein – Enemy
recomendamos a versão Sarge (testing) usar a opção vrefresh = 60, num moni- Territory, produzido pela ID Software
para uso em ambiente desktop ou em tor igual ao meu ela não irá funcionar, (a mesma de Doom3 e Return to Cas-
servidores não-críticos, a Woody (sta- pois a implicância do Slax com ele se tle Wolfenstein), com o código aberto e
ble) para servidores críticos e a Sid concentra no refresh horizontal. Quem totalmente gratuito.
(unstable) para quem está disposto a tem um desses monitores e quer rodar o Esse jogo é bastante famoso nos EUA
assumir os riscos. Slax deve usar o parâmetro xrefresh=54. e Europa, possui algumas centenas de

http://supertuxbr.blogspot.com
Marco Carvalho Flavio Lopes jogadores aqui no Brasil e diversos cam-

6 edição 06 www.linuxmagazine.com.br
Escreva pra gente CARTAS

peonatos são organizados durante o ano. Falha nossa!


Caso seja feita mais uma edição com
jogos, gostaria que ele fosse incluso. ■ Cadê os jogos?
Caio
Valeu pela dica. Conhecemos o Enemy Vários leitores nos escreveram, confusos com a aparente falta em nosso CD dos jogos men-
Territory, mas o nosso problema foi cionados na matéria “Os pingüins se divertem”. Os jogos estão lá, mas infelizmente deixamos
escapar o “detalhe” de como acessá-los: basta reiniciar o computador com o CD no drive. O disco
outro: espaço. Tentamos diversas com-
é um Live-CD, com um ambiente gráfico similar ao Windows em que você poderá escolher entre
posições diferentes, mas apenas o Fli-
os vários jogos inclusos
ghtGear com alguns mapas e aeroportos
do Brasil já deu trabalho para acomodar
junto aos outros jogos no disco (Racer, programas semelhantes para Windows. ou de outra ainda existe a necessidade
BZFlag, VegaStrike, GLTron e GL117), Ele não só baixa as imagens da câmera das linhas telefônicas disponíveis para
entre outros. ■ (usando a libgphoto) como também oferecer o serviço adequadamente.
pode organizá-las por álbuns e “tags”, Carlos Wagner
que são comentários que eu mesmo Agradecemos a sugestão e vamos estu-
adiciono às imagens. Dessa forma, uma dar um futuro artigo sobre o assunto. Por
foto pode, ao mesmo tempo, pertencer enquanto, deixamos uma dica: uma das
ao grupo “férias” e ao grupo “macro”, possíveis soluções para o problema seria
sem necessidade de duplicá-la em dois combinar um servidor de Fax convencio-
lugares diferentes. nal, como o HylaFAX (www.hylafax.org)
Ed Carlos de Paula com uma central telefônica VoIP como
Obrigado pelas sugestões, Ed. Está pro- o Asterisk, que foi tema da matéria de
gramado para as próximas edições um capa de nossa terceira edição. Alguém se
artigo sobre ferramentas como o Hugin, habilita a colocá-la em prática? ■
o Enblend e o Autopano-SIFT, que facili-
tam, e muito, a criação de fotos panorâ- ESCREVA PRA GENTE
Figura 2: Return to Castle Wolfenstein – Enemy micas. Aguarde! ■ Se você tem dúvidas sobre o mundo Linux,
Territory pode ser baixado gratuitamente de críticas ou sugestões que possam ajudar
http://games.activision.com/games/wolfenstein/ ■ Fax via Web a melhorar nossa revista, escreva para
» Acompanhei com atenção o artigo cartas@linuxmagazine.com.br. Devido ao
■ Fotografia Digital sobre WebFax publicado na quinta edi- volume de correspondência, é impossível
» Estou aprendendo um pouco sobre ção (matéria de capa, página 38). Achei- responder a todas as mensagens, mas
edição de imagens para melhorar as o interessante e instrutivo; porém, como garantimos que elas são lidas e analisadas.
fotos tiradas com uma câmera digital e vocês mesmos disseram em nota, infe- As mais interessan-
notei que elas sempre precisam de um lizmente não existe um serviço similar tes são publicadas
ajuste de sharpen, levels e coisas assim. disponível no Brasil. nesta seção. Para
Para isso uso o Gimp, e gostaria de um Daí minha sugestão: por que não dúvidas ou críti-
artigo mostrando como fazer isso: como publicar um tutorial mostrando como cas referentes à
corrigir as curvas, reduzir ruído, criar montar um provedor de Fax com Linux? sua assinatura da
imagens panorâmicas e coisas do tipo. Talvez com isso surjam novos provedo- Linux Magazine,
Para organização e aquisição de ima- res para essa solução, bem como empre- use o endereço:
assinaturas@linux-
gens sugiro uma matéria sobre o digi- sas criadas para explorar tal mercado.
magazine.com.br.
Kam (http://digikam.sourceforge.net), Até as empresas de telefonia se benefi-
software para o KDE que supera até ciariam com isso, já que de uma forma

http://supertuxbr.blogspot.com
Figura 3: Existem ferramentas de Software Livre para criar panoramas como este.

www.linuxmagazine.com.br edição 06 7
NOTÍCIAS Dicas de [IN]segurança

Dicas de [In]segurança
■ Kernel das arquiteturas AMD, AMD64 e Intel A SGI descobriu uma falha no carre-
O kernel do Linux desempenha as fun- EM64T anteriores à versão 2.4.23. Um usu- gador ELF que afeta kernels anteriores
ções básicas do sistema operacional. ário local poderia usar essa falha para cau- à versão 2.4.25. A falha pode ser explo-
Foi descoberta uma falha provocada sar uma negação de serviço (travamento rada por um binário (executável) mal
por falta de serialização na função do programa) ou possivelmente ganhar formado. Em arquiteturas diferentes
unix_dgram_recvmsg, afetando kernels mais privilégios. (CAN-2004-0812) da x86, um usuário local poderia criar
anteriores à versão 2.4.28. Um usuário Foi descoberta uma falha de estouro de um binário malévolo que causaria uma
local poderia potencialmente fazer uso inteiros na função ubsec_keysetup do dri- negação de serviço (travamento do pro-
de uma condição de disputa (race con- ver Broadcom 5820 cryptonet. Em siste- grama). (CAN-2004-0136)
dition) para conseguir mais privilégios. mas usando esse driver, um usuário local A Conectiva descobriu diversas falhas
O projeto “Common Vulnerabilities and poderia causar uma negação de serviço em certos drivers USB afetando kernels
Exposures” (cve.mitre.org) deu a essa (travamento do programa) ou possivel- anteriores à versão 2.4.27. Os drivers
falha o código CAN-2004-1068. mente ganhar privilégios de administrador vulneráveis usam a função copy_to_user
Paul Starzetz do iSEC descobriu inú- do sistema. (CAN-2004-0619) em estruturas não inicializadas. Essas
meras falhas no carregador de binários Stefan Esser descobriu inúmeras falhas poderiam permitir que usuá-
ELF afetando kernels anteriores à ver- falhas incluindo estouros de pilha no rios locais tivessem acesso a pequenas
são 2.4.28. Um usuário local poderia driver smbfs, afetando kernels anterio- porções da memória usada pelo kernel.
usar essas falhas para conseguir acesso res à versão 2.4.28. Um usuário local (CAN-2004-0685) ■
a binários que tenham apenas per- poderia causar uma negação de serviço Referência no Red Hat: RHSA-2004:549-10
missão de execução ou possivelmente (travamento do programa) ou possivel- Referência no SuSE: SUSE-SA:2004:042
ganhar mais privilégios. (CAN-2004- mente ganhar mais privilégios. Para
1070, CAN-2004-1071, CAN-2004-1072, poder explorar essas falhas o usuário ■ Cyrus-imapd
CAN-2004-1073) precisa ter controle sobre um servidor O servidor Cyrus IMAP é um eficiente
Foi descoberta uma falha na defi nição Samba conectado à rede. (CAN-2004- servidor de emails IMAP, altamente
de limites para TSS que afeta os kernels 0883, CAN-2004-0949) escalável. Múltiplas vulnerabilidades

Postura das principais distribuições Linux quanto à segurança


Distribuição Referência de Segurança Comentários
Conectiva Info: http://distro2.conectiva.com.br/ Possui uma página específica; não há link para ela na página principal. Os alertas são sobre segu-
Lista: seguranca-admin@distro.conectiva.com.br rança, mas distribuídos através de emails assinados com a chave PGP da empresa para assegurar
e http://distro2.conectiva.com.br/lista/ sua autenticidade. Contém também links para os pacotes atualizados e para fontes de referência
Referência: CLSA-... 1 sobre o problema sendo corrigido.
Debian Info: http://www.debian.org/security/ Alertas de segurança recentes são colocados na homepage e distribuídos como arquivos HTML
Lista: http://lists.debian.org/debian-security-announce/ com links para os patches. O anúncio também contém uma referência à lista de discussão.
Referência: DSA-… 1
Gentoo Info: http://www.gentoo.org/security/en/gsla/index.html Os alertas de segurança são listados no site de segurança da distribuição, com link na homepage.
Fórum: http://forums.gentoo.org/ São distribuídos como páginas HTML e mostram os comandos necessários para baixar versões
Lista: http://www.gentoo.org/main/en/lists.xml corrigidas dos softwares afetados.
Referência: GLSA: … 1
Mandrake Info: http://www.mandrakesecure.net A MandrakeSoft tem seu próprio site sobre segurança. Entre outras coisas, inclui alertas e refe-
Lista: http://www.mandrakesecure.net/en/mlist.php rência a listas de discussão. Os alertas são arquivos HTML, mas não há links para os patches.
Referência: MDKSA-… 1
Red Hat Info: http://www.redhat.com/errata/ A Red Hat classifica os alertas de segurança como “Erratas”. Problemas com cada versão do
Lista: http://www.redhat.com/mailing-lists/ Red Hat Linux são agrupados. Os alertas são distribuídos na forma de páginas HTML com links
Referência: RHSA-… 1 para os patches.
Slackware Info: http://www.slackware.com/ security/ A página principal contém links para os arquivos da lista de discussão sobre segurança. Nenhuma
Lista: http://www.slackware.com/lists/ (slackware-security) informação adicional sobre segurança no Slackware está disponível.
Referência: [slackware-security] … 1
SuSE Info: http://www.suse.de/uk/private/support/security/ Após mudanças no site, não há mais um link para a página sobre segurança, que contém informa-
Lista: http://www.suse.de/uk/private/download/updates/ ções sobre a lista de discussão e os alertas. Patches de segurança para cada versão do SuSE Linux
Referência: suse-security-announce Referência: SUSE-SA … 1 são mostrados em vermelho na página de atualizações. Uma curta descrição da vulnerabilidade
corrigida pelo patch é fornecida.
1 Todas as distribuições indicam, no assunto da mensagem, que o tema é segurança.

http://supertuxbr.blogspot.com
8 edição 06 www.linuxmagazine.com.br
foram encontradas nos interpretadores ados nos protocolos SMB/CIFS, permi-
de argumentos dos comandos partial e tindo interoperabilidade com serviços
fetch do Cyrus IMAP Server (CAN-2004- de impressão e compartilhamento de
1012, CAN-2004-1013). Há ainda estou- arquivos de outros clientes SMB/CIFS
ros de buffer no código do ‘imap magic – por exemplo, sistemas operacionais
plus’ que também podem ser explora- Windows®. Foram identificadas diver-
dos. (CAN-2004-1011, CAN-2004-1015). sas vulnerabilidades no Samba.
Um invasor poderia explorar essas vul- Há um problema no daemon de com-
nerabilidades para executar código arbi- partilhamento de arquivos do Samba,
trário com os direitos do usuário no qual permitindo que um usuário remoto
o Cyrus IMAP Server roda. Não há solu- consuma uma quantidade impressio-
ção conhecida (mesmo provisória) até o nante de recursos e potencialmente
presente momento. Todos os usuários do possa derrubar o serviço se usar nomes
Cyrus-IMAP Server devem atualizar o de arquivo com coringas (“*” e “?”).
programa para a versão mais nova. ■ Para que o ataque seja um sucesso,
Referência no Debian: DSA-597-1 cyrus-imapd basta que o daemon do Samba esteja
Referência no Gentoo: GLSA 200411-34 / cyrus-imapd rodando e um usuário remoto tenha
Referência no SuSE: SUSE-SA:2004:043 acesso a um compartilhamento qual-
quer (mesmo que apenas de leitura). O
■ Sun Java Plugin projeto “Common Vulnerabilities and
A segurança do plug-in Java forne- Exposures” (cve.mitre.org) deu a essa
cido pela Sun e Blackdown.org pode falha o código CAN-2004-0930.
ser contornada, permitindo acesso a Stefan Esser encontrou um problema
pacotes arbitrários. Isso permitiria que na manipulação de cadeias de carac-
applets Java não autorizados executas- teres Unicode do gerenciador de arqui-
sem ações sem restrição no sistema. O vos do Samba que leva a um estouro de
projeto “Common Vulnerabilities and buffer baseado no segmento de dados
Exposures” (cve.mitre.org) deu a essa (heap) que pode ser provocado remota-
falha o código CVE CAN-2004-1029. mente, permitindo que atacantes remo-
A Sun e a Blackdown oferecem, cada tos injetem código no processo smbd. O
uma, sua implementação de kits de projeto “Common Vulnerabilities and
desenvolvimento em java (Java Develop- Exposures” (cve.mitre.org) deu a essa
ment Kits – JDK) e máquinas virtuais falha o código CAN-2004-0882.
para execução de programas compilados Todos os usuários do Samba devem
em Java (Java Runtime Environments atualizar o programa para a versão indi-
– JRE). Todas essas implementações pos- cada, que contém patches de segurança
suem um plug-in que pode ser usado trazidos de versões mais recentes que
para executar applets Java em ambientes não são vulneráveis a esses incidentes. ■
restritos – especialmente navegadores. Referência no Gentoo: GLSA 200411-21 / samba
Todos os plug-ins Java estão sujeitos a Referência no Mandrake: MDKSA-2004:136
uma vulnerabilidade que permite acesso Referência no Red Hat: RHSA-2004:632-17
irrestrito a qualquer outro pacote Java. Referência no SuSE: SUSE-SA:2004:040
Um invasor remoto poderia embutir
um applet Java malicioso e convencer ■ Apache
a vítima a executá-lo. O applet pode, O Apache é um dos servidores web
então, contornar as restrições de segu- (HTTP) mais populares da Internet.
rança e executar qualquer comando ou Chintan Trivedi descobriu uma vulne-
acessar qualquer arquivo ou diretório rabilidade no Apache httpd 2.0 causada
legível pelo usuário usando o navegador. por uma limitação no comprimento de
Como paliativo, desative a execução campos de dados. Essa imposição está
de applets Java em seu navegador. Todos presente no código que interpreta o
os usuários do Sun JDK devem atualizar cabeçalho HTTP. Ao enviar uma grande
o programa para a versão mais nova. ■ quantidade de requisições HTTP GET,
Referência no Gentoo: GLSA 200411-38 / Java um atacante remoto pode causar uma
negação de serviço no sistema alvo. O
■ Samba projeto “Common Vulnerabilities and
O Samba é uma implementação livre e Exposures” (cve.mitre.org) deu a essa

http://supertuxbr.blogspot.com
gratuita de servidores de arquivos base- falha o código CAN-2004-0942.

edição 06 9
NOTÍCIAS Dicas de [IN]segurança

“Crazy Einstein” descobriu uma vul- Um certo número desses loops rodando Não há solução conhecida (mesmo
nerabilidade no módulo mod_include simultaneamente pode provocar uma provisória) até o presente momento. ■
que pode causar um estouro de buffer negação de serviço por esgotamento de Referência no Debian: DSA-603-1 openssl
e levar à execução de código arbitrário. recursos. O projeto “Common Vulnera- Referência no Gentoo: GLSA 200411-15 / OpenSSL
O projeto “Common Vulnerabilities and bilities and Exposures” deu a essa falha Referência no Mandrake: MDKSA-2004:147
Exposures” (cve.mitre.org) deu a essa o código CAN-2004-0983.
falha o código CAN-2004-0940. Não há solução conhecida até o pre- ■ BNC
Larry Cashdollar descobriu um estouro sente momento. Todos os usuários do O BNC é um proxy que “ricocheteia” ses-
de pilha em potencial no utilitário htpas- Ruby até a versão 1.6.x devem atualizar sões IRC. Leon Juranic descobriu que o
swd que pode ser explorado quando o programa para a versão mais nova. ■ BNC nem sempre protege os buffers, evi-
dados do usuário são passados a ele atra- Referência no Mandrake: MDKSA-2004:128 tando que sejam estourados. Um servidor
vés de um CGI (ou PHP ou Perl...). Todos IRC malicioso poderia explorar a falha e
os usuários do Apache devem atua- ■ Openssl e Groff fazer o limitado buffer transbordar, per-
lizá-lo para a versão mais nova. ■ O OpenSSL é um subsistema que imple- mitindo a execução de código arbitrário.
Referência no Debian: DSA-594-1 apache menta os protocolos SSL (Secure Socket O projeto “Common Vulnerabilities and
Referência no Gentoo: GLSA 200411-18 / apache Layer) e TLS (Transport Layer Security), Exposures” (cve.mitre.org) deu a essa
Referência no Mandrake: MDKSA-2004:134 bem como uma biblioteca de criptografia falha o código CAN-2004-1052. ■
Referência no Red Hat: RHSA-2004:562-11 para uso geral. Inclui também o script Referência no Debian: DSA-595-1 bnc
der_chop para converter certificados codi- Referência no Gentoo: GLSA 200411-24 / BNC
■ sudo ficados no padrão DER para o formato
O sudo é um programa que concede PEM. O Groff (GNU Troff) é um pacote de ■ ez-ipupdate
poderes limitados de superusuário formatação de textos que lê arquivos de O ez-ipupdate é um utilitário para a
a usuários específicos. Liam Helmer texto contendo comandos de formatação atualização de informações de nome de
descobriu, entretanto, que o sudo e produz um documento formatado. No hosts para serviços de DNS. Ulf Harn-
não “limpa” o ambiente como deveria. pacote há o comando groffer, que mostra hammar, do Debian Security Audit Pro-
Funções do shell Bash e a variável de arquivos groff e páginas de manual (man ject, descobriu uma vulnerabilidade de
ambiente CDPATH ainda são repassados pages) no X e no console (tty). formatação em cadeias de caracteres no
para o programa rodando com permis- Tanto o groffer quanto o der_chop ez-ipupdate. Um invasor poderia explo-
sões privilegiadas, permitindo que roti- criam arquivos temporários nos dire- rar a falha para executar código arbi-
nas do sistema sejam sobrecarregadas. tórios em que as permissões sejam trário com as permissões do usuário
O projeto “Common Vulnerabilities and as mais universais possíveis (como o rodando o ez-ipupdate, que poderia ser
Exposures” (cve.mitre.org) deu a essa /tmp, por exemplo). Esses arquivos pos- o próprio root. O projeto “Common Vul-
falha o código CAN-2004-1051. suem nomes fáceis de prever. Um usu- nerabilities and Exposures” deu a essa
Essas vulnerabilidades só podem ário local malicioso poderia criar links falha o código CAN-2004-0980.
ser exploradas por usuários que estão simbólicos no diretório temporário Não há solução conhecida até o pre-
cadastrados no arquivo sudoers e, por- que apontem para um arquivo válido sente momento. Mesmo assim, todos os
tanto, possuem privilégios limitados em outra parte do sistema de arquivos. usuários do ez-ipupdate são aconselha-
de superusuário. Recomendamos que Como resultado, rodar os scripts groffer dos atualizar o programa para a versão
o pacote sudo seja atualizado o mais e der_chop pode sobrescrever os arqui- mais nova. ■
rápido possível. ■ vos para os quais os links apontam. Referência no Debian: DSA-592-1 ez-ipupdate
Referência no Debian: DSA-596-2 sudo Como é possível (e bem provável) que o Referência no Gentoo: GLSA 200411-20 / ez-ipupdate
Referência no Mandrake: MDKSA-2004:133 próprio root exe-
cute esses scripts,
■ Ruby nenhum arquivo
Ruby é uma linguagem interpretada do sistema está a
para scripts que permite desenvolvi- salvo. Potencial-
mento rápido e orientado a objetos. O mente, é possí-
módulo de CGI do Ruby pode ser usado vel comprometer
para construir sistemas web. de forma severa
Os desenvolvedores do Ruby encon- toda a segurança
traram um problema no módulo de CGI do sistema. Para
que pode ser disparado remotamente e mais informações
Sergio Ianni: www.sxc.hu

que causa um laço de execução (loop) sobre esse pro-


infi nito. Um atacante remoto poderia blema, consulte
disparar a vulnerabilidade através de os documentos
um sistema web em Ruby que esteja CVE CAN-2004-
vulnerável e causar o uso desnecessário 0969 e CAN-2004-

http://supertuxbr.blogspot.com
de tempo de CPU por parte do servidor. 0975 do Mitre

10 edição 06 www.linuxmagazine.com.br
Notícias do Kernel NOTÍCIAS

Notícias do Kernel
■ O BitKeeper será importante ter em mente que uma grande empresa – segundo Marcus Metzler - está
substituído? parte das idéias que vêm sendo introdu- se negando a distribuir o código fonte de
O desenvolvimento do Kernel ainda zidas nas ferramentas livres de gestão seu produto baseado em código GPL. ■
é mantido e controlado, basicamente, de desenvolvimento foram motivadas e
com a ajuda do software proprietário inspiradas na decisão de Linus de adotar ■ Revisitando a querela das
BitKeeper, algo que não deve mudar tão um software proprietário para a tarefa. A versões
cedo. Mas as alternativas livres estão teimosia do criador pode ser combustível Linus Torvalds, além de rebatizar a ver-
ficando cada vez melhores. O programa para a ira de seus pares, mas também o são 2.6.10-rc1 do kernel Linux – era
tla, também chamado de arch, prova- é para o aperfeiçoamento das ferramentas Zonked Quokka, agora chama-se Woozy
velmente possui um projeto mais bem usadas por eles. ■ Numbat – está tentando aplacar os âni-
elaborado que o do BitKeeper e recursos mos de todos os que vêm reclamando do
bem mais poderosos, mas ainda não é ■ Violações da GPL sistema de numeração de versões nos últi-
capaz de trabalhar na escala de produ- Uma penca de aparentes violações à mos tempos. Para reduzir a doideira das
ção em que o kernel do Linux é desen- licença GPL, tentativas de encontrar bre- variações do tipo x.y.z.w-pre-rc-fi nal que
volvido, cuja velocidade e quantidade chas em sua aplicação e mal-entendidos vem provocando o não-funcionamento
são de tirar o fôlego. em geral vêm pipocando por toda parte. de scripts de usuários ao redor do mundo,
Andrea Arcangeli tem sido o mais fer- É difícil determinar se é um fenômeno Linus decidiu que a série 2.6 terá apenas
voroso defensor do tla entre os desenvol- sazonal, uma tendência temporária ou a lançamentos -rc entre as versões pontuais.
vedores do kernel, mas Linus Torvalds maneira como as coisas serão daqui para Sem -pre, sem -final, sem caos.
ultimamente tem berrado cobras e lagar- a frente. Entre outubro e novembro, cerca Ou, pelo menos, até amanhã. O sistema
tos sempre que alternativas ao BitKeeper de 6 empresas foram acusadas de viola- de numeração pode até se estabilizar, mas
são mencionadas na lista. David Roundy, ção à GPL na lista de desenvolvimento do o código do 2.6 continua mutante, com
autor original do sistema darcs de con- kernel, a famosa lkml. Algumas dessas alterações ocorrendo a velocidades cada
trole de versão, evitou um derramamento acusações foram produto de simples mal- vez mais estupefacientes. A versão 2.6.9
de sangue ao anunciar um repositório entendidos, como quando Adrian Bunk teve 3549 patches, mais do que qualquer
dos fontes do Linux baseado em seu sugeriu que o driver drivers/char/rocket.c outra versão exceto a 2.6.0. O número
“fi lho”. Isso é um marco para qualquer continha duas licenças confl itantes: a de desenvolvedores também alcançou o
gerenciador de versões, pois o tama- GPL e a licença não-livre da Control Cor- impressionante patamar de 400 colabora-
nho descomunal de todo o histórico de poration. Theodore Ts’o, num comentário dores para as últimas duas versões, tendo
alterações do kernel, sem contar a velo- sobre o autor do código, afi rmou que era ficado numa média de 250 para as anterio-
cidade em que novos patches são adicio- apenas um engano e rapidamente conse- res. Um “fork” para a versão 2.7 não des-
nados, torna a tarefa digna de Hércules. guiu um documento da Comtrol que per- ponta no horizonte, e mesmo a idéia de se
O fato do darcs conseguir gerenciar esse mitia a remoção da licença confl itante. dividir as versões entre estável e em desen-
mastodonte já é um feito considerável. O Os casos mais graves envolvem empre- volvimento parece ter sido defenestrada.
problema da escalabilidade não foi resol- sas procurando por brechas no código e Para o futuro, tenho a impressão de que
vido, entretanto: David afi rma que há na própria licença. Uma delas, por exem- a estabilidade será encontrada apenas nos
alguns problemas de desempenho. Mas plo, distribui binários em uma versão e principados governados por desenvolvedo-
a existência no BitKeeper de uma “porta código-fonte em outra para os drivers de res como Alan Cox – que não tem medo de
de conexão” (o chamado gateway) para seus produtos, alegando que as versões fazer “forks” importantes em sua série -ac
o darcs semelhante às já existentes para mais novas são idênticas às antigas. Men- – e distribuições engajadas como Red Hat,
CVS e Subversion permitem que David tira deslavada: as versões novas contêm Debian e Tinfoil Hat Linux. Na outra ponta
obtenha realimentação importante vinda uma certa quantidade de código proprie- da corda, novos recursos e características
dos desenvolvedores – e, com isso, possa tário. Ela também se recusa a liberar atu- vão continuar sendo adicionados ao kernel
melhorar o darcs. alizações para qualquer um que exercite principal a uma velocidade de quebrar pes-
Esses gateways pavimentarão o cami- o saudável direito – assegurado na GPL coços e chacoalhar bochechas. Se a coisa
nho pelo qual passará aquele que subs- – de redistribuir seu software. Não são ficar assim, uma mudança da série de 2.6
tituirá o BitKeeper no futuro. Só quando exatamente violações à GPL mas, se a para 2.7 (ou de 2.7 para 2.8) estará relacio-
a vasta maioria de desenvolvedores do veracidade das denúncias for comprovada, nada apenas ao cumprimento de metas de
kernel passar a usar tla, darcs ou outra certamente trata-se de uma prática bas- projeto (os famosos milestones) e nada terá
alternativa qualquer de desenvolvimento tante grosseira e vulgar, para não dizer a ver com estabilidade. Para mais detalhes,
distribuído é que Linus vai, fi nalmente, imoral e desonesta. Embora seja raro uma consulte as notícias do kernel nos núme-
jogar a toalha e bradar “ok, vocês vence- empresa usar código GPL e ao mesmo ros anteriores da Linux Magazine – esse

http://supertuxbr.blogspot.com
ram!”, abandonando de vez o BitKeeper. É tempo ignorar o fato, pelo menos uma parece ser um assunto recorrente. ■

www.linuxmagazine.com.br edição 06 11
NOTÍCIAS Entrevista

Entrevista com Jaison Patrocínio

HP quer manter
liderança em
servidores no Brasil
A lista de grandes corporações que ajudam a mover o Linux não pode

deixar de incluir a Hewlett-Packard. Para se ter uma idéia do volume de

negócios com o ambiente de código aberto, as receitas com Linux ultra-

passaram US$ 2,5 bilhões em todo o mundo em 2003 (o número de


Figura 1: Jaison Patrocínio, gerente de marketing de
2004 ainda está sendo fechado). POR ALEXANDRE BARBOSA servidores da HP.

B oa parte desses resultados é


oriunda das vendas de servido-
res equipados com Linux e ser-
viços associados, impulsionadas pelas
razões de praxe que interessam aos
Linux Magazine » A HP tem uma estra-
tégia de Linux definida para o Brasil?
Jaison Patrocínio » Existe uma estra-
tégia local de oferta de soluções em
Linux, mas estas não são montadas
LM » Quais são as distribuições supor-
tadas por vocês? Há algum destaque
nos negócios em Linux neste ano?
JP » Damos suporte a duas distribuições
no Brasil, que já vêm de fábrica em nos-
grandes clientes corporativos: o baixo em cima de adaptações das estratégias sos servidores: Red Hat e Novell SuSE.
custo e a estabilidade. mundiais da HP. Acontece que nem Por que apenas essas e não outras distri-
A empresa também é um gigante todas as ofertas da empresa em outros buições? É que, como temos por política
de vendas, contando com mais de países são aplicáveis ou interessantes a obrigação de dar suporte ao cliente em
6 mil profi ssionais de suporte e ser- ao nosso mercado, por conta do tama- todo o ciclo de uso da solução, não tería-
viços nos segmentos de pré e pós- nho dele e mesmo das características mos condições de arcar com os custos de
venda para o mercado Linux em todo do país. Mesmo assim, nossa estratégia oferecer esse nível de serviço para todas
o mundo. No Brasil, a HP tem como nos deixa numa posição de liderança as distribuições; assim, nos concentra-
grandes destaques os servidores da no mercado; nosso plano é aumentar mos nas que achamos mais importantes
linha Integrity e conta com um leque a diferença que nos separa das demais para atender à demanda dos clientes.
variado, que inclui até mesmo termi- concorrentes em 2005. Uma das fer- Este ano a nossa grande aposta está na
nais thin client como o HP Compaq ramentas é a participação em eventos migração do ambiente Sun para Linux.
t5515 – proposta de computação de internacionais, como o Linux Road, que Temos uma ferramenta, desenvolvida em
baixo custo da empresa que começou acontece entre 14 e 18 de fevereiro em nossos laboratórios, que possibilita uma
a ser oferecido ao mercado brasileiro Boston. Ali, a HP terá um dia inteiro só migração ágil de ambientes Solaris para
no fi nal do ano passado. É claro que de palestras. Levaremos 10 clientes do Linux em um único dia, o que será muito
essa oferta nem chega aos pés do que Brasil e mais 60 clientes de outros paí- atraente para várias corporações. Essa
outros mercados, como os EUA, têm à ses da América Latina para conhecer os solução já foi adotada em outros luga-
sua disposição – ali, é possível encon- mais recentes desenvolvimentos na pla- res do mundo. Achamos que a redução
trar notebooks e até media centers, taforma. Ou seja, temos uma estratégia de despesas propiciada pelas platafor-
PCs especializados em conteúdo mul- de levar parceiros e clientes aos eventos mas abertas atrairá a atenção de clientes
timídia, tudo com Linux. mais representativos, ajudando assim a potenciais para o baixo TCO (custo de
Para falar sobre as ofertas no Brasil desenvolver o mercado. Continuaremos propriedade) de nossos servidores Pro-
e a estratégia de Linux para o nosso investindo em nossa fábrica de software liant ou a linha Integrity. Outro destaque
mercado, a Linux Magazine entre- em Porto Alegre e mantendo a equipe de é que o Linux já provou, e confi rmará
vistou Jaison Patrocínio, gerente de serviços, que é capaz de prestar suporte neste ano, a sua capacidade de lidar com
marketing de servidores da HP e um do primeiro ao último nível, seja em sis- aplicações de missão crítica sem atritos,
dos cérebros por trás do pingüim na temas operacionais, aplicações, integra- o que é extremamente importante para o

http://supertuxbr.blogspot.com
gigante de tecnologia. ção ou resolução de problemas. mercado corporativo.

12 edição 06 www.linuxmagazine.com.br
Entrevista NOTÍCIAS

LM » Qual é a dimensão do crescimento sistente sobre as possibilidades da pla-


dos negócios da HP com Linux no país? taforma. Para mostrar as diferenças de
JP » Temos obtido um crescimento escala, temos um grande cliente, cujo
muito significativo no Brasil com o nome ainda não podemos revelar, que
Linux e isso está nos levando a uma possui um cluster de mil servidores
posição de liderança, com grande des- rodando com Linux e fazendo processa-
taque. Para dar uma idéia desse cresci- mento de alta performance. E também
mento, a HP foi, no terceiro trimestre temos, como clientes, pequenas prefei-
do ano passado, a líder em vendas de turas que possuem um servidor com
sistemas em servidores, com uma fatia dois processadores rodando Linux. Ou
de mercado de 38,5% em faturamento ainda casos como a cidade de Maringá,
(de acordo com dados do IDC). Foi um que está investindo fortemente em solu-
crescimento expressivo, mesmo em ções baseadas em código aberto.
comparação com os 32% do segundo como uma Oracle ou uma SAP, apenas
trimestre de 2004. LM » Como a estratégia da empresa para citar algumas, não teríamos as fer-
afeta o treinamento e a certificação? ramentas para compor uma solução de
LM » Como isso afeta a política de JP » Sentimos que nossa estratégia já valor para o cliente. Não é o porte da
canais? Com que tipo de empresa a HP afetou esse mercado no passado. Houve empresa que abre as portas dos grandes
firma parcerias em Linux no Brasil? um tempo em que precisávamos trei- clientes, mas sim a oferta de um con-
JP » Os nossos canais de distribuição nar nossos canais especificamente para junto consistente de soluções que per-
e revenda estão todos preparados para as nossas soluções. Naquela época, o mitam mostrar ao cliente uma solução
vender, suportar e desenvolver solu- mercado de treinamento acompanhava estável, que traz um valor real para as
ções em Linux. O foco é a resolução dos nossos passos. Hoje o mercado está suas operações.
problemas apresentados pelo cliente e, mais desenvolvido e já existem empre-
nesse sentido, todo o nosso canal está sas especializadas e capacitadas para LM » Em que segmentos de atividade
pronto e certificado em nossas soluções dar treinamento em todos os níveis. É o Linux tem sido adotado de forma
para trabalhar com Linux. Além de nos- claro que as certificações continuam mais rápida?
sos revendedores e integradores, temos sendo muito importantes para a HP, JP » Dois segmentos do mercado têm
grandes parcerias com outros provedo- pois servem para qualificar os parceiros mostrado maior destaque: o setor gover-
res de soluções, cujos produtos comple- e profi ssionais que vão lidar com nos- namental, pela postura e investimento
mentam a oferta da HP em Linux, como sos produtos de maneira profissional e feitos em Software Livre, e o setor de
a SAP (para sistemas de gestão empresa- eficiente, oferecendo serviços e atendi- manufatura (que, para a HP, envolve
rial) ou a Oracle (para bancos de dados). mento de qualidade aos clientes fi nais. serviços, indústria e o médio e grande
Os parceiros são muito importantes, varejo). Um exemplo é o Expresso Ara-
pois são eles que trazem mais valor ao LM » Qual é o perfil do profissional de çatuba, que usa sistemas Itanium com
Linux como alternativa corporativa. Não Linux que as empresas buscam? Linux. Também há uma penetração
temos parcerias com empresas menores, JP » Com a grande penetração do Linux menor no setor de fi nanças, que é mais
se é essa a pergunta, mas estamos sem- no meio universitário, existe muita conservador quanto à adoção do Linux.
pre abertos para fechar novas parcerias gente boa e com um perfi l bem diversifi-
que agreguem valor às ofertas para cado chegando ao mercado. Há pessoas LM » Lá fora a HP já vende media centers
clientes corporativos. Existe um formu- com conhecimento técnico profundo e notebooks baseados em Linux. É o tama-
lário na página da HP Brasil para que e que sabem compor soluções – esses nho do mercado brasileiro que faz com que
qualquer empresa proponha sua oferta profi ssionais compreendem as necessi- não vejamos essas novidades por aqui?
de solução, que será analisada pela HP dades dos clientes e das empresas, até JP » O que determina a oferta local de
(O endereço http://www.hp.com.br/go/ porque esse tipo de postura é algo que produtos é a demanda. As soluções
jornada/progisv.htm tem um foco em já vem sendo trabalhado dentro das dentro da HP são sempre disponibili-
soluções para handhelds, mas é gené- universidades com o intuito de atender zadas mundialmente. O que acontece
rico e pode ser usado por fornecedores bem às demandas corporativas. É claro com freqüência é não existir demanda
de soluções para Linux em geral). que existem posições que valorizam o para um determinado tipo de produto
perfi l mais técnico, mas o que mercado ou solução, até por falta de interesse do
LM » Como é o relacionamento com procura é o tipo de profi ssional que mercado local. A maturidade do mer-
clientes governamentais? Há diferen- tenha uma visão do todo. cado dos EUA lhe dá certa vantagem;
ças entre as esferas federal, estadual as coisas acontecem lá mais rápido do
e municipal? LM » O fato de propor o Linux a partir que na América Latina. Claro que isso
JP » O mercado governamental é um da perspectiva de uma grande empresa não quer dizer que será assim para
dos mais maduros. Há diferenças de facilita o acesso aos grandes clientes? sempre: estamos preparados para ofe-
escala, é evidente, mas no geral toda a JP » Não necessariamente. Não adianta recer mais produtos conforme a neces-

http://supertuxbr.blogspot.com
área de governo já tem uma visão con- só a HP falar de Linux. Sem parceiros sidade dos clientes. ■

www.linuxmagazine.com.br edição 06 13
NOTÍCIAS Mundo Livre em Revista

Mundo Livre em Revista


■ Aberto o código do Distributed Computing Environment (DCE) ■ Lançado o Xfce 4.2.0
O código fonte do Distributed Computing Environment (DCE) do Open Group foi A versão 4.2.0 do ambiente desktop leve
aberto sob uma licença livre. O DCE é um ambiente para aplicativos distribuídos para Unix e Linux alcançou os conhecidos
rodando em diversas plataformas. Ele é utilizado especialmente em ambientes desktops KDE e Gnome em termos de recur-
de hardware e software heterogêneos, compostos de diferentes sistemas opera- sos, mas continua a exigir muito menos do
cionais, para administrar os recursos de processamento disponibilizados para os hardware do computador. Além de um pai-
aplicativos, bem como para controlar o acesso a esses recursos. O sistema dispõe nel, através do qual é possível iniciar apli-
ainda de serviços de segurança para proteger e controlar o acesso a dados, servi- cativos, e de uma barra de tarefas, o Xfce
ços de atribuição de nomes, que facilitam a procura por recursos distribuídos e contém também um gerenciador de arqui-
um modelo de organização de contas de usuários, serviços, aplicativos e dados vos com uma interface que torna confortável
que estejam largamente espalhados pelas máquinas da rede. o acesso a arquivos compartilhados do Win-
dows. Vários aplicativos desktop, de editor
a navegador, no mesmo estilo do KDE e do
Gnome, são incluídos no Xfce. Aplicativos
Gtk+ e Gnome se integram totalmente ao
ambiente desktop, mas programas do KDE
também são suportados.
Com a liberação do código fonte do DCE, o Open Group almeja a dissemina- Entre as melhorias em relação à versão
ção de conceitos e componentes dessa tecnologia, de modo que cada vez mais anterior (a 4.0) estão a compatibilidade com
aplicativos façam uso dela. A organização, que detém inclusive os direitos da as especificações do projeto Freedesktop e a
marca UNIX, ressalta ainda que o DCE torna disponível uma infraestrutura utilização de recursos do X11 como o Xine-
multiplataforma distribuída em múltiplos sistemas que é independente de fabri- rama, além da integração com aplicativos
cante. O código fonte do sistema será distribuído sob a GNU Lesser General do KDE e Gnome. Da mesma forma que os
Public License (LGPL). A versão 1.2.2 já se encontra disponível para download dois outros projetos, cujo conceito básico
no site do Open Group. Devido às restrições norte-americanas de exportação de da interface tem como origem o Common
software, o código da versão do programa que contém o módulo de criptografia Desktop Environment (CDE), o Xfce traz
DES não está disponível para cidadãos de Cuba, Irã, Iraque, Líbia, Coréia do também um menu “Iniciar”. Para incluir
Norte, Sudão e Síria, para os quais uma versão especial sem suporte à criptogra- aplicativos nesse menu há um editor espe-
fia foi liberada para download. ■ cífico e o novo “Application Finder”, que
http://www.opengroup.org/dce/ interpreta os arquivos .desktop do mesmo
http://www.opengroup.org/ modo que o KDE e o Gnome. Entre outras
http://www.fsf.org/licenses/licenses.html#LGPL novidades há um gerenciador de sessões,
http://www.opengroup.org/dce/download/dl-pg2.htm que restaura o ambiente desktop e todos os
aplicativos em execução na próxima vez que
o usuário iniciar sua sessão.
■ Polícia francesa (Gendarmerie) migra para OpenOffice.org Tanto o código fonte da versão 4.2.0 do
A polícia francesa (Gendarmerie) pla- Xfce quanto binários para diversas dis-
neja a migração do Microsoft Office tribuições estão disponíveis para down-
para o OpenOffice.org, conforme noti- load. No site os-cillation há também um
ciou o site francês Toolinux, espe- instalador gráfico. Aqueles que deseja-
cializado em Software Livre. Ainda rem experimentar o ambiente desktop
em janeiro, aproximadamente 35.000 sem riscos podem fazê-lo usando o Xfld,
desktops devem ser instalados com o uma versão do Knoppix que tem o Xfce
pacote de aplicativos para escritório como ambiente desktop padrão. ■
de código aberto e até o início do verão http://www.xfce.org/
europeu esse número deve subir para http://www.kde.org/
80.000. A Gendarmerie prevê uma eco- http://www.gnome.org/
nomia de recursos da ordem de mais de http://www.freedesktop.org/
2 milhões de euros com a migração. ■ http://www.opengroup.org/cde/
http://www.toolinux.com/news/logi- http://www.xfce.org/index.php?lang=en
c iel s /l e_ gen d ar me_ et_ open of f i ce_ http://www.os-cillation.com/article.php?sid=42

http://supertuxbr.blogspot.com
ar5768.html http://www.xfld.org/Xfld/en/index.html

14 edição 06 www.linuxmagazine.com.br
Mundo Livre em Revista NOTÍCIAS

■ Lançada versão 8.0 do PostgreSQL


O time de desenvolvi-
mento do PostgreSQL
acaba de lançar a ver-
são 8.0 do seu sistema
gerenciador de banco
de dados objeto-relacio-
nal de código aberto,
que a partir dessa ver-
são roda nativamente
no Windows NT, 2000,
XP e Server 2003: o uso
do ambiente Cygwin não
é mais necessário. Além
disso, entre outras novi-
dades o PostgreSQL oferece
suporte a transações aninha-
das e pode realizar um backup
contínuo da base de dados, a partir do qual
é possível retornar à situação de um ponto
determinado no passado (“Point-in-Time Reco-
very”). Do ponto de vista do desempenho há um novo recurso interessante:
o administrador pode determinar exatamente qual sistema de arquivos deve
ser usado para tabelas, índices etc. O desempenho do programa de manu-
tenção do sistema, o Vacuum, também está visivelmente melhor.
O PostgreSQL é distribuído sob a licença BSD. ■
http://www.postgresql.org/
http://www.cygwin.com/
http://www.postgresql.org/docs/whatsnew
http://www.postgresql.org/about/licence

■ Bluefish chega à versão 1.0 ■ A união faz a força


No fi nal de Janeiro o editor HTML Blue- Os usuários do Linux tem mais uma forma
fi sh chegou à sua versão 1.0. Entre as de conseguir os CDs de suas distribuições
novidades estão um manual mais abran- favoritas. O site Linux Tracker concentra
gente, melhor integração com os ambien- “torrents” com imagens ISO dos CDs de
tes desktop Gnome e KDE, melhor instalação das principais distribuições e
desempenho, melhores padrões para de projetos como o The Open CD.
destaque de código, melhor detecção O download dos arquivos é feito atra-
da codificação de caracteres (charset) vés da rede BitTorrent, que tem como
usada no documento e várias correções característica o fato de que quanto mais
de pequenos bugs. gente baixa um arquivo, maior a taxa
O programa tem, entre outros recursos, de transferência, já que o “upload” dos
capacidade de edição remota de docu- dados baixados para outros membros da
mentos, suporte completo a 16 idiomas, rede é feito de forma automática. Com
incluindo o Português Brasileiro, des- isso, os servidores contendo o arquivo
taque de código para 15 linguagens de não são soterrados com tantos pedidos
programação, capacidade de edição de de conexão logo após o lançamento de
mais de 500 arquivos simultâneamente, uma nova versão de um produto.
um visualizador para documentação de Para ter acesso ao software disponí-
referência e muito mais. vel no site basta fazer um cadastro gra-
O Bluefish pode ser baixado no site ofi- tuito e instalar um cliente BitTorrent.
cial, onde estão disponíveis pacotes com Há várias escolhas, desde o cliente ofi-
o software para as distribuições Fedora cial, que roda na linha de comando, até
(Core 1 e 2) Mandrake, Slackware e alternativas gráficas como o Azureus. ■
Debian, além de seu código-fonte. ■ http://www.linuxtracker.org

http://supertuxbr.blogspot.com
http://bluefish.openoffice.nl http://azureus.sf.net
NOTÍCIAS Mundo Livre em Revista

■ Primeiras partes do código fonte do Solaris disponíveis ■ Insigne Free Software Brasil
A Sun Microsystems começou a liberar as primeiras partes do código fonte do sistema vai fornecer distribuição Linux
operacional da empresa, o Solaris 10, sob uma licença de código aberto. A primeira para o projeto PC Conectado
porção de código já aberta é a que contém o Software Dynamic Tracing (DTrace) da A Insigne Free Software Brasil, empresa
nova versão do Solaris. O Solaris 10 já está disponível para download para as arqui- que desenvolve o Insigne Linux, é uma das
teturas x86 e Sparc na forma de imagens de CD e DVD. Uma versão em DVD deverá empresas que deverá fornecer uma distri-
estar à venda a partir do dia 7 de março nos fornecedores especializados. buição Linux para o PC Conectado, projeto
O DTrace é um programa que analisa as características de execução de aplicativos do governo que pretende levar ao varejo 1
e do ambiente em que eles rodam em tempo de execução, procurando por gargalos milhão de microcomputadores com cone-
de desempenho no sistema ou na rede que possam ser minimizados. Esse recurso xão à Internet a preços populares.
precisa de suporte no kernel do sistema operacional e funciona atualmente apenas Com uma base instalada de 100 mil
no Solaris. A licença sob a qual o DTrace foi liberado é a Common Development and computadores, ambiente gráfico amigável
Distribution License (CDDL), desenvolvida dentro da própria Sun e reconhecida e customizado para o projeto do governo,
recentemente como licença Open Source pela Open Source Initiative (OSI). que requer que, além do sistema ope-
Em paralelo com a abertura do código do DTrace, a Sun inaugurou o seu novo racional Linux, as máquinas cheguem
portal OpenSolaris.org, que deverá servir de referência para a comunidade Open ao mercado com mais 26 aplicativos de
Source no que concerne ao desenvolvimento do OpenSolaris. Nos próximos meses código aberto – como editor de texto, edi-
a Sun irá paulatinamente abrir outras porções do código fonte do Solaris 10, mas tor de planilhas eletrônicas e programa
ainda precisa se certificar de que trechos de código desenvolvidos em parceria com para montagem de apresentações – o sis-
outras empresas não sejam abertos por engano, o que poderia infringir acordos de tema da Insigne é totalmente compatível
desenvolvimento. Essa análise demandaria tempo adicional. ■ com o Red Hat/Fedora Core, mas possui
http://www.sun.com/ seu próprio sistema de gerenciamento de
http://www.sun.com/software/solaris/ pacotes, o IPAK, capaz de lidar também
http://www.sun.com/bigadmin/content/dtrace/ com pacotes RPM e de usar o APT.
http://www.sun.com/cddl/ A solução da Insigne não trará o Cross-
http://www.opensource.org/ Over Office, que permite rodar algu-
© Propriedade de Sun Microsystems®. Usado sob permissão. mas aplicações do Windows no Linux,
já que a idéia é oferecer ao público um
■ Sun abre patentes do OpenSolaris computador cujo sistema seja de código
A Sun Microsystems liberou 1.600 patentes do OpenSolaris sob a Common Development totalmente aberto, como é o caso da dis-
and Distribution License (CDDL), reconhecida recentemente como licença Open Source tribuição Linux da empresa. O suporte
pela Open Source Initiative (OSI). A medida deve proteger desenvolvedores que utilizem técnico para os compradores do PC
o código fonte do Solaris contra processos de infração de patentes. A informação no site Conectado está orçado em R$ 30,00 ao
da Sun não informa entretanto como a liberação das patentes irá influir na implementa- ano, período no qual o usuário também
ção de recursos do OpenSolaris em outros projetos de código aberto. É provável que isso irá desfrutar de atualizações regulares.
seja um problema no caso de as licenças serem incompatíveis umas com as outras, como Usuários que optarem pelo suporte téc-
é provavelmente o caso da CDDL e da GNU General Public License (GPL), que diferem, nico receberão uma chave de ativação.
por exemplo, nas permissões de uso do código fonte em projetos de código fechado. O Insigne Linux se encontra atual-
Recentemente a IBM também anunciou a liberação de 500 patentes para a comunidade de mente na versão “Zino 3.0” e pode ser
desenvolvedores de sistemas de código aberto. Entretanto, ao contrário da Sun, a IBM não baixado diretamente do site da Insigne
indicou uma licença específica, mas aceitou todas as licenças reconhecidas pela Open Source Free Software Brasil. O sistema vem
Initiative (OSI) na liberação de suas patentes. Por outro lado, a política de escolha das paten- customizado e pré-instalado (OEM) em
tes do portfólio de 40.000 patentes da IBM também tem sido motivo de controvérsia. microcomputadores comercializados pela
Em um roadmap a Sun disponibilizou mais detalhes sobre o plano para a aber- Semp Toshiba, Magazine Luiza, Positivo
tura do restante do código fonte do Solaris 10 e do desenvolvimento do OpenSolaris. Informática e Wal Mart, entre outros. ■
No máximo até março um conselho administrativo com cinco membros deve ser http://www.insignesoftware.com/
fundado; ele terá a função de coordenar o desenvolvimento da versão de código http://www.insignesoftware.com/
aberto do sistema operacional da empresa. Dois dos membros do conselho virão da produtos/gnu.php
própria Sun, dois virão da comunidade OpenSolaris e o último deverá ser um mem- http://www.iti.br/twiki/bin/view/Main/
bro da comunidade Open Source em geral, nomeado pela empresa. ■ PressRelease2005Jan20A
http://www.sun.com/cddl/ http://www.insignesoftware.com/
http://www.opensource.org/ docs/guia74.html
http://www.sun.com/smi/Press/sunflash/2005-01/sunflash.20050125.2.html http://www.codeweavers.com/
http://www.gnu.org/copyleft/gpl.html products/cxoffice/
http://br-linux.org/main/noticia-ibm_compartilha_500_patentes_c.html http://www.insignesoftware.com/
http://opensource.org/licenses/index.php downloads/insigne/001.php
http://kwiki.ffii.org/IbmEp0501En http://www.insignesoftware.com/

http://supertuxbr.blogspot.com
http://www.opensolaris.org/roadmap/index.html recursos/recursos.php

16 edição 06 www.linuxmagazine.com.br
http://supertuxbr.blogspot.com
NOTÍCIAS Mundo Livre em Revista

■ Diretor do MIT Media Lab planeja computador barato para ■ Novell vai portar o
países emergentes Evolution para o Windows
Fundador e diretor do Media Lab da renomada universidade americana MIT (Massachu- A Novell está planejando portar o Evo-
setts Institute for Technology) e co-fundador da Wired (que ainda deve estar na memória lution, gerenciador de informações
de todos os envolvidos com a Internet pré-bolha .COM), Nicholas Negroponte planeja pessoais e cliente de email de código
desenvolver, em conjunto com a AMD, um computador portátil com produção em massa aberto da empresa, para o Windows®. A
para ser usado em países em desenvolvimento. Ele estima o preço do equipamento, que fonte da informação é nada menos que
terá uma tela de 14 polegadas e rodará Linux sobre processadores AMD, em 100 dólares. o blog de Nat Friedman, co-fundador da
“O modelo já foi desenvolvido; agora precisamos conversar com parceiros adicionais. A Ximian, empresa especialista em Linux
chegada do equipamento ao mercado deverá acontecer entre 12 a 18 meses”, informou desktop comprada pela Novell em 2004,
Negroponte. Um porta-voz da AMD confi rmou o trabalho de cooperação com o MIT e e atual vice-presidente de pesquisa e
descreveu o plano como um “projeto altamente interessante”. A própria AMD apresentou desenvolvimento da companhia.
no ano passado um projeto semelhante: o Personal Internet Communicator (PIC), cujo Friedman informa, entretanto, que o
desenvolvimento tinha por objetivo fornecer microcomputadores a preços acessíveis para trabalho de criação de uma versão para
países emergentes e em desenvolvimento – dentro da sua estratégia 50x15 a AMD almeja Windows® do Evolution é enorme e que
equipar 50% da população mundial com computadores pessoais. O AMD PIC – software ainda não há nenhum cronograma para
inclusive – deverá custar, entretanto, 185 dólares (com monitor, 250 dólares) implementação do software. O Evolu-
O projeto de Negroponte conta com as promessas de apoio não somente do MIT tion é considerado atualmente um dos
e da AMD, mas também dos gigantes do mercado de TI mundial Google, Motorola, maiores concorrentes do MS Outlook. ■
Samsung e News Corp – ou seja: tecnologia, hardware, conteúdo e difusão via saté- http://nat.org/2005/january/#17-Janu-
lite. A diferença para o projeto original da AMD (além do preço) é que, segundo os ary-2005
planos de Negroponte, o computador deverá revolucionar o ensino nos países onde http://www.novell.com/
for utilizado. Deve ser produzido em larga escala e vendido aos ministérios de edu- h t t p ://w w w.n o v e l l .c o m /p r o d u c t s /
cação dos países em desenvolvimento, que deverão distribuí-los convenientemente desktop/features/evolution.html
aos alunos das escolas. Uma empresa – na qual o MIT teria participação societária
– deverá ser fundada para cuidar da produção e comercialização do computador. ■ Edulinux será adotado por
Negroponte ainda informou que, com o intuito de possibilitar a compra do computador escolas chilenas
pelos governos dos países pobres, ele entrou em contato com o Banco Mundial. “Nós não O Chile quer dar vida nova a PCs antigos
vamos lançar o computador no mercado. O mercado potencial para o grupo alvo do pro- em escolas do país usando o Edulinux.
duto é de cerca de 800 milhões de unidades”, ressaltou. Em janeiro ele conversou com o O sistema transforma computadores
ministro da educação chinês, que teria manifestado grande interesse pelo projeto. ■ conectados em rede em terminais leves,
http://www.media.mit.edu/ que podem executar programas instala-
http://www.mit.edu/ dos em um servidor central. Isso deve
http://web.media.mit.edu/~nicholas/ permitir, inclusive, a utilização de soft-
http://50x15.amd.com/ wares em suas versões mais atualizadas.
De acordo com o jornal El Mercurio, o
■ Lançada a versão 1.0 do Skype para Linux e Mac OS X objetivo do projeto é disponibilizar um
A versão 1.0 para Linux e Mac OS X do telefone via PC para cada 30 alunos.
Internet (VoIP) e cliente de troca de mensa- Primeiramente, 25 escolas vão testar
gens instantâneas Skype já está disponível a arquitetura cliente-servidor do sis-
gratuitamente para download. O hardware tema, que depois deverá ser utilizada
mínimo para rodar o programa é um pro- em 600 escolas. O projeto piloto tem
cessador de 400 MHz e 128 MB de RAM. por meta mostrar que terminais leves
O Skype é um sistema proprietário que podem executar programas que, de
permite realizar telefonemas gratuitos via outro modo, não poderiam rodar dire-
Internet dentro de sua rede privada e ligações pagas tamente no hardware disponível. Além
para usuários da rede de telefonia fi xa. O custo de ligações feitas com o Skype para telefo- disso, espera-se que o uso de Internet
nes fi xos depende da localidade: para aquelas onde há cobertura pela empresa, o custo é de e email através de um servidor central
20 centavos de dólar por minuto, independente de onde se esteja ligando. Em lugares que seja mais simples. Ainda segundo o jor-
não dispõem dessa cobertura – o Brasil é um deles – são cobradas taxas individuais cujos nal, caso os alunos não consigam usar o
valores dependem, entre outras coisas, da proximidade de uma localidade com cobertura. Edulinux, poderão voltar a adotar uma
O programa funciona bem até via modem. Para ligações dentro de sua rede privada, solução proprietária. O custo total para
a qualidade do áudio das ligações supera a da rede de telefonia fi xa mesmo com uma uma solução baseada no Edulinux com
conexão discada de baixa velocidade. O sistema Skype funciona segundo o modelo 5 desktops é estimado em R$7.000,00.
“peer to peer” e usa para telefonemas e mensagens instantâneas um sistema de codi- Para 20 desktops estima-se um custo
ficação, que emprega um algoritmo AES com uma chave de 256 bits. A negociação em torno de R$25.000. ■
das chaves simétricas ocorre via algoritmo RSA com uma chave de 1024 bits. ■ http://www.edulinux.cl/

http://supertuxbr.blogspot.com
http://www.skype.com/ http://www.elmercurio.cl/

18 edição 06 www.linuxmagazine.com.br
Muralhas Digitais CAPA

Proteção ao alcance do usuário comum

Firewall
����������

� ���������� �
� ������������ � �
� ������ � �

para
��������������� � ���������� � � � �
����������� � ���� � � � �
������������ � ������������� � � � � �
� ������������� � � � � � �
��������

Leigos
������������� �������� ������ ������������������������������

Figura 1: Os firewalls modernos podem operar como pontes ou bridges (à


esquerda), roteadores (ao centro) ou gateways de aplicação (à direita).

ticamada pode ser estendido para baixo Um maiores incômodos quando se


até a camada 2 – situação em que temos administra um sistema de segurança é a
o famoso bridgewall. Da mesma forma quantidade de informação acumulada nos
Os Firewalls, dispositivos que controlam o como uma bridge (ou um switch) con- registros de eventos, os chamados logs.
trola o tráfego baseado nos endereços Nosso terceiro artigo mostra ferramentas
tráfego e bloqueiam acessos indesejados,
MAC (camada 2), um bridgewall inspe- para ler e analisar tais logs. Nossa maté-
estão se tornando cada vez mais ciona os pacotes desde a camada 2 até ria fi nal, “Cumprindo Tabela”, descreve
sofisticados. Entretanto as ferramentas a camada 4. O bridgewall é um fi ltro de o Shorewall, abreviação de Shoreline
pacotes tão flexível quanto um switch. Firewall – outra ferramenta que não é um
de criação e configuração de firewalls Um gateway de aplicação oferece um fi rewall em si, mas que abranda o inferno
estão ficando cada vez mais simples nível adicional de segurança em uma que é a vida do profissional de segurança.
camada superior. Ele age na conexão Nenhum assunto é mais importante que
e acessíveis ao usuário não técnico.
TCP como um intermediário entre o a segurança; da mesma forma, poucos dis-
POR JOE CASAD E ACHIM LEITNER

S
cliente e o servidor – é o conhecido proxy. positivos são tão importantes na cadeia de
Isso permite que o fi rewall inspecione segurança quanto os fi rewalls. O tema
eu computador permite que diretamente os protocolos da camada de deste mês é apenas um lembrete de que
você tenha uma visão do mundo, aplicação e detecte pacotes ilegais que fi rewalls não são apenas para experts:
mas ninguém quer ter o mundo quebrem as regras estabelecidas pelo qualquer um conectado à Internet precisa
olhando seu computador. Os invasores administrador de segurança. de um fi rewall. Não é uma opção. ■
estão ficando cada vez mais ousados e Obviamente, os fi rewalls mais exóti-
tecnicamente mais “afiados”. Não é mais cos são produtos dedicados, baseados CAPA
aceitável esperar que tais delinqüentes em hardware e destinados a redes gigan-
simplesmente não notem sua estação tescas e confi gurações complexas. Esta-
Cão de guarda.......................... 20
O Guarddog promete um “firewall fácil” no
de trabalho “dando sopa”. Se você está mos mais interessados no que se pode Linux com uns poucos cliques do mouse.
conectado à Internet, é melhor colocar- fazer com hardware comum, uma distri- Abrindo a caixa preta ........... 23
se atrás de algum tipo de fi rewall. buição Linux e alguns programas fáceis Veja ferramentas que auxiliam no desenvolvi-
Os fi rewalls são oferecidos em vários de encontrar. Este mês, trazemos uma mento e manutenção de regras de firewall.
tamanhos, formatos, preços e tecnolo- seleção de ferramentas para construção Ponte levadiça .......................... 27
gias. Um fenômeno curioso vem ocor- de fi rewalls, além de utilitários podero- Implemente um firewall de camada 2 (bridge).
rendo: o que antes era um simples fi ltro sos que simplificam sua confi guração e Cumprindo tabela ...................31
hoje é um conjunto completo de produ- manutenção. Com elas, você não precisa Veja em detalhes a implementação de um
tos de segurança. Tradicionalmente, um ser um expert em redes ou segurança firewall com o Shorewall.
fi rewall é um tipo de roteador que fica na para administrar um fi rewall.
camada 3 do modelo de referência OSI. A Em um dos artigos, “Cão de Guarda”,
camada 3 é, justamente, onde residem os mostraremos como montar um fi rewall
protocolos de rede, mais precisamente o com IPtables ou IPchains usando
protocolo IP. O roteador lê os endereços o Guarddog. O artigo seguinte,
IP e toma decisões quanto ao destino do “Ponte Levadiça”, discorre
datagrama– ou seja, em que direção deve sobre a s fer ra menta s
roteá-lo. Um fi rewall também inspeciona necessá r ias pa ra se
a camada 4 (ou seja, os protocolos de construir um firewall
transporte TCP e UDP) para identificar do t ipo “br idge”.
os serviços relevantes e interpretar os Veremos como os
avisos presentes nas flags. “bridgewalls” fun-
Produtos modernos de fi rewall podem cionam e em que
operar em outras camadas da pilha de situações eles são

http://supertuxbr.blogspot.com
protocolos (fi gura 1). Esse enfoque mul- interessantes.

www.linuxmagazine.com.br edição 06 19
CAPA Guarddog

Configure seu firewall com o Guarddog

Cão de guarda
O Guarddog, um programa do KDE,

promete um “firewall fácil” no Linux com

uns poucos cliques. Mais importante:

auxilia usuários inexperientes a proteger

seus computadores – ou mesmo

redes inteiras – contra os perigos da

Internet. POR HOLGER JUNGE

O s subsistemas ipchains (kernel


Linux 2.2) e iptables (kernel
Linux 2.4 e 2.6) confi guram o
com a versão 2.2. Se você usa Debian
Sarge ou Sid, os repositórios oficiais da
fi rewalls, tais ferramentas padecem de
uma certa dose de granularidade – em
distribuição possuem, respectivamente, outras palavras, costumam ser “oito ou
kernel do Linux para agir como fi rewall. as versões 2.3.2 e 2.4.0. Usuários do Sarge
Entretanto, sua operação por linha de que preferirem instalar a versão instável
oitenta”. Alguns usuários precisam de
uma configuração simples de fazer, mas
comando pode parecer um tanto “cifrada” em lugar da disponível para o Sid devem um pouco mais detalhada. O Guarddog
para neófitos do Linux. Em meio a essa estar cientes dos prós e contras mencio- pode ser a ferramenta ideal para isso.
confusão, Simon Edwards desenvolveu o nados no quadro
Guarddog [1] para tornar as coisas mais “Aos Corajosos”.
fáceis. O Guarddog é uma ferramenta O Guarddog foi
gráfica de confi guração e manutenção projetado para o
de fi rewalls. Protegida sob a licença GPL, u s u á r io domé s -
roda tanto no KDE 2 como no KDE 3. tico, seja em uma
A versão estável mais atual (2.4.0) saiu única máquina ou
em dezembro de 2004 e pode ser obtida em uma pequena
em [2]. Como os nossos testes foram fei- rede local. Embora
tos antes dessa data, experimentamos a s d ist r ibu ições
com as versões 2.2.0 (estável) e 2.3.2 mais importantes
(desenvolvimento). Além dos códigos como Conec t iva,
fonte, o site possui binários prontos para Red Hat, Mandrake
o Mandrake e o SuSE. Há binários para o e SuSE possuam
Red Hat também, mas apenas para a ver- suas próprias fer-
são 2.2.0. Há também a indicação de um ramentas gráficas Figura 1: A interface gráfica do Guarddog depois de iniciado. Observem

http://supertuxbr.blogspot.com
repositório APT para o Debian Woody para montagem de as duas zonas pré-configuradas, Internet e Local.

20 edição 06 www.linuxmagazine.com.br
Guarddog CAPA

ende os endereços da rede interna. Uma


máquina sozinha ficará contente ape-
nas com essas duas zonas.
Pode-se usar a aba Protocol (ver figura
2) para permitir ou bloquear protocolos
específicos. A estrutura em árvore à
direita organiza os protocolos por cate-
goria. Sem sombra de dúvida, o DNS
é o primeiro serviço que você deverá
permitir; ele está na categoria Network.
Ao ativar a opção DNS - Domain Name
Server aparecerá uma marca para indi-
car a liberação do serviço. Para aplicar
as alterações, pressione o botão Apply
(aplicar). Um segundo clique na opção
mostra um X, indicando que o fi rewall
irá, explicitamente, rejeitar qual-
quer conexão que use o protocolo. Se
nenhuma marca estiver aparecendo, o
Figura 2: A aba Protocol permite informar ao firewall quais protocolos deve liberar e quais bloquear. fi rewall simplesmente bloqueará o trá-
O usuário não precisa se preocupar com números de porta e outros bichos. fego baseado nesse protocolo.
Além do DNS, você pode precisar (ou,
Armadilhas de Segurança erros de configuração. É possível melhor dizendo, certamente precisará)
Os usuários inexperientes precisam ter ainda determinar grupos de máqui- de HTTP, HTTPS (HTTP seguro), FTP
bastante cuidado ao montar um fi rewall. nas – as chamadas zonas – o que per- (presente na categoria File transfer) e os
A facilidade com que a “empurração mite, entre outras coisas, criar redes protocolos de email SMTP e POP3 (na
de mouse” habilita e desabilita opções periféricas, as chamadas Zonas Des- categoria Email).
pode estimular – erroneamente! – o militarizadas (DMZ).
usuário a deixar mais portas abertas do “Fichando” protocolos
que o necessário. No outro extremo, A interface A aba Logging (ver figura 3) permite que
é bem fácil criar uma muralha tão O Guarddog deve ser executado com configuremos o Guarddog para registrar
intransponível que deixaria alguns ser- privilégios de superusuário (root) para eventos no sistema syslog. Isso pode
viços importantes inacessíveis. que o programa possa colocar imedia- ser usado para, por exemplo, detec-
Além disso, o Guarddog é um pro- tamente as novas regras de fi ltragem tar “crackers” varrendo suas portas em
grama do KDE e não deve ser rodado em ação. A figura 1 mostra o Guarddog busca de falhas. O Guarddog pode ajus-
em uma máquina servidora, que no momento em que é chamado. Infe- tar a taxa de verificação (logging rate)
muitas vezes roda apenas em modo lizmente, a GUI não é muito intuitiva para limitar a bagunça criada por even-
texto. É preferível usar o Guarddog em alguns pontos. O Guarddog possui tos do fi rewall nos logs do sistema. É
em uma máquina cliente para gerar quatro abas: a guia Zone permite que os importante impor um limite para isso;
a confi guração do fi rewall e, depois, usuários agrupem máquinas em zonas. do contrário, seu computador pode ser
copiar o script resultante para seu Em Zone properties (propriedades da derrubado por Negação de Serviço (DoS
servidor dedicado. zona) deve-se digi-
Como o Guarddog é baseado em tar os endereços
ipchains ou iptables, os usuários pre- IP (únicos ou em
cisam certificar-se de que os módulos faixas) para a zona.
apropriados do kernel estão dispo- Há duas já confi-
níveis no servidor. Muitas distribui- guradas, uma delas
ções encarregam-se automaticamente chamada de Internet
disso. Na remotíssima possibilidade e a outra de Local.
de a sua não tomar essas providên- Nen hu m a de l a s
cias, será necessário recompilar o pode ser apagada. A
kernel para incluir os módulos de zona Internet auto-
ipchains ou iptables. maticamente inclui
O Guarddog usa comandos de fi l- qualquer endereço
tragem que levam em conta os pro- IP que não faça
tocolos dos pacotes em trânsito. os parte de nenhuma
usuários não precisam se preocupar outra zona. Já a Figura 3: Os administradores podem usar a aba Logging para especificar o

http://supertuxbr.blogspot.com
com os números de porta, o que evita zona Local compre- tipo de registro de eventos (log) que o firewall deve fazer.

www.linuxmagazine.com.br edição 06 21
CAPA Guarddog

– Denial of Service). Uma enxurrada de o script. Depois,


pacotes IP malformados poderia rapida- basta copiá-lo para
mente abarrotar os arquivos do syslog e o servidor e rodá-lo.
sobrecarregar seu disco rígido.
Se, por algum motivo qualquer, for Uma porta
preciso um nível maior de detalhe sobre para o mundo
os pacotes IP e TCP que entram, é possí- Nem sempre os
vel ativar a opção de mostrar o fluxo de f i rewa l l s L i nu x
dados na parte de baixo da tela. são usados para Figura 5: O computador rodando Linux e atuando como firewall também
A aba Advanced (avançado – ver proteger apenas a é um gateway para a rede interna acessar a Internet.
figura 4) oferece opções avançadas para máquina em ques-
ajuste fi no do fi rewall. É de especial tão. Pelo contrário, é comum usar sis- Agora clique em Internet e Local sob o
interesse para administradores expe- temas Linux como parte da estrutura ramo Connection para certificar-se de
rientes. Se algo der errado, não entre de segurança de redes inteiras. Nesse que a zona LAN está conectada à Inter-
em pânico: clique em Restore to factory caso, o computador rodando Linux fun- net e à máquina local. Na aba Protocol
defaults… (restaurar valores iniciais) ciona como um “porteiro” – o chamado escolha Internet e habilite (ou bloqueie)
para usar os padrões do software. Os gateway – e possui duas interfaces (pla- os protocolos apropriados na coluna
padrões para Local Dynamic Port Range cas) de rede: uma voltada para a Inter- LAN. Finalmente, clique em Apply para
também são suficientes na maioria dos net, a outra conectada à rede interna. armazenar as regras no script /etc/
casos. Elas especificam a faixa de por- (ver figura 5). É bastante simples confi- rc.firewall e ativar o fi rewall. ■
tas que o Linux pode usar para iniciar gurar o Guarddog para o papel. A única
conexões de dentro para fora da rede. ressalva: isso só funciona com iptables, Aos Corajosos
Se algum protocolo não estiver lis- por isso é necessário kernel 2.4 ou 2.6. Apesar da versão estável ser a 2.4.0, muitas
tado na aba Protocol, é possível clicar Será preciso configurar o mascaramento distribuições (como a Debian Sarge) ainda
em New Protocol (novo protocolo) e de IP antes de usar o Guarddog para disponibilizam apenas a versão instável
digitar o nome, o transporte usado (TCP gerar as regras do fi rewall. Embora o anterior, a 2.3.2. Há alguns problemas em
ou UDP) e as portas usadas por ele. Guarddog não possa auxiliá-lo nesse usar essa versão em ambientes de produ-
ção. Há, é claro, vantagens em relação à 2.2,
O Guarddog possui um útil recurso passo, seu primo Guidedog pode [4].
como a definição, pelo usuário, de protoco-
de importação e exportação dos scripts O primeiro passo é criar uma nova
los desconhecidos. Há também o suporte
de fi rewall. É possível, por exemplo, zona no Guarddog para a rede local. ao kernel 2.6, recurso ausente no Guarddog
exportar as regras já criadas para um Para isso, clique em New Zone na aba 2.2, e a adição de muitos protocolos novos
script simples em shell e armazená-lo Zone. Qualquer nome serve – LAN, por como RSync, Distcc, GKRellm, Bittorrent,
em /etc/rc.firewall. Como não é comum exemplo. Depois clique em New Address Servidor de Chaves PGP, Jabber sobre SSL e
servidores rodarem o ambiente KDE, os para confi gurar os endereços IP, que o Microsoft Media Server. Todas essas van-
tagens podem ser usufruídas também com
administradores podem, simplesmente, podem ser únicos, faixas ou redes intei-
o Guarddog 2.4.0, portanto desaconselha-
pressionar o botão Export para criar ras (como, por exemplo, 192.168.1.0/24).
mos o uso da versão instável.

INFORMAÇÕES
[1] Página oficial do Guarddog: http://www.
simonzone.com/software/guarddog
[2] Download do programa: http://www.
simonzone.com/software/guarddog/
#download
[3] Manual Online do Guarddog:
http://www.simonzone.com/software/
guarddog/#manual
[4] Guidedog: http://www.simonzone.com/
software/guidedog/

Holger Junge trabalha para a Life-


SOBRE O AUTOR

medien (www.lifemedien.de) onde,


como bom pastor, apascenta servi-
dores de domínio e de web além de
bancos de dados MySQL e Oracle.
Figura 4: O Guarddog permite que muitos detalhes do firewall sejam configurados. Por exemplo, é
Obviamente, todos rodando Linux.

http://supertuxbr.blogspot.com
possível definir novos protocolos e importar ou exportar scripts.

22 edição 06 www.linuxmagazine.com.br
Análise de Incidentes em Firewalls CAPA

Mergulhe fundo nos logs do seu firewall

Abrindo a caixa preta


Firewalls baseados em Netfilter produzem registros de eventos (os famosos

logs) tão monstruosos e gigantescos que ninguém em sã consciência

quer (ou consegue) digeri-los manualmente. Para nos tirar desse lodaçal

lançamos mão das ferramentas de análise de logs. Este mês testamos o

IPtables Log Analyzer, o Wallfire wflogs e o FWlogwatch, que pretendem

auxiliar os administradores no desenvolvimento e manutenção de suas

regras de firewall. Será que dão conta do recado? POR RALF SPENNEBERG

E m ambientes protegidos por


firewalls, o administrador pre-
cisa manter um controle rígido
sobre como estão defi nidas as regras
de fi ltragem e a quantas anda o tráfego
Correndo em direção contrária, o
IPtables Log Analyzer é calcado no sub-
sistema Ulogd [4] de Harald Weltes, que
substitui o subsistema padrão do ker-
nel, o syslog. Infelizmente, ferramentas
MySQL chamado iptables, liberando
acesso para que os usuários iptables_
admin e iptables_user possam manipulá-
lo. Depois, é preciso gerar as tabelas
dentro do banco de dados (veja a lis-
dos clientes. Entretanto, megabytes de de análise gratuitas que reconheçam o tagem 1). Obviamente, depois de tudo
arquivos de registro (logfi les) podem banco de dados do Ulog são raríssimas. isso deve-se escrever as regras para o
afogar até os profi ssionais mais com- Uma delas é o Ulogd-php [5]. Ao contrá- IPtables. Duas cadeias defi nidas pelo
petentes, arrastando-os numa fenome- rio de todos os outros sistemas de regis- usuário nos parece ser a melhor abor-
nal enxurrada de informações que eles tro de eventos, o Ulogd pode registrar dagem (veja a listagem 2).
enfrentam sem proteção apenas para ter incidentes em seu banco de dados.
certeza de que não deixaram nenhuma Criando cadeias
pista para trás. É uma vida dura… IPtables Log Analyzer Em vez do tradicional -j ACCEPT, o
O IPtables Log Analyzer é um servidor IPtables usará, agora, -j LOG_ACCEPT.
Os amigos do syslog que gera logs do IPtables (kernels 2.4 Essas modificações não são necessá-
Ferramentas de análise de protocolo e 2.6) artisticamente formatados em rias se usarmos o Shorewall [6] ou o
podem ser de grande ajuda para sair lindas páginas HTML (ver figura 1). A SuSE Firewall em CD [7]. Isso posto,
desse espinhoso dilema. Felizmente, ferramenta tem três componentes. O temos que informar também que a
os usuários de Linux possuem muitas gerenciador de saída (database feeder) SuSE não vai mais oferecer suporte
opções de programas para análise de armazena cada evento registrado nos ao seu fi rewall comercial. Essa é mais
firewalls. Neste artigo analisaremos logs em um banco de dados MySQL. uma razão para que os administradores
três alternativas: IPtables Log Analyzer Os administradores podem consultar refl itam e passem a usar apenas ferra-
[1], wflogs do projeto Wallfire [2] e os resultados em uma interface web. mentas e atualizações provenientes do
fwlogwatch [3]. Todos os três reconhe- O gerenciador, o banco de dados e a universo do Software Livre. Ficar na
cem uma variedade bastante grande de interface web podem rodar tanto na mão de fornecedores comerciais é isso
protocolos e apresentam os resultados mesma máquina como em máquinas mesmo: ficar na mão...
em relatórios HTML muito bonitos. O separadas. Nesse segundo caso, o O próximo passo é instalar a interface
wflogs e o fwlogwatch possuem, além banco de dados pode recolher logs de web. Para isso, o administrador precisa
disso, modos de visualização em tempo múltiplos fi rewalls. simplesmente copiar (ou mover) o dire-
real. O IPtables Log Analyzer é a única Depois de decidir-se sobre a arquite- tório web para dentro da área de docu-
ferramenta que usa um banco de dados tura a ser implementada, o administra- mentos HTML (chamada normalmente

http://supertuxbr.blogspot.com
para armazenar os resultados. dor precisa criar um banco de dados de document root) do servidor web que

www.linuxmagazine.com.br edição 06 23
CAPA Análise de Incidentes em Firewalls

Para compilar o wflogs, siga as eta-


pas de sempre, com os comandos:
./configure; make; make install. Tal-
vez seja preciso especificar, no script
confi gure, o diretório onde a biblioteca
WFnetojbs se encontra.

De Netfilter a HTML em
poucos passos
O wflogs pode processar logs de
fi rewall tanto online quanto offl ine.
O comando a seguir cria um relatório
simplificado formatado em HTML e
gerado a partir de um arquivo de log
do Netfi lter (figura 2):

wflogs -i netfilter -o html U


netfilter.log > logs.html

No modo real time, o wflogs analisa


cada novo evento registrado no log e,
depois de processados, joga todos na
tela. Os administradores podem usar
um shell para mudar o comportamento
Figura 1: O IPtables Log Analyzer oferece uma visão geral bem clara sobre o estado dos firewalls. do wflogs interativamente. Por exemplo,
o comando a seguir diz ao wflogs para
estiver usando (provavelmente o Apa- wflogs não guarda as informações pro- monitorar o arquivo /var/log/warn em
che) e modificar o arquivo confi gure. cessadas em um banco de dados, mas tempo real:
php para refletir as configurações reais pode converter entre os formatos de
do banco de dados e do servidor web arquivo do Netfi lter, IPchains e Ipfi lter. wflogs -RI -o human U
(usuário, senha, URL). A última etapa é Instalar o wflogs em um sistema /var/log/warn
instalar e ativar o gerenciador de saída Debian é tarefa simples; basta usar
(database feeder). Talvez seja preciso o APT. O Debian versão Sid inclui o A opção -P obriga o wflogs a proces-
alterar novamente as credenciais de wflogs nos repositórios oficiais. Para sar mensagens antigas no arquivo. O
usuários do banco de dados. o Debian estável (Woody) o programa wflogs ignora mensagens que não sejam
O IPtables Log Analyzer possui três pode ser baixado de [8]. Usuários de específicas de fi rewall.
variantes: feed_db.pl, feed_db-shorewall. outras distribui-
pl e feed_db-suse.php. Para rodar o fee- ções têm a opção
der automaticamente durante o boot, é de compila r o
preciso copiar o script de inicialização wf logs a partir
scripts/iptablelog para o diretório /etc/ dos fontes – quem
init.d e criar os links simbólicos apro- gosta de RPM não
priados nos diretórios rc. terá sorte desta
vez. Será neces-
wflogs sário, antes, ins-
O wflogs é a ferramenta de análise do talar a biblioteca
projeto Wallfi re [2], embora possa ser Wfnetobjs, outro
usada independentemente dos outros componente do
módulos. O programa interpreta e Wallfi re [2]. Reco-
processa arquivos de log dos fi rewalls menda-se ainda
baseados em Netfi lter, IPchains, IPfi l- a instalação da
ter, Cisco PIX, Cisco IOS e do sistema biblioteca alter-
de detecção de intrusos (IDS - Intrusion nativa de DNS,
Detection System) Snort. Os relatórios de adns [9], para
evento podem ser produzidos em texto que seja possível
puro, HTML e XML, além de um inte- fazer resolução de
ressante modo interativo, em que os nomes por DNS Figura 2: A página wflogs Summary (resumo do wflogs) mostra quantos

http://supertuxbr.blogspot.com
eventos são mostrados em tempo real. O assíncrono. pacotes foram registrados para cada origem.

24 edição 06 www.linuxmagazine.com.br
Análise de Incidentes em Firewalls CAPA

Listagem 1: Banco de dados MySQL


# mysql -u root -p
mysql> create database iptables;
mysql> grant create,select,insert on iptables.* to iptables_admin@localhost identified by ‘g3h31m’;
mysql> grant create,select on iptables.* to iptables_user@localhost identified by ‘auchgeheim’;
mysql> quit
# cat sql/db.sql | mysql -u iptables_admin -p iptables

Filtrando mensagens rios) e Realtime Response Mode (modo


Há opções de fi ltragem extremamente interativo em tempo real). No modo Log
poderosas que podem restringir a exibi- Summary, o programa gera relatórios
ção de mensagens a tipos bastante espe- em texto puro ou HTML com os resu-
cíficos. O fi ltro a seguir foi retirado da mos da análise dos logs (fi gura 3). No
documentação do wflogs. Ele lista ape- Report Mode, o fwlogwatch automatica-
nas as conexões bloqueadas de Telnet mente cria relatórios de incidentes que
e SSH ocorridas nos últimos três dias e os administradores podem enviar às
vindas da rede 10.0.0.0/8: pessoas afetadas pelo incidente sempre
que necessário.
wflogs -f ‘$start_time >= U No Realtime Mode, o fwlogwatch
this 3 days ago] && $start_time U responde a ataques executando scripts,
< [this 2 days ago] && U enviando mensagens de email ou auto- Figura 4: O servidor web embutido no fwlog-
$chainlabel =~ /(DROP|REJECT)/ U maticamente modificando as regras do watch permite que o administrador monitore o
&& $sipaddr == 10.0.0.0/8 && U firewall. Os administradores podem estado atual do firewall.
$protocol == tcp && ($dport == U usar o servidor web embutido (não há
ssh || $dport == telnet) && U necessidade de um Apache) para moni- fwlogwatch -b -Pn -U U
($tcpflags & SYN)’ -i U torar o estado do fwlogwatch. ‘Spenneberg.Com’-p -n -N -o U
netfilter -o text --summary=no O programa reconhece os arquivos de output.html -t -w U
log de fi rewalls baseados em IPchains /var/log/messages
fwlogwatch (opção i), Netfilter (n), IPfilter (f ),
Boris Wesslowski desenvolveu o fwlog- IPFW (b), Cisco IOS (c), Cisco PIX (p), A opção -Pn ativa o interpretador para
watch para o RUS-CERT na Universi- Netscreen (e), Windows XP (w), Elsa os logs do Netfi lter. Já -U permite que
dade de Stuttgart, Alemanha. A versão Lancom (l) e o IDS Snort (s). A insta- o usuário especifique um cabeçalho
1.0 do programa [3] foi, finalmente, lação é feita com um simples make && para o relatório. A opção -o especifica o
liberada sob a licença GPL. make install && make install-config. arquivo de saída; -w estipula que o rela-
O fwlogwatch possui três modos de Boris Wesslowski possui pacotes para tório será gerado no formato HTML. -n
operação: Log Summary Mode (modo Red Hat Linux e Debian no site oficial e -N ativam a resolução de nomes para
de relatório resumido), Interactive do fwlogwatch. máquinas e serviços. Como resultado,
Report Mode (modo interativo de relató- Os administradores podem configurar obtemos um belo relatório formatado
o comportamento em HTML, mostrando toda a atividade
do f w l o g wa t c h de nosso fi rewall.
usando como base o
arquivo exemplo de Resposta imediata
configuração, bem A opção de rodar o fwlogwatch em
documentado e com modo real time permite que os adminis-
comentários infor- tradores reajam com ações e comandos
mativos, ou pela às mensagens do arquivo de log. Ao
linha de comando. mesmo tempo, o estado do fi rewall é
A página de manual mostrado em uma janela de navegador.
explica a sintaxe O fwlogwatch roda em segundo plano
e funcionamento como um daemon e monitora o arquivo
de todas as opções. de log. Se o daemon receber um sinal
Por exemplo, o SIGHUP, o arquivo de configuração
comando mostrado é lido novamente. Já o sinal SIGUSR1
a seguir executa ordena ao daemon que reabra o arquivo
Figura 3: No Summary Mode o fwlogwatch dá aos administradores uma o fwlogwatch em de log. Esse recurso é bastante útil com

http://supertuxbr.blogspot.com
visão geral da atividade nos arquivos de log. Summary Mode: arquivos de log rotativos.

www.linuxmagazine.com.br edição 06 25
CAPA Análise de Incidentes em Firewalls

Listagem 2: IPtables Log Analyzer


iptables -N LOG_DROP
iptables -A LOG_DROP -j LOG --log-tcp-options --log-ip-options --log-prefix ‘[IPTABLES DROP] : ‘
iptables -A LOG_DROP -j DROP
iptables -N LOG_ACCEPT
iptables -A LOG_ACCEPT -j LOG --log-tcp-options --log-ip-options --log-prefix ‘[IPTABLES ACCEPT] : ‘
iptables -A LOG_ACCEPT -j ACCEPT

opção. O IPtables Log Analyzer é inte-


ressante porque usa um banco de dados
para guardar as informações recolhi-
das. Para quem conhece, a opção de
usar declarações na linguagem SQL
para fazer pesquisas nas mensagens
do fi rewall baseadas em critérios arbi-
trários é bem interessante e poderosa.
Muito mais poderosa do que depender
do front-end via web oferecido pelas
Figura 5: Os administradores podem usar o Figura 6: Apesar de ser uma ferramenta interes- outras ferramentas. ■
navegador para configurar o fwlogwatch. O sante, o SuSE Firewall não será mais mantido.
Alert Threshold (Limiar de Alerta) especifica o INFORMAÇÕES
número de mensagens necessárias para dispa- Se o limiar de cinco conexões em 600
[1] IPtables Log Analyzer:
rar uma contramedida. segundos (dez minutos) é excedido, o http://www.gege.org/iptables/
fwlogwatch dispara uma ação confi gu-
[2] Projeto Wallfire (wflogs e Wfnetobjs):
Os administradores podem especi- rável. O servidor web interno roda no
http://www.wallfire.org
ficar valores que defi nam qual a gravi- endereço 127.0.0.1:8888, no qual o usu-
dade necessária nas mensagens para ário ralf pode “logar-se” com a senha [3] FWlogwatch:
http://fwlogwatch.inside-security.de
que o fwlogwatch reaja, emitindo aler- password. As senhas são criptografadas
tas ou executando scripts de retaliação. com o algoritmo DES, que podem ser [4] Ulogd:
Há duas opções importantes: recent geradas com o comando htpasswd -nb http://gnumonks.org/projects/ulogd
(-l) defi ne o período de tempo a moni- usuário senha. Quando o usuário regis- [5] Ulogd PHP:
torar, enquanto alert_threshold (-a) tra-se na página, depara-se com algo http://www.inl.fr/download/ulog-php.html
defi ne, dentro desse período, o número parecido com a fi gura 4. Uma grande [6] Shorewall firewall:
de eventos que dispara uma resposta. A quantidade de opções pode ser alterada http://shorewall.sourceforge.net
listagem 3 mostra um exemplo que con- nessa interface web (figura 5). [7] SuSE firewall:
figura o fwlogwatch em modo Real Time http://www.suse.de/en/business/
com o interpretador para arquivos de Escolhas products/suse_business/firewall/
log do Netfi lter. O processo roda como o
O fwlogwatch possui um vasto cardá-
[8] Pacotes do wflogs para o Debian Woody.
usuário fwloguser. pio de recursos, desde a exibição de
coloque, em seu sources.list, a linha
resumos simpli- deb http://people.debian.org/~kelbert/
Listagem 3: fwlogwatch ficados ao pode- stable main
Realtime Mode Analyzer roso modo em
[9] GNU adns: http://www.chiark.greenend.
tempo real com
realtime_response = yes org.uk/~ian/adns/
respostas con-
parser = n
fi guráveis. Mas
run_as = fwloguser
as outras ferra- Ralf Spenneberg é
recent = 600 um instrutor free-
mentas mostra-
alert_threshold = 5 lance de Unix e Linux.
SOBRE O AUTOR

das no artigo
notify = yes Em 2002 publicou
também mere- o livro “Intrusion
notification_script = /usr/sbin/fwlw_notify
cem ser conside- Detection for Linux
server_status = yes
radas e testadas. Servers”, rapida-
bind_to = 127.0.0.1 mente seguido de
Se você precisa
listen_port = 8888 “VPNs on Linux”. Em breve, mais um
de uma filtra-
status_user = ralf livro seu, “Intrusion, Detection and
gem fenomenal, Prevention with Snort and Co.”, estará
status_password = i0QlAmOg4PrAA
o wflogs pode nas livrarias.
refresh = 10

http://supertuxbr.blogspot.com
ser sua melhor

26 edição 06 www.linuxmagazine.com.br
Bridgewall CAPA

Implementando um firewall de camada 2 (bridge)

Ponte levadiça
Os firewalls são, tipicamente, imple-

mentados como roteadores. Entre-

tanto, as coisas não precisam ser

assim. Filtros de pacotes baseados no

princípio de bridging possuem algumas

vantagens, entre elas a de poderem

ser inseridos em qualquer ponto de

sua rede sem absolutamente alte-

rar a topologia e a configuração de

seus nós. POR RALF SPENNEBERG

O Linux alcançou uma respeitável


reputação de excelente plata-
forma para fi rewalls. O kernel
possui um eficientíssimo fi ltro de pacotes,
o subsistema netfi lter/iptables. Em um
pacotes dos protocolos de camadas mais
altas (endereços IP, portas TCP e UDP)
em sua tarefa de fi rewall. A grande van-
tagem é que os computadores da rede
não vão sequer notar que há um fi rewall
Physdev match também é importante;
o módulo chama-se IP_NF_ MATCH_
PHYSDEV. Ela é necessária para que as
séries 2.6 e superiores possam consultar
a interface física (camada 2) e, assim,
fi rewall tradicional, o netfi lter é colocado no caminho. Para eles, há uma ligação aplicar as regras de fi ltragem nos paco-
para funcionar em uma máquina que direta com a Internet, mas alguma “enti- tes que passam por elas.
serve de roteadora, onde divide a rede dade espiritual” bloqueia o envio de Depois de compilar sem erros (e
em duas ou mais subredes. Entretanto, pacotes ilegais. colocar para rodar) o novo kernel, são
adicionar um fi rewall em uma rede já necessárias mais algumas ferramentas
estabelecida pode envolver uma drástica Configuração do kernel no espaço do usuário para que possa-
alteração na infra-estrutura do cabea- Lennert Buytenhek e Bart de Schuymer mos montar nosso bridgewall. Embora
mento e do próprio projeto lógico. A dor escreveram um patch que adiciona um muitas distribuições já tenham, por
de cabeça pode ser tamanha que talvez modo de bridging firewall ao kernel 2.4. padrão, o programa iptables disponível,
seja necessário mudar todos os endereços Se você usa o kernel 2.6 nem precisa é bem provável que seja necessário ins-
IP das estações e até impor mais restri- aplicar nada: o recurso já existe, basta talar os utilitários arptables e ebtables
ções no acesso aos serviços internos. apenas confi gurar o núcleo do sistema na maioria delas. Se você está rodando
Em vez dessa complicação toda, que de acordo (ver figuras 1 e 2). uma versão atual do kernel 2.6 em uma
tal instalar uma bridge? São muito mais Todas as opções de bridging no grupo distribuição mais antiga (que vinha
simples de operar e não causam nenhum netfilter são impor-
impacto numa rede já existente. As brid- tantes. Por exemplo, o
ges (em português, “pontes”) são dispo- suporte a tabelas ARP
sitivos que trabalham na camada 2 do (ARP Tables) nos módu-
modelo de referência OSI e normalmente los IP_ NF_ARPTBLES,
inspecionam os endereços MAC (ou seja, IP_ NF_ ARPFILTER e
os endereços físicos das placas de rede) IP_ NF_ ARP_ MANGLE.
em vez do endereço IP – consulte o qua- Essas funções podem
dro “Construindo Pontes”. O Linux pode ser i mplement ada s
tirar partido dessa capacidade para criar como módulos ou com-
fi rewalls “transparentes”. Obviamente, piladas de forma mono- Figura 1: Para ativar o modo bridge no kernel 2.6, marque a opção

http://supertuxbr.blogspot.com
a bridge não deixará de inspecionar lítica no kernel. A opção 802.1d Ethernet Bridging no grupo Networking Support.

www.linuxmagazine.com.br edição 06 27
CAPA Bridgewall

com o kernel 2.4, por exemplo) também criamos uma bridge chamada br0. Já o
será necessário atualizar o pacote com comando a seguir: brctl addif br0 eth0
o utilitário iptables. brctl addif br0 eth1
O pacote bridge-utils [2] também ip link show br0
deve ser instalado. Ele será usado para As placas de rede não devem estar
confi gurar a bridge. As distribuições confirma que a bridge existe. Como confi guradas neste ponto; ou seja, não
modernas normalmente disponibilizam ela possui um nome, pode-se até rodar devem estar ativas (UP) ou possuir
esse pacote por padrão. Nele encontra- diversas bridges virtuais em uma única qualquer endereço IP. A idéia é ativá-
mos o comando brctl, de uso exclusivo máquina com Linux! las só depois de estarem associadas à
do usuário root. Se o emitirmos assim: A seguir, a bridge precisa saber qual nossa bridge.
placa de rede Ethernet deve adminis-
brctl addbr br0 trar. O comando brctl permite adicionar ip link set eth0 up
interfaces à bridge: ip link set eth1 up

Construindo Pontes
O termo bridge (ponte) refere-se a uma categoria de dispositivos que
manipulam e redirecionam pacotes de rede na camada 2 do modelo OSI.
Além das próprias bridges em si, muitos equipamentos populares, presen-
tes em quase todas as redes do planeta, são um tipo de bridge. Um deles é Rede A
o manjadíssimo switch (em português, comutador, embora infelizmente
o termo em inglês seja mais usado). Para redirecionar pacotes na camada Bridge 1 Bridge 2
2, a bridge precisa relacionar todos os endereços MAC da rede local e lem- 1 Bloqueio
Root
1 Repasse

brar-se quais computadores estão ligados em cada uma de suas saídas, Prioridade 10000 2 Bloqueio Prioridade 1000 2 Repasse

chamadas de portas. Quando a bridge recebe um pacote de um endereço


MAC já conhecido, simplesmente redireciona o pacote para a saída cor- Rede B

reta, reduzindo bastante o tráfego nas outras portas. Se a bridge não sou-
ber para onde deve enviar o pacote, faz um broadcast (difusão) e o envia a
todas as suas portas.
O comando brctl showmacs brO lista todos os endereços MAC que a bridge já
Figura 4: As bridges 1 e 2 conectam as redes A e B. A bridge de menor
conhece. O resultado é mostrado em forma de tabela. A primeira coluna con-
prioridade usa o protocolo STP para definir os caminhos válidos para
tém o número da porta para a qual o pacote deve ser enviado, pois o compu-
pacotes enviados entre A e B.
tador de destino está conectado a ela. A segunda coluna contém o endereço
MAC desse computador. As demais colunas mostram outros dados sobre cada nó da rede.
Memória Fraca
Para ficar sempre atualizada, a bridge remove os endereços MAC mais antigos da tabela ARP. É possível especificar quanto tempo um endereço MAC
que não esteja em uso pode ficar na tabela antes que a bridge o descarte. O comando apropriado é brctl setageingtime brO tempo_em_segundos.
O esforço computacional interno seria desnecessariamente alto se a bridge descartasse imediatamente endereços MAC inativos. Em vez disso, a bridge
primeiro marca os endereços ociosos e os remove posteriormente a intervalos regulares. O processo é conhecido como garbage collection (numa tradu-
ção aproximada, “coleta de lixo”). Esse intervalo pode ser ajustado com o comando brctl setgcint brO tempo_em_segundos. O valor padrão é O (zero).
Spanning Tree Protocol
Switches modernos usam o spanning tree protocol (protocolo de árvore distribuída ou STP) para oferecer uma configuração de alta disponibilidade. Com
esse protocolo, dois ou mais switches conectam subredes entre si e, dessa forma, descobrem todas as rotas possíveis entre elas. Depois de eleito, um switch
mestre (ou “raiz”) define os caminhos ativos e inativos para acesso a cada uma das subredes e propagam essa informação a todos os switches envolvidos.
Os switches restantes bloqueiam os caminhos inativos e suas interfaces, impedindo assim que pacotes duplicados (ou seja, um mesmo pacote que
tomou dois caminhos diferentes) cheguem até a rede de destino (ver figura 4). Se um switch apresenta algum mau funcionamento, os switches
remanescentes descobrem quais caminhos alternativos ainda estão disponíveis e contornam o equipamento defeituoso.
O Linux suporta o protocolo STP; entretanto, o administrador precisa emitir o comando brctl stp brO on para ativá-lo. Um valor de prioridade entre O e 65535 pode ser
associado à bridge: brctl setbridgeprio brO prioridade. A bridge com o menor número de prioridade (portanto, com a prioridade mais alta) assume a função de “raiz”.
1, 2, 3: testando...
As bridges verificam se suas colegas estão “vivas” mandando mensagens de teste (“hello”) a intervalos regulares. Os administradores podem
determinar o intervalo de envio dessas mensagens com o comando brctl sethello brO tempo_em_segundos. o comando brctl setmaxage brO tempo_
em_segundos especifica quanto tempo as outras bridges devem esperar para receber a mensagem de “hello” das companheiras. Como um grande
formigueiro, todo o sistema de bridges assume que a bridge que não responder depois desse intervalo está “morta”.
Quando uma bridge está conectada a uma rede, precisa esperar um período de tempo arbitrário antes de começar a redirecionar pacotes. Essa
espera é necessária para verificar se a rede está usando o protocolo STP. O comando brctl setfd brO tempo_em_segundos ajusta o tempo de espera.
Apesar da explicação acima, o protocolo STP deve estar completamente desativado em uma bridge que vá atuar como firewall por filtragem de pacotes: brctl
stp brO off. O firewall tem que se basear em seu próprio conjunto de regras e não pode, sob hipótese alguma, ser desabilitado por spoofing de STP.

http://supertuxbr.blogspot.com
28 edição 06 www.linuxmagazine.com.br
Bridgewall CAPA

defi na quais pacotes podem passar e --physdev-out eth1 U


quais devem ser bloqueados. Há três --dport 22 -d 192.168.0.16 U
comandos para criação dessas regras: -m state U
iptables, ebtables e arptables. --state NEW -j ACCEPT
Todos os pacotes que a bridge redire- iptables -A FORWARD -m physdev U
ciona (entram por uma porta e saem por --physdev-is-bridged -m state U
outra) passam pela cadeia FORWARD --state ESTABLISHED,RELATED U
Figura 2: Não esqueça de marcar a opção Brid- do netfi lter. Há algumas coisas a obser- -j ACCEPT
ged IP/ARP packets filtering na configuração do var quando usamos o comando iptables
netfilter dentro do kernel! em uma bridge. Se uma regra especi- O primeiro comando cuida do estabe-
fica que os pacotes devem atravessar a lecimento da conexão, que deve ocor-
ip link set br0 up bridge em apenas uma direção, deve-se rer em apenas uma direção. O segundo
usar a opção -m physdev (tabela 1). Isso comando permite que os pacotes que
Nossa bridge está, a partir de agora, permite que a política de conexão identi- pertencem a essa conexão já estabele-
pronta para entrar em ação! Veja as fique a porta da bridge pela qual o pacote cida possam passar pelo fi rewall.
informações obtidas com o comando entrou, ou mesmo se ele chegou a ser
ip link show (fi gura 3). A bridge redire- manipulado por ela. Coleta de endereços
ciona os pacotes e mantém sua própria O exemplo a seguir permite conexões Os fi rewalls baseados em bridges nor-
tabela ARP, usando esse cache para ras- SSH ao endereço IP 192.168.0.16 (porta malmente são usados para melhorar
trear quais endereços MAC estão conec- TCP/22) em apenas uma direção. O a segurança de redes existentes e já
tados a (isto é, podem ser acessados servidor SSH está conectado à placa de bem grandinhas. Com eles, não existe
por) cada interface (veja mais detalhes rede eth1. As conexões só podem ser a necessidade de mudar a estrutura
no quadro “Construindo Pontes”, na estabelecidas por clientes conectados da rede e, muito menos, os endereços
página ao lado). à eth0. Precisamos de dois comandos IP. Um dos pontos em que um fi rewall
iptables para defi nir a regra: desse tipo pode ser bastante útil é na
Bridgewalling frente de um roteador que o administra-
Como qualquer fi rewall, a bridge deve iptables -A FORWARD -m physdev dor não possa alterar ou que não pos-
possuir um conjunto de regras que --physdev-in eth0 U sua funcionalidade de fi rewall. Mas os

http://supertuxbr.blogspot.com
www.linuxmagazine.com.br edição 06 29
CAPA Bridgewall

Tabela 1: Regras com physdev


Opção Significado
--physdev-in Nome Especifica a porta pela qual o pacote precisa entrar na bridge para que esta regra se aplique a ele.
--physdev-out Nome Especifica a porta pela qual o pacote precisa sair da bridge para que esta regra se aplique a ele.
--physdev-is-in O pacote veio de uma interface diretamente conectada à bridge.
--physdev-is-out O pacote deixará o computador por uma interface diretamente conectada a uma bridge.
--physdev-is-bridged O pacote trafega por dentro da bridge.

Figura 3: A bridge virtual já está no ar! O


comando ip link show mostra os dados da bridge --physdev-in eth0 U pode evitar que invasores descubram
após o 4: brO:. --physdev-out eth1 U endereços MAC de computadores conec-
--dport 22 -m set U tados a outras portas. A bridge manda
bridgewalls são realmente magistrais --set left -m state U seu próprio MAC como resposta a uma
quando usados para dividir grandes --state NEW -j ACCEPT requisição ARP e, a partir daí, faz a
redes em áreas menores, com menos tradução MAC-NAT para todos os paco-
tráfego e gerenciamento melhor. Além dos pacotes IP, os pacotes ARP tes IP que a atravessarem. O primeiro
Nesse caso, os endereços IP de ambos são úteis em regras de fi rewall. Muitos comando da listagem 1 diz à bridge
os lados da bridge não podem ser alte- ataques originados dentro da própria para responder com seu próprio MAC
rados para pertencer a classes ou subre- rede são baseados em requisições e res- (00:ff:90:2B:A6:16) a qualquer requisi-
des diferentes, como seria o caso de um postas ARP forjadas (ARP spoofing). ção ARP destinada a descobrir o ende-
fi rewall comum baseado em roteador. reço MAC do IP 192.168.0.16.
Portanto, para que possamos fi ltrar o Tabelas ARP O endereço IP do computador que se
tráfego baseado nos números IP preci- O comando arptables pode fi ltrar paco- quer esconder atrás da bridge precisa
samos recorrer a um truque. O comando tes ARP. Afora operações de bridging, o ser escrito atrás da opção --arp-ip-dst. A
ipset dá aos administradores um meio comando só deve ser usado nas cadeias opção --arpreply-mac é o endereço MAC
de subdividir a rede, criando um banco INPUT e OUTPUT, pois os roteadores da bridge. Para MAC-NAT de pacotes IP,
de endereços no qual se podem coletar não encaminham pacotes ARP de uma pode-se precisar também dos coman-
IPs arbitrários. Os comandos a seguir interface a outra. Entretanto, em uma dos nas linhas 2 e 3 da Listagem 1. Em
criam um banco chamado left e adicio- bridge, é possível fi ltrar pacotes ARP nosso exemplo, 192.168.0.16 é o ende-
nam três endereços IP ao banco: também na cadeia FORWARD. A sintaxe reço IP do computador a ser escondido
do comando é similar à do iptables. O por detrás da bridge; e seu endereço
ipset -F; ipset -X; ipset -N U arptables usa os alvos ACCEPT e DROP; MAC é fe:fd:00:00:00:01.
left iphash REJECT não faz nenhum sentido em se A documentação no site oficial do
ipset -A left 192.168.0.5 tratando de pacotes ARP. ebtables [3] fornece mais informações
ipset -A left 192.168.0.17 sobre as capacidades deste comando.
ipset -A left 192.168.0.18 arptables -A FORWARD -s ! U
192.168.0.15 --destination-mac U Nas profundezas da rede
O novo banco pode ser usado nomi- fe:fd:00:00:00:01 -j DROP A técnica de bridgewalling dá aos admi-
nalmente em regras do iptables, com a nistradores uma nova classe de fi ltros
opção -m set. O comando --set nome_do_ O comando acima descarta todos os de pacotes que abre imensas possibili-
banco indica o banco a ser considerado: pacotes ARP de resposta enviados ao dades de controle sobre protocolos de
computador cujo endereço MAC é fe: camada 2. Mas a coisa mais espetacular
iptables -A FORWARD -m physdev U fd:00:00:00:01 e que não foram originados em relação ao bridging é a possibilidade
pelo computador cujo IP é 192.168.0.15. As de inserir um firewall transparente
Listagem 1: MAC-NAT respostas ARP informam à entidade requi- entre dois pontos de uma rede pré-exis-
sitante qual o endereço MAC do computa- tente. A bridge simplesmente substitui
ebtables -t nat -A PREROUTING -p U
dor cujo IP foi especificado na pergunta. o hub, o switch ou mesmo um cabo
ARP --arp-ip-dst -j arpreply U
Aqui, o computador com o endereço MAC cross-over. E se for necessário bloquear
--arpreply-mac 0:ff:90:2b:a6:16
fe:fd:00:00:00:01, que vive em uma rede alguns computadores suspeitos, é possí-
ebtables -t nat -A PREROUTING U
do outro lado da nossa bridge, só conse- vel fazê-lo sem ter que reprojetar toda a
-p IPv4 -d 0:ff:90:2b:a6:16 U
gue enxergar o endereço MAC do compu- numeração IP de sua rede. Basta colocar
--ip-dst 192.168.0.16 -j U
tador cujo IP é 192.168.0.15. em operação um bridgewall. ■
dnat --to-dst fe:fd:0:0:0:1 U
--dnat-target ACCEPT
Tabelas Ethernet INFORMAÇÕES
ebtables -t nat -A POSTROUTING U
O comando ebtables é muito mais pode- [1] iptables: http://www.iptables.org
-p IPv4 -s fe:fd:0:0:0:1 -j U
roso, permitindo que se faça coisas
snat --to-src 0:ff:90:2b:a6:16 U [2] Linux bridge: http://bridge.sf.net
fabulosas como, por exemplo, NAT de
--snat-target ACCEPT [3] ebtables: http://ebtables.sf.net

http://supertuxbr.blogspot.com
endereços MAC! Com NAT, a bridge

30 edição 06 www.linuxmagazine.com.br
Shorewall CAPA

Configurando o Netfilter/IPtables com o Shorewall

Cumprindo tabela
Quando os usuários pensam em

suas estações de trabalho ou

seus computadores domésticos,

geralmente se esquecem da

segurança. Mas o perigo está à

espreita, esperando para esfaquear os

incautos usuários. POR JAMES MOHR

Andrea Jaccarino: www.sxc.hu

A única maneira de tornar seu


computador completamente
imune a ataques é desligá-lo
da Internet. Sempre que você abre a
porta de sua casa para sair à rua, algum
fazem tentativas seguindo uma longa
lista de falhas de segurança já publi-
camente conhecidas.
Para frustrar esses pivetes digitais,
pode-se simplesmente fechar todas as
por sua vez, é um recurso presente no
kernel das séries 2.4.x e 2.6.x que per-
mite que diversos módulos do próprio
kernel acessem o protocolo de rede em
vários lugares. Por serem partes do
gatuno pode esgueirar-se e entrar. Da portas de saída. Entretanto, se você pre- núcleo do sistema, os módulos em ques-
mesma forma, os potenciais crackers cisa oferecer serviços à Internet – por tão possuem poderes quase esotéricos
estão à espera de portas abertas para exemplo, montar um servidor web – é e podem fazer praticamente qualquer
invadir seu sistema. preciso usar outra forma de proteção. coisa com um pacote, desde simples-
Alguns usuários tem a errônea Mesmo as microempresas precisam mente bloquear sua passagem até mani-
impressão de que os intrusos atacam da proteção oferecida por um fi rewall. pular seu conteúdo ou cabeçalho.
apenas máquinas caras de empresas Muitos usuários não têm poder aquisi- O Netfi lter também trabalha com o
conhecidas e não estariam interes- tivo para bancar um produto comercial. velho ipchains, o fi ltro de pacotes do
sados em um computador doméstico. Como usuários de Software Livre, há kernel 2.2, mas precisa ser explicita-
Ledo engano. A verdade é que cada soluções abertas que nos dão a proteção mente colocado em “ipchains compati-
computador conectado na Internet – necessária. Uma delas é o Shorewall. bility mode” (modo de compatibilidade
mesmo os mais insignificantes – é uma com o ipchains) para que funcione.
vítima potencial de ataques e pode, Nos bastidores Você pode baixar a versão mais atual
inclusive, ser usado para originar ata- O Shorewall é o nome mais conhecido no site oficial do programa em [2]. Estão
ques a uma terceira pessoa. Nem os do produto chamado Shoreline Firewall. disponíveis versões em pacotes RPM
usuários de conexões discadas estão a Do ponto de vista do usuário, o Sho- ou arquivos tar com o código fonte. Os
salvo. Na maioria dos casos, esses ata- rewall é um conjunto de arquivos fáceis pacotes RPM não foram testados em
ques são perpetrados por pessoas com de configurar e, com eles, construir um todas as distribuições, apenas com

http://supertuxbr.blogspot.com
nível técnico não tão bom assim, que fi rewall baseado no Netfi lter [1]. Este, as “majors”: SuSE, Redhat e Mandrake.

www.linuxmagazine.com.br edição 06 31
CAPA Shorewall

Verifique o site para mais detalhes. Usu- Listagem 1: Um exemplo de arquivo zones
ários do Debian podem usar o sistema
APT, pois o Shorewall está disponível #ZONE DISPLAY COMMENT
nos repositórios oficiais. net Net a zona da Internet
Para que o Shorewall funcione, é loc Local a rede local
preciso ter instalados os pacotes ipta- fw FW o firewall
bles e iproute/iproute2. Esses pacotes #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
são instalados por padrão na maio- #A linha acima não deve ser apagada nem alterada.
ria das distribuições, portanto não
devem ser empecilhos. A razão da
necessidade do iptables é simples: o velmente não têm espaço ou recursos Os nomes das zonas devem ser curtos
Shorewall não é, por si só, um fi rewall. fi nanceiros para montar computadores (cinco caracteres ou menos) e podem
Trocando em miúdos, o Shorewall extras só para agir como fi rewalls. Se conter letras e números. Observe que
não é responsável pela verificação, sua estação de trabalho está conectada não é possível usar a zona especial all.
fi ltragem e manipulação de pacotes diretamente à Internet, por que não A variável FW, no arquivo shorewall.
de rede. Pelo contrário: o Shorewall colocar o fi rewall diretamente nela? conf, defi ne a zona específica do seu
simplesmente lê seus arquivos de con- Em casa, minha rede consiste de um fi rewall. O valor padrão para ela é fw.
fi guração e usa o comando iptables computador com uma conexão ADSL à Lembre-se que não é possível usar esse
para carregá-las no kernel. Internet, uma segunda máquina com nome em outra zona!
Como o iptables assume a tarefa de Windows XP e outra com Linux. Cada Mesmo que não esteja oferecendo
manipular as tabelas de fi ltragem do uma delas serve a um propósito dife- nenhum serviço a computadores fora
kernel, o Shorewall não é necessário rente e eu permito apenas as conexões de sua rede local (ou seja, na Internet)
mais do que uma vez a cada boot. É apropriadas a cada uma delas, tanto ainda assim a zona da Internet será
possível, inclusive, ver o que real- saindo como entrando. necessária. Lembre-se que as regras
mente o programa faz olhando dentro Como minha rede é bastante simples, do IPtables defi nem conexões ponto-a-
dele. Não se assuste, não é preciso preciso editar uns poucos arquivos de ponto, ou seja, precisam de um ponto
um editor hexadecimal nem “cavo- configuração. Por ser uma situação bem de origem e outro de destino. Um des-
car” no código fonte para isso: o pro- simples e comum, minha rede domés- ses pontos seria, talvez, a sua estação
grama shorewall (normalmente em tica é um ótimo local para começar. de trabalho, mas o outro certamente é
/sbin/shorewall) não é nada mais do a Internet. Portanto, é necessário defi ni-
que um shell script. Configuração básica la como uma zona específica.
Para que o iptables saiba o que fazer, O arquivo de confi guração principal Esses nomes são apenas convenções.
é preciso dizer ao kernel quais são as fica em /etc/shorewall/shorewall.conf. O Embora sejam os valores default do Sho-
restrições que se quer impor ao trá- arquivo permite que se confi gure qual- rewall, pode-se usar o nome que bem
fego. Os chamados rulesets (conjuntos quer coisa, desde a ativação até a desati- entender, desde que haja consistência
de regras) são defi nidas no interior do vação do sistema. Embora seja possível em todos os arquivos de configuração.
iptables e consistem de uma conexão e confi gurar um grande número de valo- Por padrão, as permissões no diretó-
um certo número de “classificadores”. res nesse arquivo, ainda não encon- rio /etc/shorewall são defi nidas com o
Cada ruleset determina se uma cone- trei razões suficientes para fazê-lo em valor 700, o que significa que apenas o
xão em particular deve ser permitida ou minha rede doméstica. proprietário (ou seja, o root) tem acesso
bloqueada, se e como deve ser manipu- Você já deve estar familiarizado com aos arquivos. Mesmo acesso apenas de
lada, regras para seu redirecionamento a palavra segmento para referir-se a leitura para outros usuários seria peri-
e assim por diante. porções específicas em uma rede. O goso, pois alguém poderia descobrir um
Esse conceito é basicamente o mesmo Shorewall usa, para isso, o termo zona. furo de segurança e explorá-lo.
em qualquer fi rewall, seja comercial Em casa, possuo quatro zonas: fw (o As zonas são defi nidas no arquivo
ou gratuito, e com qualquer número de próprio fi rewall, ou seja, o meu com- /etc/shorewall/zones. Cada linha possui
máquinas, desde algumas poucas até putador), net (a Internet) e loc (a rede três valores: o nome da zona (usado
centenas delas – embora nesse caso é local). A quarta zona chama-se games, para referenciar essa zona nos outros
provável que o administrador prefi ra mas falaremos dela mais adiante. arquivos), nome legível (que aparece
quebrar a rede em segmentos menores.
Cada segmento poderia ser gerenciado Listagem 2: Um exemplo de arquivo interfaces
por seu próprio fi rewall – e o Shorewall
é perfeito para isso. #ZONE INTERFACE BROADCAST OPTIONS
Um detalhe a ser observado é que não net ppp0 - routefilter,norfc1918
é necessário ter um computador dedi- loc eth0 detect -
cado para ser o fi rewall. Embora seja #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
a prática comum (e, geralmente, uma #A linha acima não deve ser apagada nem alterada.

http://supertuxbr.blogspot.com
boa idéia), usuários domésticos prova-

32 edição 06 www.linuxmagazine.com.br
Shorewall CAPA

Listagem 3: um exemplo de arquivo policy É possível confi gurar o Shorewall


pa ra compor ta r-se de qua lquer
#SOURCE DEST POLICY LOG LEVEL maneira que desejemos, desde que
fw net ACCEPT info manipulemos suas zonas. Cada zona
fw loc ACCEPT info pode possuir uma política de funcio-
loc net REJECT info namento (policy), configurada – como
loc fw ACCEPT info já deve ter ficado óbvio neste ponto da
net all DROP info matéria – pelo arquivo policy. Nele, os
all all REJECT info campos são: source (a zona de ori-
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE gem), dest (a zona de destino), policy
#A linha acima não deve ser apagada nem alterada. (a ação a ser tomada por padrão) e
o log level (quanta informação regis-
trar nos logs).
quando o Shorewall está carregando as interface como sendo um modo de defi- A Listagem 3 mostra um exemplo do
regras) e um comentário. A listagem 1 nir quais interfaces a zona firewall usa arquivo policy. Observe atentamente as
mostra um arquivo zones básico. para se comunicar com as outras zonas. duas últimas linhas. A primeira afi rma
No caso da interface ppp0, a coluna que qualquer tráfego desconhecido
Definindo as regras de broadcast possui um hífen (-). Como vindo da Internet é sumariamente blo-
comunicação uma conexão PPP não possui broad- queado (ou seja, ignorado).
Embora tenhamos defi nido as zonas, o cast, eu poderia ter deixado a coluna Há quatro opções possíveis para a
fi rewall ainda não sabe como conectá- em branco. Entretanto, eu desejava política de conexões:
las. Não há associação entre o nome especificar opções adicionais, portanto
da zona e a rede que representa. Para precisava do “-” para “guardar o lugar” ACCEPT – Aceita os pedidos de conexão.
isso, precisamos mexer no arquivo /etc/ da coluna broadcast e, assim, chegar DROP – Ignora (“derruba” ou “blo-
shorewall/interfaces, que contém uma à coluna options. Se não houvessem queia”) o pedido de conexão.
tabela com quatro colunas: zona, inter- opções, essa coluna poderia ser dei- REJECT – Além de ignorar, retorna
face, broadcast e opções. xada em branco. Como “mania” pessoal, uma mensagem de erro ao computa-
Em meu sistema, o arquivo interfaces entretanto, sempre coloco os hífens dor que requisitou a conexão.
parece-se com o da listagem 2. para me lembrar de que alguma coisa CONTINUE – Permite colocar esta-
A zona é o nome defi nido no arquivo existe naquela posição. ções em mais de uma zona e aplicar
zones. Já a interface é o nome (no A opção routefilter diz ao kernel para políticas a todas elas.
Linux) da interface de rede conectada a rejeitar, naquela interface, qualquer
essa zona. Por exemplo, minha conexão pacote que deveria ter sido roteado por O nível de registro determina quanta
ADSL usa o protocolo Point-to-Point Pro- outra interface. Em nosso caso, se a informação é enviada ao subsistema
tocol (PPP), portanto o nome da inter- ppp0 recebesse, de dentro para fora, um de registro de eventos do kernel, o sys-
face é ppp0. O nome da interface para pacote que deveria sair pela eth0, este log. Lembre-se sempre de que tudo isso
a minha placa de rede Ethernet é eth0. seria bloqueado imediatamente. Esse é feito pelo iptables, que é, em última
Para descobrir os nomes de suas interfa- recurso é chamado de anti-spoofing. análise, outro subsistema do kernel.
ces de rede, use o comando /sbin/ifcon- A segunda opção, norfc1918, ordena Tudo o que o Shorewall faz é especifi-
fi g. A coluna broadcast é o endereço ao kernel que não roteie endereços car a prioridade das mensagens a serem
de difusão da rede conectada àquela especificados como “privados” pela RFC registradas. Para mais informações
placa. Como era de se esperar, a coluna 1918. A RFC (Request For Comments) sobre o registro de eventos do sistema,
options especifica quaisquer opções que de número 1918 é um documento do consulte a página de manual do syslogd
se queira usar. IETF (Internet Engineering Task Force) (man syslogd).
Em meu sistema há duas linhas: que lista as faixas de endereço IP que As duas últimas linhas do meu
podem ser usadas por qualquer um sem arquivo policy são:
net ppp0 routefilter,norfc1918 precisar de permissão especial e que,
loc eth0 detect - sob hipótese alguma, devem ser rote- net all DROP info
adas para a Internet. Essa opção asse- all all REJECT info
A zona da Internet está conectada gura que, realmente, não serão. Mais
à interface ppp0. Já a zona local está detalhes sobre a RFC 1918 podem ser A primeira linha nos diz que qual-
associada à interface eth0. Como há obtidos em [3]. quer tráfego não coberto por nenhuma
três zonas por padrão, você deve estar Nesse ponto deparei com um dilema. outra regra (veremos essas regras mais
se perguntando onde foi parar a linha Quero que meus computadores possam adiante) e que venha da Internet será
referente ao fi rewall. Bem, de forma acessar a Internet; mas, como possuem sumariamente bloqueado (ação DROP).
simples, a zona firewall conecta-se às endereços RFC 1918, eles estão bloquea- Entretanto, qualquer outro tipo de trá-
outras por uma das interfaces já espe- dos. Como fazer para acessar a Internet, fego será rejeitado (ação REJECT), o

http://supertuxbr.blogspot.com
cificadas. Portanto, pense no arquivo então? Já voltaremos a esse problema. que quer dizer que o emissor das men-

www.linuxmagazine.com.br edição 06 33
CAPA Shorewall

sagens bloqueadas receberá um aviso As colunas no arquivo rules são: ação outras ações, entretanto, não interrom-
relatando o motivo do bloqueio. Pode a ser tomada, origem da requisição, des- perá o processamento das regras abaixo
parecer meio estranho, mas quando tino da conexão, protocolo usado, porta dela. Em vez disso, passará o comando
raciocinamos sobre o comportamento destino, porta de origem e o destino ori- para a próxima regra assim que regis-
de ambas as ações vemos que faz todo ginal. Destino original? Calma, já vere- trar o evento. Dessa forma, é possível
o sentido do mundo. Quando um pacote mos do que se trata. registrar um evento e, depois, aplicar
chega ao fi rewall vindo da Internet e Além das ações já vistas no arquivo outra ação a um mesmo pacote.
destina-se a uma porta ou serviço que zone, o arquivo rules guarda algumas A ação QUEUE redireciona pacotes
bloqueamos voluntariamente, quere- surpresas. A ação DNAT permite que se para programas que rodem no espaço
mos simplesmente impedir sua entrada. faça o chamado NAT – Network Address do usuário, que por sua vez os manipu-
De forma alguma queremos informar Translation (tradução de endereços de lam e os devolvem à pilha de rede.
o que aconteceu ao remetente. Se este rede). O DNAT – Destination Network Para confi gurar seu arquivo rules,
for um indivíduo mal-intencionado (um Address Translation – é uma especiali- assuma como regra geral que se deve
cracker, por exemplo) esse tipo de aviso zação do NAT e permite que requisições bloquear tudo e liberar apenas os ser-
pode ajudá-lo a contornar nossas bar- de conexão possam ser redireciona- viços necessários – e olhe lá! muitas
reiras de segurança. Entretanto, pacotes das para computadores dentro da rede, pessoas fazem o contrário, começando
originados em qualquer outra rede que com endereços diferentes do original e com uma rede completamente escan-
não a Internet (em nosso caso, minha mesmo em portas diferentes. carada e desligando, um a um, os
máquina e minha rede interna) são A ação REDIRECT redirecionará cone- serviços desnecessários – ou pior: des-
rejeitados, permitindo que os progra- xões para portas específicas na mesma ligando só o que já foi invadido! Essa é
mas-cliente possam ter alguma idéia do máquina – útil para redirecionar pedi- uma prática perigosíssima: se esquecer
que aconteceu. dos de conexão HTTP para o proxy de fechar alguma coisa, pode ser (ou
Note bem: estamos confi gurando o local (por exemplo o squid [4]). Para melhor, será) alvo de um ataque em
comportamento padrão das zonas. Mas redes pequenas, que não precisam ter breve. No primeiro caso, esquecer de
o que isso significa? Simples: que se acesso irrestrito à Internet, descobri que abrir alguma coisa bloqueará momen-
você não defi nir nenhuma regra especí- a ação REDIRECT é extremamente útil. taneamente algum serviço, que pode
fica para cada um dos tipos de conexão, Pode-se, por exemplo, permitir apenas ser aberto facilmente depois. O que é
o comportamento padrão defi nido no tráfego HTTP para os clientes internos, uma ligeira inconveniência comparada
arquivo policy será aplicado. bloqueando qualquer outra coisa. No ao risco real de ataque?
No arquivo policy da rede que tenho caso da minha rede, faço algo parecido
em casa possuo apenas essa linha com a seguinte linha no arquivos rules: Escovando bits
padrão para a zona net. Teoricamente, Já deve estar óbvio para o leitor como
qualquer pacote vindo da Internet deve- REDIRECT loc 3128 tcp www - U a nomenclatura dos arquivos do Sho-
ria ser bloqueado. Entretanto, possuo !10.2.38.0/24 rewall funciona. Por exemplo, é mais
um servidor web em minha máquina que evidente que o arquivo /etc/sho-
com um bocado de informações de Resumidamente, a ação acima diz rewall/hosts permite a defi nição de
referência que gostaria de acessar do que todas as conexões que usem o pro- máquinas (hosts) específicas. Nor-
trabalho. Uma vez que essa conexão se tocolo de transporte TCP e que requisi- malmente não é necessário mexer
dá através da Internet, a linha corres- tem um serviço de web (protocolo de nesse arquivo em redes pequenas.
pondente no arquivo policy impede que aplicação HTTP, normalmente disponí- Quanto menor for a rede, mais prová-
eu acesse meus bookmarks e anotações vel na porta 80) sejam redirecionadas vel que a confi guração em uma zona
quando estiver longe de casa. para a porta 3128. Essa é a porta em que seja confi gurada da mesma maneira
A resposta está no arquivo rules, que o servidor proxy Squid “escuta”. (ou, mais especificamente, que todas
é o coração do Shorewall. Aqui defi ni- Aqui temos a fi gura do destino origi- as máquinas conectadas a uma
mos como o fi rewall deve se comportar nal. Especificamos uma classe C inteira mesma interface do fi rewall possuam
para cada tipo específico de conexão. usando a notação CIDR (Classless Inter- configuração semelhante).
Podemos criar regras usando qualquer Domain Routing): 10.2.38.0/24. O sinal Talvez esse não seja seu caso e você
abstração criada pelo Shorewall: zonas, de exclamação na frente do endereço precise de regras de acesso diferentes
serviços de rede (portas), segmentos indica que estamos negando a regra, para cada máquina de uma mesma rede
de rede, máquinas individuais e prati- ou seja, pacotes vindos de qualquer ou segmento. Há alguns meses meu
camente qualquer combinação desses endereço são redirecionados ao Squid fi lho começou a jogar um RPG via Inter-
elementos. Quando uma requisição de exceto os endereços pertencentes à rede net. Para isso, precisava de mais do que
conexão chega vinda da Internet, o sis- 10.2.38.0/24. A razão é óbvia: quero acesso HTTP via proxy.
tema primeiro verifica se alguma regra que todos na minha rede local acessem Para liberar esse acesso, defi ni um
defi nida no arquivo rules pode decidir o servidor web sem passar pelo proxy, conjunto específico de computadores
o que fazer com ela. Se nenhuma regra reservado apenas ao tráfego externo. como uma nova zona. Para tanto, criei
apropriada existir, usa-se a regra padrão A ação LOG primeiro registrará o uma nova linha para ela no meu arquivo

http://supertuxbr.blogspot.com
defi nida no arquivo policy. evento no syslog. Ao contrário das zone, à qual chamei game. Depois, criei

34 edição 06 www.linuxmagazine.com.br
Shorewall CAPA

uma linha no arquivo hosts contendo, uso Squid como proxy e meu fi lho pre- Se o computador remoto (ou mesmo
apenas, o computador do meu fi lho. cisava apenas do acesso ao jogo, conti- outro computador na mesma rede) con-
nuei usando a cláusula REDIRECT para tinuasse a tentar acessar várias portas
game eth0:10.2.38.13 conexão a websites. em minha máquina, eu poderia colocá-
lo numa “lista negra”. Para isso, basta
Mas não é só. Lembra-se de que Caçando bugs colocar os IPs (ou redes inteiras, no for-
minha rede local era 10.2.38.0/24? Este É bem possível (provável, até) que você mato CIDR) no arquivo /etc/shorewall/
é um dos endereços privados defi nidos tenha problemas ao confi gurar o Sho- blacklist. Isso quer dizer que, em detri-
na RFC 1918. Mesmo que eu quisesse rewall. Portanto, a capacidade de mos- mento de todas as regras que porven-
rotear esses endereços pelo meu ADSL, trar todos os detalhes de cada conexão tura permitissem acesso, pacotes vindos
posso apostar que meu provedor de é uma ferramenta valiosa. desses IPs são sempre bloqueados.
Internet os bloquearia mais adiante. O Uma técnica útil de depuração é colo- Por padrão, o Shorewall usa o subsis-
que podemos fazer, então? car o nível de logging em modo debug, o tema de registro (syslog) do Linux para
A solução é o que chamamos de IP que gera uma quantidade espantosa de enviar as mensagens automaticamente
masquerading, ou mascaramento de informação. Entrar em detalhes sobre para /var/log/messages. Mesmo quando
IP. Como o nome indica, um endereço os pormenores de cada evento está fora se configura o syslogd para enviar men-
IP válido (ou seja, roteável) é usado do escopo deste artigo. São, entretanto, sagens a outro arquivo, acho maçante
para “mascarar” os endereços IP pri- fáceis de inferir mesmo sem verificar que as mensagens do meu fi rewall este-
vados. No meu caso, o endereço IP da todas as linhas. Por exemplo, observe o jam misturadas a mensagens do kernel.
linha ADSL (que possui um endereço registro a seguir: Para resolver a questão usamos
válido) mascara os IPs da minha rede ULOG, que deve estar habilitado no ker-
local. Portanto, preciso criar uma linha Nov 1 11:19:32 saturn kernel: U nel. A boa notícia é que isso é padrão
no arquivo /etc/shorewall/masq seme- Shorewall:net2all:DROP:IN=ppp0 U nas distribuições modernas. A má é que
lhante à seguinte: OUT= MAC= o pacote ulogd, necessário para que os
SRC=1.2.3.4 DST=10.2.38.11 U usuários possam usar o serviço, quase
ppp0 10.2.38.0/24 LEN=48 TOS=0x00 PREC=0x00 U nunca está disponível nas distros. Em
TTL=116 ID=47048 DF todo caso, pode-se baixá-lo de [5].
A interpretação é simples: todo o trá- PROTO=TCP SPT=1 292 DPT=1080 U Uma vez que o ulogd esteja confi-
fego vindo da rede 10.2.38.0/24 e que WINDOW=64240 RES=0x00 SYN URGP=0 gurado e rodando, não se usa mais os
saia para a Internet através da interface níveis de registro do syslogd no arquivo
ppp0 tem que ser mascarado com o IP Este é um registro padrão de /var/log/ policy. Em vez disso, use ULOG (tudo
dessa interface. messages. No começo temos a data, o em maiúsculas). A configuração do
Nesse ponto, a confi guração básica nome do computador e o subsistema do ulogd é independente do syslogd, por-
do mascaramento já está pronta. syslog (no caso, o kernel). Depois disso tanto qualquer mudança em /etc/syslog.
Agora, entretanto, é que vem a parte vem a mensagem real. Como se pode conf não afeta o ulogd.
penosa. Não foi fácil conseguir infor- notar, o pacote entrou pela ppp0 (meu Uma última dica: o Webmin possui
mações sobre o jogo e sobre como jogá- modem ADSL) e o pacote foi bloqueado um módulo para confi guração do Sho-
lo através de um fi rewall. Para falar (DROP). Podemos ver, também, que a rewall, disponível em [6]. Para mais
bem a verdade, toda a documentação conexão net2all estava em uso, ou seja, informações sobre o Webmin, visite o
que encontrei falava praticamente a o pacote estava vindo da Internet em site oficial do programa em [7]. ■
mesma coisa: se quiser jogar, desabilite direção a alguma das outras zonas.
seus fi rewalls! Se voltarmos à discussão sobre o INFORMAÇÕES
Entretanto, quase que por acidente arquivo policy, veremos que o proce- [1] Site oficial do Netfilter:
consegui fazer o jogo funcionar. Para dimento padrão era bloquear (DROP) http://www.netfilter.org
tanto, coloquei o nível de registro (log) qualquer pacote que viesse da Internet [2] Site oficial do Shorewall:
no arquivo policy em modo debug e em direção a qualquer outra interface http://www.shorewall.net
observei detalhadamente o que acon- (all). Algum dos pacotes tentou chegar
[3] Endereços para Redes Privadas (RFC 1918):
tecia, anotando todas as tentativas de à porta de destino (DPT) de número http://rfc.net/rfc1918.html
conexão do computador de meu fi lho 1080, a porta do serviço socks. Não
[4] Proxy Squid:
com qualquer máquina. Depois, veri- possuo nada rodando ali e certamente
http://www.squid-cache.org/
fiquei via consultas DNS se aquela não me comuniquei com ninguém que
[5] Ulog:
máquina pertencia aos desenvolve- precisasse dela. Como não é uma porta
http://gnumonks.org/projects/ulogd
dores do jogo. Por último, adicionei a “padrão”, nem há um serviço associado
porta específica usada pelo jogo ao meu a ela por default, não há razão para [6] Módulo do Webmin para administrar o
Shorewall: http://www.webmin.com/
arquivo rules. ninguém acessá-la pela Internet. Para
download/modules/shorewall.wbm.gz
Se eu quisesse, poderia ter adicio- mim parece óbvio: alguém estava me
nado regras para acesso ao serviço testando para tentar explorar uma falha [7] Site oficial do Webmin:
http://www.webmin.com

http://supertuxbr.blogspot.com
WWW (porta 80). Entretanto, como já conhecida do Windows.

www.linuxmagazine.com.br edição 06 35
ANÁLISES Mozilla Firefox

Navegador leve do projeto Mozilla ganha mercado

The quick firefox Desde o fim da guerra dos

jumped over the


browsers, em 1998, um navegador

de Internet não chama tanto a

lazy explorer
atenção do público. Saiba mais

sobre o Firefox e descubra o

porquê. POR RAFAEL RIGUES

Tom Kolby: www.sxc.hu

O Firefox nasceu dos esforços de


dois desenvolvedores, Dave
Hyatt (que hoje trabalha para
a Apple no browser Safari) e Blake Ross,
que consideravam o navegador Mozilla
mesma linguagem usada para criar o
navegador Mozilla. A primeira versão
do Firefox (0.1, codinome Pescadero) foi
lançada em 23 de Setembro de 2002.
Mais de dois anos e 19 versões depois,
Instalação
As vantagens do Firefox se tornam apa-
rentes logo na instalação: enquanto
um download do Internet Explorer 6
via Windows Update pode chegar a 79
pesado e com recursos demais. Ambos o Firefox é um fenômeno de populari- MB, o Firefox tem apenas 8,4 MB. As
tinham razão: composto por navegador, dade. 20 milhões de cópias da versão versões Linux e Windows trazem um
cliente de e-mail, cliente de IRC e edi- 1.0 foram baixadas desde o seu lança- instalador para ajudar a colocar o pro-
tor HTML, as primeiras versões do con- mento em 9 de novembro de 2004. A grama em seu sistema; basta seguir as
junto de aplicativos do projeto Mozilla participação no mercado de browsers instruções na tela. Na versão para Mac
(codinome SeaMonkey) se arrastavam a já chega a 5% e, pela primeira vez em OS X o instalador sequer é necessário:
passos de tartaruga, mesmo em máqui- muitos anos, a participação do prin- após o download, basta arrastar o ícone
nas poderosas. Seria necessário uma cipal concorrente, o Internet Explorer, do aplicativo para a pasta Applications
“dieta” rigorosa se o projeto quisesse caiu. O motivo é simples: os usuários (Aplicativos). Muitas distribuições
chegar a algum lugar. estão fartos de janelas pop-up, banners, Linux recentes já trazem o Firefox ins-
Dave e Blake começaram desmem- sites que “seqüestram” seu navegador talado por padrão ou fornecem pacotes
brando o programa. Separaram o ou instalam software malicioso em seus pré-compilados com o programa.
“engine” de renderização de páginas sistemas e falhas de segurança que per- Outro destaque é o suporte à interna-
HTML, chamado Gecko, e ao redor dele mitem que um site se passe por outro. cionalização. São 32 idiomas suporta-

http://supertuxbr.blogspot.com
construíram uma interface em XUL, Esses problemas não afetam o Firefox. dos, incluindo o português do Brasil e

36 edição 06 www.linuxmagazine.com.br
Mozilla Firefox ANÁLISES

línguas exóticas como asturiano, cata- ocorrência e a destaca em fundo verde. O Firefox também é mais compatí-
lão e galês. Basta escolher seu favorito Os botões Próxima e Anterior no painel vel com os padrões em vigor na Inter-
na hora do download. de busca encontram respectivamente net, como o “Cascaded Style Sheets
a próxima ocorrência do termo e a 2” (CSS2), defi nidos pelo W3C (World
Principais recursos anterior. Realçar destaca todas as ocor- Wide Web Consortium). E por não ser
O Firefox é um mágico com muitos coe- rências simultaneamente em amarelo, tão intimamente ligado ao sistema ope-
lhos na cartola. Um dos mais visíveis como se tivessem sido marcadas com racional, ao contrário do Internet Explo-
e adorados é o bloqueador de popups, uma caneta destaca-texto. E Diferenciar rer, apresenta menor risco de ser usado
que impede que os sites abram aquelas Maiúsc./Minúsc. faz com que a busca como vetor para um ataque ou invasão
irritantes janelinhas com propaganda. respeite maiúsculas e minúsculas. ao sistema. Por padrão, o navegador
O recurso vem habilitado por padrão e Para quem tem problemas de visão bloqueia o download de extensões vin-
há uma lista de exceções, na qual você ou odeia aqueles sites que proposita- das de sites de terceiros e alerta sobre
indica os sites que podem abrir popups damente utilizam fontes praticamente os riscos decorrentes da instalação
(por exemplo, o site do seu banco). ilegíveis, o atalho de teclado Control + de extensões e plugins não assinados.
Quando uma janela popup é bloque- é uma bênção. Use-o múltiplas vezes Além disso, o navegador Firefox busca
ada, uma mensagem surge no topo da para aumentar o tamanho das fontes e atualizações críticas durante a iniciali-
página, dizendo: Firefox prevented this deixá-las ao seu gosto. O atalho Control zação. Sempre que uma está disponível,
site from opening a popup window. Click - tem o efeito inverso. Para quiosques de a página inicial (homepage) é substi-
here for options… (O Firefox impediu acesso à Internet ou terminais de infor- tuída por um alerta informando sobre
este site de abrir uma janela popup. Cli- mação em que o conteúdo é tudo o que o problema, com um botão para down-
que aqui para mais opções...). Clique importa, há o modo full-screen, aces- load imediato de uma correção.
na mensagem para bloquear todos os sado através da tecla F11.
popups vindos do site, liberá-los, exibir Há uma forma de criar palavras que Extensões
a janela que foi bloqueada ou acessar as funcionam como atalhos para sites e Extensões são pequenos programas que
opções do bloqueador. Extensões como sistemas de busca como o Google (que se “anexam” ao navegador e expandem
a AdBlock trazem ainda mais recursos já tem um campo de busca ao lado da seus recursos. Eles variam desde peque-
e podem bloquear banners animados e barra de endereços) e Wikipedia. Veja nos inutilitários (que informam quantas
propagandas em Flash, entre outras. um exemplo: mensagens existem na sua caixa postal,
Outro recurso muito útil é a navega- 1. Faça uma busca qualquer na Wiki- por exemplo), passando por tecnologias
ção com abas, ou “tabbed browsing”. pedia e descubra qual é a expressão experimentais (como menus circulares,
Ela permite ver vários sites em uma usada para essa busca na barra de ou pie menus) até ferramentas como
única janela do navegador, cada um em endereços. Fizemos isso e descobri- gerenciadores de downloads em massa
uma aba, o que elimina a confusão de mos que ela é a seguinte (a palavra (úteis para lidar de uma só vez com
múltiplas janelas do navegador entu- procurada foi Linux): páginas lotadas com links para vários
lhando o desktop. Para quem realmente arquivos) e interfaces para escrita em
aprecia esse recurso, a extensão Tab- http://en.wikipedia.org/wiki/ blogs como o Blogger, Drupal, LiveJour-
browser Preferences é essencial. Ela adi- Special:Search?search=Linux&go=Go nal, MoveableType, e outros.
ciona à janela de preferências do Firefox O site Firefox Central [1] lista quase
opções para “ajuste fi no” do comporta- 2. Faça um bookmark com essa URL. No duas centenas de extensões para o Fire-
mento das abas. menu Favoritos, clique com o botão fox. Instalá-las é fácil; basta clicar no
Se você quer procurar por um termo direito do mouse sobre o item Wikipe- link Install logo abaixo da descrição
em uma página Web, não precisa ir dia que você acabou de adicionar. Vai da extensão. Uma janela surge pergun-
até o menu Editar | Localizar ou teclar aparecer um menu de contexto. Esco- tando se você deseja mesmo instalar o
Control+F. Assim como no vi, no lei- lha a opção Propriedades. Na janela arquivo. Clique em Instalar Agora pra
tor de man pages do Linux ou no less, de diálogo que aparece, troque agora continuar. Depois, basta reiniciar o
basta teclar /, seguido do termo, para a palavra chave na URL (Linux) por navegador para que a nova extensão
fazer uma busca na página (um pai- %s. O resultado fi nal será: funcione. Você pode removê-la, buscar
nelzinho de busca surge na parte infe- por atualizações ou configurar opções
rior da janela do navegador). O Firefox http://en.wikipedia.org/wiki/ extras no gerenciador de extensões,
automaticamente pula para a primeira Special:Search?search=%s&go=Go encontrado no menu Ferramentas | Exten-
sões. A seguir, algumas das extensões
Trivia No campo keyword escreva wp, que mais populares ou úteis para o Firefox:
vai ser o nosso atalho para Wikipedia. ChatZilla – Um cliente IRC completo
Além de nomes de criaturas mitológicas,
Agora é só experimentar: na barra de dentro do seu navegador, que dispensa
Firebird e Thunderbird também são nomes
endereços digite “wp” seguido do termo programas como o XChat ou mIRC e é
de automóveis esportivos, produzidos pelas
montadoras Pontiac (em 1967) e Ford (em a buscar, como: wp gentoo. O resultado compatível com o Mozilla e o Firefox
1954), respectivamente. deve ser uma página da Wikipedia com em qualquer plataforma suportada por

http://supertuxbr.blogspot.com
os resultados da busca. Divirta-se! esses programas. Infelizmente, não fun-

www.linuxmagazine.com.br edição 06 37
ANÁLISES Mozilla Firefox

load e upload de arquivos, continuar


downloads interrompidos, criar “fi las”
de arquivos a ser transferidos ou veri-
ficar o status (tempo e quantidade de
dados restantes) da transferência, entre
vários outros recursos. A interface é
similar à de clientes FTP populares
como o GFTP (para o Gnome, no Linux),
WS-FTP (para o Windows®) e Transmit
(para o Mac OS X).
BandwidthTester – Extensãozinha
Figura 1: Chatzilla, um cliente IRC para o Firefox. que testa a velocidade de sua conexão à Figura 2: Faça transferências via FTP com o FireFTP.
Internet, a chamada “largura de banda”.
ciona com alguns derivados do Mozilla Muito útil para diagnosticar uma apa- Temas
como o Galeon, o Epiphany (ambos para rente lentidão em sua conexão ou para Além da flexibilidade em termos de
Linux) e o K-Meleon (para Windows). saber se sua operadora de telefonia está recursos, graças às extensões, o Fire-
Tem apenas 271 KB e a interface pode realmente entregando o que prometeu fox também é flexível no visual, com
ser personalizada com o uso de motifs no contrato de seu acesso via DSL ou se os temas. Eles são conjuntos de ícones,
(motivos), que alteram a aparência do vende gato por lebre. imagens e descrições de estilos de fon-
texto e adicionam imagens de fundo, User Agent Switcher – Esta exten- tes e cores que são usados para mudar
emoticons e outros itens às conversas. são muda a string que o navegador a cara do navegador, seja para integrá-
Um FAQ [2] tira as principais dúvidas usa para se identificar junto ao servi- lo melhor ao ambiente onde está sendo
relativas ao uso do programa. dor web. Alguns websites usam essa executado, seja por pura diversão.
DictionarySearch – Extensão muito informação para decidir que versão da A versão Mac do Firefox, por exem-
útil para quem está aprendendo inglês página mostrar ao usuário; outros, mal plo, vem com um tema padrão (Pins-
e quer consultar rapidamente o signifi- programados, bloqueiam o acesso de tripe) diferente das outras plataformas,
cado de uma palavra. Basta selecioná- internautas que não usam o navegador que faz com que o navegador se integre
la, clicar com o botão direito do mouse para o qual o site foi “otimizado” (geral- muito melhor ao mundo “Aqua” do sis-
e escolher a opção Dictionary Search mente o Microsoft Internet Explorer). tema operacional da Apple. Há temas
no menu. Uma nova aba se abre, mos- Com o User Agent Switcher você pode, que deixam o navegador com a cara do
trando o significado da palavra. Na ver- por exemplo, fazer com que o Firefox se Internet Explorer (Luna, excelente para
dade a extensão é uma interface para o identifique como o Internet Explorer 6, facilitar a migração de usuários inex-
serviço gratuito de consulta disponibili- contornando essa limitação. perientes), ou que o integram perfeita-
zado pelo site dictionary.com Sage – Um agregador de notícias e mente ao Gnome (Gnome-Fx) ou KDE
Colorzilla – Muito útil para desenvol- “feeds” RSS, que pode ser usado para ver, (Plastik). Uma lista com mais de 60
vedores Web, essa extensão permite que em um único local e de forma centra- temas, divididos em várias categorias,
você selecione e veja rapidamente os lizada, as últimas novidades em seus está disponível no site Firefox Central.
valores RGB para as cores de qualquer sites favoritos. Ele lê feeds RSS nas ver- Após escolher um tema, instalá-lo é
elemento de uma página Web. Também sões 0.9x, 1.0, 2.0 e feeds Atom, pode fácil. Basta clicar no link Install logo
permite que você dê “zoom” na página descobrir novos
e meça a distância entre dois pontos, feeds sozinho, se
entre outros recursos. integra aos book-
AdBlock – Essencial para quem marks do Firefox,
detesta janelinhas e banners de propa- tem visualização
ganda com gorilas roxos e falsas “men- de notícias perso-
sagens de erro” do Windows (como nalizável através
a clássica: “Seu computador tem um de folhas de estilo
endereço IP! Isso é uma falha grave de e suporta os idio-
segurança, clique aqui para corrigir”). mas catalão, chi-
Além de eliminar a chateação, sem os nês, hola ndês,
banners as páginas ficam mais leves e francês, alemão,
carregam mais rápido. húngaro, italiano,
FireFTP – Um cliente FTP dentro do japonês, coreano,
seu navegador web. Firefox e Mozilla já russo, espanhol e
têm recursos básicos para acesso a ser- sueco. Alguém se
vidores FTP, mas são limitados apenas habilita a criar uma
ao download de arquivos, um por vez. versão em portu-

http://supertuxbr.blogspot.com
Com o FireFTP você pode fazer down- guês do Brasil? Figura 3: Instale o Sage e nunca mais fique por fora das novidades.

38 edição 06 www.linuxmagazine.com.br
Mozilla Firefox ANÁLISES

abaixo de sua descrição. Uma janela que desenvolve produtos e serviços


aparece, perguntando se você realmente baseados no FirebirdSQL, incitou sua
deseja instalar o tema. Basta clicar em comunidade a inundar fóruns e listas
OK e esperar o download. A janelinha de discussão do projeto Mozilla com
“Temas” irá surgir (se não, clique em reclamações contra o novo nome. Um
Ferramentas | Temas), mostrando todos dos responsáveis pelo projeto, Asa Dot-
os temas já instalados e, em alguns zler, tentou uma solução conciliatória,
minutos (dependendo da velocidade sugerindo que o navegador fosse oficial-
de sua conexão à Internet), o tema que mente chamado Mozilla Firebird, mas
você acabou de baixar. ela não foi aceita.
Para usar um tema, dê dois cliques A saída foi mais uma mudança de
sobre o nome dele na lista (é necessá- nome: a partir de 09 de Fevereiro de
rio reiniciar o navegador para que o 2004 o Firebird passou a ser conhecido Figura 7: O Panda Vermelho não é uma raposa,
tema seja aplicado à interface). Para como Firefox (Raposa de Fogo), um mas é o mascote oficial do projeto Firefox.
remover um tema, selecione-o na lista dos nomes para um animal também
e clique no botão com um X, no rodapé conhecido como “Panda Vermelho” [1] INFORMAÇÕES
da janela. Para atualizá-lo, clique no (a “raposinha” ao redor do globo no
[1] Firefox Central:
segundo botão, com as setinhas. ícone do programa). Sem reclamações
http://www.mozilla.org/products/
de qualquer espécie, o cliente de e-mail firefox/central.html
Crise de identidade Thunderbird pôde manter seu nome.
[2] Chatzilla:
O navegador que hoje conhecemos Os usuários não perderam tempo para
http://www.mozilla.org/projects/
como Mozilla Firefox passou por duas se divertir às custas da controvérsia. A
rt-messaging/chatzilla/
mudanças de nome em um passado não extensão Firesomething combina duas
muito distante. Até a versão 0.5, o pro- listas, uma com nomes de animais e [3] A verdadeira “Firefox”:
http://en.wikipedia.org/wiki/Red_Panda
jeto era conhecido como Phoenix, nome outra com elementos (água, terra, fogo,
do pássaro lendário que renascia das vento...) para criar um novo nome para [4] Thunderbird, a ave mitológica:
próprias cinzas, assim como o navega- o navegador a cada vez que ele é aberto. http://en.wikipedia.org/wiki/
dor renasceria das cinzas do Mozilla. Hoje você usa o Firepanda, amanhã Thunderbird_%28mythology%29
Entretanto a Phoenix Technologies, pode ser o Moontiger, na semana que [5] Sage: http://sage.mozdev.org
fabricantes de BIOS para PCs e de um vem o Earthbadger. Barras de título, [6] AdBlock: http://adblock.mozdev.org
dispositivo de acesso à Internet, temeu janelas de preferências e a caixa de diá- [7] FireFTP: http://fireftp.mozdev.org/
uma confusão entre os produtos e soli- logo Sobre... (About...) são modificados.
citou a mudança no nome do navegador, A identificação do navegador, usada
no que foi atendida. por alguns sites para determinar que Rafael Rigues,
Em 14 de Abril de 2003 o navegador página exibir ao visitante, não é modifi- um maníaco por
videogames e com-
Phoenix e o cliente de e-mail Minotaur cada, portanto a extensão não prejudica
SOBRE O AUTOR

putadores antigos,
tiveram seus nomes mudados para Fire- a compatibilidade do aplicativo. já foi funcionário
bird e Thunderbird, respectivamente. Mostramos aqui apenas um pequeno da Conectiva,
Mas os problemas com nomes não aca- conjunto dos recursos e vantagens do onde participou do
baram por aí. Rapidamente a comu- Firefox. Um programa em constante desenvolvimento do
Conectiva Linux 5 e Conectiva Linux:
nidade de usuários do banco de dados desenvolvimento, e com tantas pos-
E-Commerce, e membro da equipe
FirebirdSQL, descendente do Interbase, sibilidades de expansão, com certeza da Revista do Linux, da qual foi editor
da Borland, reclamou que a coincidên- esconde dezenas de outras agradáveis durante um ano. Atualmente é um
cia entre os nomes estava causando surpresas que só serão encontradas com dos editores da Linux Magazine Brasil.
confusão. A IBPhoenix, uma empresa a convivência diária. Experimente! ■

http://supertuxbr.blogspot.com
Figura 4: O Firefox é a cara do Gnome (Gnome-FX)... Figura 5: ...do Windows XP (Luna Blue)... Figura 6: ...ou do Mac OS X (Pinstripe).

www.linuxmagazine.com.br edição 06 39
ANÁLISES Gerenciamento de chamados técnicos

É, sim, possível controlar o setor de atendimento técnico com Linux.

Liga pro suporte!


Ficar atento aos pedidos de suporte

dos clientes pode fazer a diferença

quando se trata de voltarem – ou

não – a contratá-lo. Felizmente,

diversos aplicativos baseados em

Linux oferecem salvação para

seu departamento de suporte

técnico. POR JAMES MOHR

Q uem quer que já tenha preci-


sado ligar para uma empresa
por causa de algum problema
com um produto teve também de
complexas que capacitam você a geren-
ciar problemas, por exemplo iniciando
ordens de serviço diretamente a partir
dos chamados. Saber diferenciar entre
grupos de usuários. A terminologia
com freqüência é muito diferente, mas
o objetivo é atribuir um chamado a um
grupo de pessoas para que o próximo
enfrentar o suporte técnico. Manter chamados técnicos e ordens de serviço usuário disponível possa atendê-lo.
um registro dessas ligações não ape- é muito útil, seja ao lidar com clientes Em geral, sistemas de chamados técni-
nas ajuda a resolver problemas mais externos ou com funcionários de outros cos compõem-se de três unidades prin-
rápido como pode até mesmo evitar departamentos da empresa. cipais: usuários, grupos e fi las (embora
que alguns deles aconteçam. Nada impede que você use o mesmo a terminologia não seja consistente). A
A maior parte dos centros de suporte sistema para gerenciar pedidos de fi la é o elemento administrativo cen-
atualmente usa algum pacote de progra- suporte e chamados técnicos. Misturar tral para o processamento de chamados
mas para gerenciar as ligações, tanto o os dois pode ser confuso, então é bom técnicos. Por exemplo, você pode criar
suporte técnico ao cliente quanto aquele atribuí-los a diferentes grupos ou cons- fi las separadas para redes, impressora e
ao usuário interno. truir campos especiais que indiquem se problemas com aplicativos.
Em ambos os casos é preciso manter o pedido é um chamado técnico normal
um registro dos pedidos de suporte. Um ou uma ordem de serviço. Nem todos os Será que funcionam?
pedido que chega é tipicamente regis- produtos facilitam essa tarefa, porém. Se você fi zer uma busca no Google e no
trado num “chamado técnico” (ticket). Um aspecto fundamental do sistema SourceForge, encontrará rapidamente
Portanto, para simplificar, vou me refe- de chamados técnicos é a capacidade uma dúzia de produtos diferentes que
rir aos dois produtos como “sistemas de de atribuir um único número (ou ID) recaem na categoria “ticket systems”.
chamados técnicos”. Neste artigo, conhe- a cada chamado. Embora esse recurso Se fôssemos falar de cada um deles,
ceremos um pouco sobre esses sistemas seja padrão nos sistemas, o modo como teríamos que nos restringir a um ou
e veremos alguns dos que estão disponí- o ID é gerado não é sempre o mesmo – e dois parágrafos para cada um. Vamos
veis atualmente para Linux. nem sempre você ficará satisfeito. portanto limitar um pouco a busca.
Além disso, sistemas de chamados O primeiro critério, obviamente, é
Curso rápido de sistemas de técnicos precisam de um modo de regis- que o programa precisa rodar em Linux.
chamados técnicos trar o responsável pelo chamado. No A seguir, as buscas foram limitadas a
Sistemas de chamados técnicos podem mínimo, o sistema deve permitir a defi- produtos que estão sendo desenvolvi-
ser simplesmente ferramentas que per- nição dos usuários a quem os chamados dos atualmente. “Atualmente”, aqui, é
mitem registrar pedidos de suporte. podem ser atribuídos. A maior parte um tanto arbitrário, mas não incluí

http://supertuxbr.blogspot.com
Podem ser também ferramentas mais dos sistemas vai além e permite criar de propósito produtos que não foram

40 edição 06 www.linuxmagazine.com.br
Gerenciamento de chamados técnicos ANÁLISES

recentemente atualizados. Alguns eram


bonitinhos e tinham recursos interes-
santes, mas sabe-se lá para onde iam
me levar depois de eu perder um tem-
pão para instalá-los.
A escolha fi nal dos aplicativos a incluir
também foi algo arbitrária. Basicamente
dei uma olhada na lista de recursos para
ver o que eles ofereciam e escolhi as fer-
ramentas cujos recursos me agradaram
mais. Não me limitei a produtos não-
comerciais ou open source.
As interfaces que vi eram exclusiva-
mente baseadas no navegador web. Isso
permite fácil acesso tanto aos clientes
quanto ao pessoal do suporte. Porém,
ao testar esses produtos, é preciso ver
como ele reage a seu navegador padrão. Figura 1: Request Tracker “num relance”.
Em alguns casos, descobri que a inter-
face web tinha alguns defeitos em dife- Como não conheço sua empresa e suas Na primeira vez em que você se loga,
rentes navegadores do Linux. exigências específicas, não posso defi nir aparece um tipo de “Introdução ao RT”.
Em cada caso, o produto dava suporte qual desses produtos você deveria usar. Esse recurso mostra mal e porcamente
à abertura de chamados técnicos via Todavia, vou deixar você dar uma olhada o que está acontecendo. Nem todos os
email, seja fazendo com que o servi- no que está disponível e em alguns dos chamados abertos são vistos direta-
dor de email mandasse a mensagem recursos que cada produto tem a ofere- mente na primeira página, mas em geral
para um fi ltro especial (a maioria dos cer. Se você realmente quer tomar uma estão a apenas um clique de distância.
servidores de email pode fazer isso) ou decisão informada, sugiro escolher uma Nessa página há também um bloco
fazendo com que o sistema de chama- ou duas dessas ferramentas e instalá-las de nome “Criação rápida de chamados”.
dos recolhesse ele próprio as mensagens em seu computador. Vale também visi- Como o próprio nome diz, esse recurso
usando POP3 (alguns fazem as duas tar as demonstrações online disponíveis permite criar chamados técnicos muito
coisas). Não importa se você está geren- para alguns desses produtos. rápido. Aqui, só é possível escolher o
ciando seu próprio servidor ou usando assunto, o proprietário e a fi la. Ao clicar
um provedor de hospedagem, um des- Request Tracker em “create” (criar), o chamado é criado
ses métodos deve funcionar. O Request Tracker [1] é um sistema de e você é levado de volta à página inicial,
Outra característica que busquei foi código aberto para gerenciamento de para criar mais chamados ou mexer nos
a facilidade de ajustar o sistema às chamados técnicos da Best Practical que já existem.
necessidades. Parte disso é a capaci- Solutions. O processo de instalação do Se você der uma olhada na fi gura 1,
dade de restringir o acesso a diferen- Request Tracker (RT) foi bastante incô- verá que cada função tem seu próprio
tes partes do sistema. Por exemplo, dá modo. Além de exigir Perl 5.8.3, a ver- cabeçalho com um X na extremidade
para separar chamados técnicos em são que baixei necessitava de uma longa esquerda. Ao clicar nesse X a caixa é
diferentes grupos, deixando aos usu- lista de módulos Perl, muitos dos quais “colapsada” e só o cabeçalho fica visí-
ários acesso apenas a chamados den- eu nem sabia que existiam. vel. Clique novamente no X pra voltar a
tro de seu próprio grupo? Ou acesso Forneceram um arquivo make que abrir a caixa. Esse recurso aparece em
de apenas leitura aos outros grupos? incluía recursos para testar/exibir as praticamente todas as páginas relacio-
Dá para evitar que os usuários apa- dependências, assim como para “con- nadas a chamados técnicos e pode ser
guem chamados? Que outros direitos sertá-las” automaticamente, aprovei- muito útil se a página estiver muito atu-
ou privilégios podem ser defi nidos? É tando a capacidade do Perl de baixar e lhada de informações.
possível confi gurar a interface ou as instalar sozinho os módulos do reposi- O RT tem uma sub-classe de usuários
respostas padrão para os clientes? tório online CPAN. Porém, ele não fun- chamados “watchers” (vigias). Como o
Ajustar o sistema a suas necessidades cionou como esperado e tive de baixar termo sugere, são as pessoas que vigiam
também pode significar incluir seus pró- alguns módulos manualmente. o chamado. Podem ser as pessoas envol-
prios tipos de dados, com a capacidade Uma coisa chata é que, se o RT não vidas ativamente, como o requerente e o
de acrescentar novos campos. Assim encontrar a versão do Perl “exigida” ao técnico do suporte. Também podem ser
como para as permissões dos usuários, rodar o make fi xdeps, ele continua a as pessoas apenas interessadas no cha-
o modo como esse recurso é implemen- baixar módulos do Perl para a versão mado. Por exemplo, se o proprietário
tado varia de produto para produto. Pes- que já está em seu sistema. De acordo da empresa abre um chamado técnico,
soalmente, acho que essa característica com a Best Practical, isso será conser- o gerente do departamento de suporte

http://supertuxbr.blogspot.com
é, com muita freqüência, subestimada. tado na próxima versão. pode ter interesse em seguir o processo.

www.linuxmagazine.com.br edição 06 41
ANÁLISES Gerenciamento de chamados técnicos

Assim como com qualquer produto, os gera um segundo chamado técnico, que e um ajuste para limitar o tempo pelo
chamados técnicos são processados por é atribuído à segunda fi la, responsá- qual os chamados podem ser tranca-
pessoas com habilidades específicas. É vel por realizar o trabalho. Ou mesmo dos (o trancamento de chamados é um
de bom-tom enviar cada chamado ape- “projetos”, em que uma tarefa grande é recurso que poucos produtos têm).
nas para a fi la da pessoa designada para composta de diversas tarefas menores. O OTRS pode ser confi gurado para
tratar dele. Assim, por padrão, uma fi la O RT acrescentou uma melhoria em permitir que os usuários criem suas
também serve como a “categoria” do sua comunicação com o consumidor, próprias contas antes de solicitar a
chamado. Porém, com o RT é possível que é chamada scrips (sem o t mesmo). abertura de chamados (o que se chama
criar campos personalizados, como Scrips são notificações ao consumidor “Customer Self Registration”, Registro
“categoria”, “classificação” ou qualquer que reagem segundo critérios diver- do Cliente). Funciona assim: o cliente
coisa que os produtos comerciais pos- sos. O exemplo clássico é o gerente do dá um nome e endereço de email. Se
sam oferecer. suporte receber uma mensagem no o email não chegar, a empresa tem um
Como unidade administrativa, grupos pager avisando que o dono da empresa registro de que o usuário entrou em
e fi las podem tipicamente ser usados na abriu um novo chamado técnico. contato com o suporte técnico. Os clien-
atribuição de direitos. Pessoas específi- A maior parte dos produtos tem a tes também podem criar uma conta
cas podem ter o direito de modificar cha- capacidade de buscar ligações específi- enviando um email.
mados dentro de certas fi las mas apenas cas. Porém, a busca do RT merece men- Em sua maioria, os chamados técnicos
ler chamados em outras. Alguns grupos ção especial por causa do detalhamento ORTS são administrados como emails
podem cuidar de funções específicas. O que se pode atribuir à busca. comuns. As mensagens são armazena-
RT faz um ótimo trabalho ao controlar das em texto puro no disco rígido; os
os direitos de cada grupo e as funções OTRS – Open Ticket Request cabeçalhos ficam na base de dados. Esse
de cada fi la. Como os usuários são parte System formato permite procurar chamados
dos grupos, você está controlando indi- O Open Ticket Request System (OTRS) mais rapidamente. Mesmo os anexos
retamente os privilégios dos usuários. [2] é outro sistema Open Source de cha- são tratados como no email comum.
O RT leva o conceito de histórico de mados técnicos. A instalação do Open A aparência dos chamados técnicos
chamados dois passos além dos outros Ticket Request System (OTRS) é excep- dentro de uma fi la é semelhante à lista de
produtos. Primeiro, além de um histórico cionalmente fácil se você tiver uma emails em um cliente comum de correio
padrão, há um histórico de mudanças distribuição Linux que trabalhe com eletrônico, com os tópicos sendo mostra-
relacionadas ao chamado – por exemplo, empacotamento RPM. Embora a ins- dos no padrão From (De), To (Para) e Sub-
quando é atribuído a uma pessoa dife- talação exigisse alguns pacotes que eu ject (Assunto). Junto com esses tópicos
rente ou seu status muda. Em segundo não tinha em meu sistema, estes foram há alguns valores específicos dos chama-
lugar, é possível marcar itens não-admi- instalados facilmente a partir dos CDs dos, como estado/status e prioridade na
nistrativos do histórico como uma res- do SuSE. Após instalar o pacote RPM, fi la atual. Você pode dar um “zoom” no
posta ao requerente ou como “particular”, usei um navegador web para o resto da chamado para ver os detalhes.
de forma que o requerente não veja a res- configuração, que incluiu a criação e a Um recuso elegante é uma caixa
posta. Esse recurso é útil para repassar adição dos usuários necessários. na página de chamados com o nome
informações para outros representantes O aplicativo suporta também dis- “modelos de resposta”, que permite
do suporte sobre o relativo conhecimento tribuições Linux que não usam RPM compor respostas padrão livremente
do requerente (ou falta dele). e dialetos UNIX, mas você só tem um configuráveis, como “Favor procurar
As prioridades podem variar numa arquivo .tar.gz e precisa realizar todas no Google”, “RTFM” e “Leia as FAQ”.
escala que vai de 0 a 99; o chamado as etapas da instalação “à mão”. Isso Coisas assim são extremamente úteis
pode receber maior ou menor priori- inclui procurar todos os módulos de se você tiver uma alta porcentagem de
dade conforme se aproxima o fi m do Perl necessários, criar e configurar sua chamados repetidos ou chamados que
prazo. Cem níveis de prioridade pode base de dados e ajustar o servidor web. possam ser resolvidos com as respostas
ser uma quantidade exagerada, mas é Essa instalação completa é útil se você padrão. Modelos diferentes podem ser
possível confi gurar o comportamento quiser entender melhor como os compo- atribuídos a fi las diversas se você qui-
das prioridades para que se adequem à nentes funcionam, mas é bem incômoda ser dar uma resposta variada de acordo
sua empresa. se esse não for o caso. com a fi la. Também na página de cha-
Outro recurso muito útil é a capaci- Embora os privilégios, usuários e mados há o CustomerID, que é um link
dade de criar relacionamentos entre grupos não possam ter ajustes tão fi nos que leva você a todos os chamados
chamados técnicos. Pode ser apenas como nos demais gerenciadores de abertos de um cliente específico.
uma nota que diga “Ei, olhe aquele chamados, há algumas opções de con- O OTRS faz um bom trabalho ao
outro chamado ali”. Ou você pode fi guração para as fi las que não estão registrar as mudanças no histórico.
criar dependências reais. É possível até disponíveis em outros produtos. A Muitas das mudanças administrativas
mesmo criar relações pai-fi lho. opção de sub-fi las para organizar ainda (ou seja, a atribuição de um novo pro-
Esse mecanismo permite usar o RT melhor a atribuição de tarefas é uma prietário) permitem que uma nota seja
para criar um sistema de “ordens de ser- delas. Há também como defi nir o tempo acrescentada; a mudança é então aces-

http://supertuxbr.blogspot.com
viço”, no qual um problema é relatado e máximo de atendimento do chamado sível através do histórico. Por exemplo,

42 edição 06 www.linuxmagazine.com.br
Gerenciamento de chamados técnicos ANÁLISES

quando você re-atribui um chamado, assim como usar


pode adicionar uma nota sobre a razão o velho método da
para ele estar sendo re-atribuído. “tentativa e erro”.
O OTRS tem algumas coisas bem O ut ro a s p e c to
desagradáveis. Uma delas é que, embora muito útil do e-Sup-
haja alguns campos personalizáveis, port é a “base de
eles são em número de quatro – muito c o n h e c i m e n t o ”.
poucos, eu diria. Também não é per- Assim como com
mitido encerrar um chamado, a menos out ros produtos,
que você seja o proprietário. Em minha ela fica mais perto
experiência com outros produtos, todos das FAQ clássicas
os atendentes do suporte deveriam tam- que de uma base de
bém poder fechar um chamado. con hecimento, já
que é uma resposta
e-Support específica para uma
O e-Support [3] é um sistema comercial questão dada. Os
de chamados técnicos da Kayako Web u s u á r ios p o de m
Solutions. Achei que a instalação do estender a base de
Request Tracker houvesse sido incômoda, conhecimento adicio-
mas a instalação do e-Support foi um ver- nando comentários
dadeiro espinho no pé. Embora houvesse ou notas às entradas.
poucos passos a realizar – não precisei Por padrão, todos
baixar dezenas de módulos e grande os comentários são Figura 2: A página inicial do e-Support
parte da configuração foi feita através do moderados, mas isso
navegador web – foi preciso um monte de pode ser desabilitado, caso necessário. mas com nomes diferentes. O programa
clarividência para adivinhar onde enfiar A interface da base de conhecimento não reclamou de nada disso (o que dirá
as coisas e como iniciar a instalação. facilita a navegação, a criação de novas me avisar...). Ao gerar as estatísticas,
Para um produto que exige dinheiro categorias, a criação de perguntas e res- apenas o primeiro nome usado foi exi-
de verdade, a documentação de instala- postas e assim por diante. Além disso, bido, de forma que reunir as estatísticas
ção é bastante rala, o que tornou a ins- você pode relacionar código HTML à de uma só pessoa não é lá muito fácil.
talação muito mais difícil. A resposta resposta criando (por exemplo) links Um recurso interessante é o cha-
às perguntas que fi z à empresa foi basi- para respostas mais detalhadas. Você mado InstaSearch. Ele busca na base de
camente “Está na documentação” ou também pode ter links para “tópicos conhecimento por respostas possíveis a
“está no site”. Quando perguntei em que relacionados” (ou seja, outros artigos). um problema. Essas respostas podem
lugar do documento estava aquilo, não Há também um recurso de resolução ser enviadas junto com emails de res-
puderam me dar uma resposta, e nada de problemas. Assim como seu homô- posta automática, bem como quando
achei sobre o tema no website. nimo no Windows, a resolução de pro- o usuário abre um chamado. Infeliz-
Assim como nos outros produtos, há blemas guia você através de uma série mente, segundo minha própria expe-
usuários e grupos (que são chamados de questões para ajudar a delimitar o riência somada ao que pude descobrir
‘departamentos’) e os usuários só vêem problema. O processo leva tempo, mas nos fóruns do e-Support, pode ser que
chamados atribuídos aos grupos de que se você tiver uma porção de problemi- haja tantos itens que o botão “submit”
são membros. É possível mover chama- nhas fáceis de resolver, esse recurso (enviar) do chamado técnico acabe
dos de um departamento para outro e pode ser bastante útil. desaparecendo da tela. Como resultado,
esse movimento é registrado no histórico O produto tem também alguns recur- a pessoa pensa que o chamado já foi
do ticket, junto com o nome do usuário. sos de relatório. Você pode criar um aberto, quando na verdade nunca foi.
Porém, os detalhes não são automatica- relatório sobre a atividade de cada usu-
mente incluídos (por exemplo, “moveu- ário. Pode também gerar “estatísticas” perlDesk
se do grupo A para o grupo B”). para um dado “cliente”. O relatório de O sistema comercial perlDesk [4] é
Um voto de indulgência para o e-Sup- estatísticas lista os chamados abertos muito simples e fácil de usar. Isso tam-
port é a interface muito fácil de usar. com informações sobre cada um deles, bém quer dizer que ele não possui mui-
Isso se aplica não somente à interface como o assunto, a data de abertura e tos dos recursos oferecidos pelas outras
com o usuário (fi gura 2), como tam- assim por diante. ferramentas, inclusive as de código
bém à administração. Embora não seja A utilidade dos relatórios é bastante aberto. Porém, o perlDesk oferece uma
possível confi gurar tanto quanto em reduzida pelo fato de que o “cliente” é cara muito profi ssional. Enquanto cer-
alguns produtos não-comerciais, muito a primeira pessoa a abrir qualquer cha- tos produtos deixam óbvio que você
da configuração é mais auto-explicativa. mado para qualquer endereço de email está trabalhando com um navegador
Porém, assim como na instalação, tive determinado. Abri com sucesso inúme- web, o perlDesk dá a impressão de um

http://supertuxbr.blogspot.com
de exercer meus dons de adivinhação, ros chamados para um único endereço, aplicativo “real”.

www.linuxmagazine.com.br edição 06 43
ANÁLISES Gerenciamento de chamados técnicos

Assim como com o e-Support, a Embora isso ajude a separar as funções, Afora gerenciar chamados técnicos,
falta de documentação num produto pode ser um aborrecimento se você pre- esse produto não faz grande coisa. É
comercial é desapontadora. As instru- cisar fazer uma mudança no meio do possível criar grupos e usuários (cha-
ções de instalação do perlDesk eram processamento de um chamado. mados representantes) e limitar a cate-
ligeiramente melhores, mas não mais Também desapontou a (pouca) capa- goria de chamados que o usuário pode
que isso. Porém, o suporte oferecido cidade do perlDesk na busca por chama- acessar, assim como os aspectos do sis-
pelo desenvolvedor do perlDesk (a dos específicos. Você pode procurar por tema que podem ser configurados pelos
logicNow Limited) foi exemplar; eles todos os chamados abertos (não-resol- usuários (embora não haja muitos). Mas
definitivamente se esforçaram para vidos) ou fechados (resolvidos), assim aqui os recursos defi nham lentamente.
assegurar que as coisas funcionassem como exibir os chamados abertos por Os chamados técnicos são agrupados
(em chocante contraste com o outro prioridade, departamento e membro da em categorias, que em seguida são atri-
produto comercial). equipe. Porém, isso é praticamente tudo buídas a grupos específicos. Os mem-
Os usuários podem abrir chamados o que ele pode fazer. bros do grupo têm acesso, então, ao
via email ou pela interface web, que Um recurso do perlDesk que não chamado nas categorias. Os usuários
também fornece um mecanismo de estava imediatamente disponível em são limitados a um único grupo.
auto-registro chamado “Quick User Sig- muitos outros produtos é a capacidade Um aspecto realmente desagradável
nup,” semelhante ao OTRS. de mudar o desenho das páginas com do OSTicket é que, não importa por
Um recurso realmente útil é a capaci- um editor de templates. Isso é feito sim- onde comece, você é invariavelmente
dade de acrescentar um chamado dire- plesmente com um textarea num formu- levado de volta à página principal. Por
tamente à base de conhecimento (FAQ). lário HTML, mas você pode configurar exemplo, ao criar um novo usuário, o
Ao clicar no botão enviar, você é levado com facilidade praticamente todas as clique no botão Create não leva à página
para um novo formulário, onde pode páginas do sistema. do novo usuário, mas à página prin-
escolher a categoria da FAQ bem como cipal. Isso é especialmente irritante
editar o texto, o que não afeta o texto do OSTicket quando, por exemplo, você esqueceu de
chamado técnico original. O sistema de código aberto OSTicket completar um campo requerido. Claro
As FAQ funcionam basicamente do [5] foi sem dúvida o mais fácil de ins- que você pode simplesmente pressio-
mesmo modo que nos outros produtos, talar. Não precisei baixar quaisquer nar o botão Voltar do navegador, mas é
com um conjunto de respostas fi xas outros pacotes ou arquivos de outros altamente provável que prefi ra corrigir
para problemas conhecidos. Isso é sites. Não precisei fazer uma confi- o erro voltando à página.
apoiado pelo componente “resolução de guração detalhada em meu servidor Uma coisa que realmente me impres-
problemas”, que também funciona de web. O aplicativo estava funcionando sionou ao fazer as pesquisas para o
maneira igual à dos outros produtos. É em menos de cinco minutos. O único artigo foi o número de sites que ofere-
muito fácil adicionar novos itens à reso- ponto no processo de instalação a cem hospedagem web para sistemas
lução de problemas. que eu chamaria de, no mínimo, baseados no OSTicket. Isso demonstra a
Um belo recurso é a capacidade de incômodo foi o fato de que tive de facilidade com que o OSTicket pode ser
fazer um backup da base de dados de criar a base de dados à mão. Porém, instalado e administrado.
dentro do próprio produto. Se o servidor uma vez que isso também era reque- Ocasionalmente, irritei-me com o
estiver rodando numa máquina próxima rido para os produtos comerciais, número limitado de recursos oferecido
a você, pode não haver a necessidade de posso facilmente fazer vista grossa a pelo OSTicket. Porém, se tudo o que
usar esse recurso. Porém, ele é muito esse respeito. você quer é um modo simples e fácil de
útil se você estiver usando um provedor O produto é um sistema de chamados manter um registro de qualquer tipo de
de serviços de hospedagem e esse for o técnicos enxuto, mas efetivo, com pou- pedido, o OSTicket realmente merece
único modo de salvar seus dados. cos recursos. Descompactado, o pacote uma chance. ■
Outro recurso elegante é o Staff ocupa apenas 300 KB (!) no disco
Rating. Quando ele está habilitado, os rígido; por conseguinte, é óbvio que INFORMAÇÕES
usuários podem avaliar as respostas não se pode esperar o mesmo número
da equipe de suporte (numa escala de de recursos de um produto 10 vezes [1] Request Tracker:
1 a 5). O usuário também pode acres- maior. Porém, dependendo de suas http://www.bestpractical.com/rt/
centar comentários à avaliação. Para necessidades, esse pequeno tamanho [2] Open Ticket Request System:
mim, isso é mais útil para determinar pode ser uma vantagem. http://otrs.org/
a efetividade da equipe do que simples- Note que os 300 KB não incluem a
[3] e-Support:
mente olhar para o número de chama- documentação, já que quase nenhuma é
http://www.kayako.com/?_a=products
dos fechados por cada atendente. fornecida. Em vez disso, você é enviado
&_m=esupport.features#
Apenas por preferência pessoal, não ao fórum do OSTicket quando precisa
gostei do fato de a administração ser de ajuda. Os desenvolvedores dizem [4] perlDesk:
completamente separada da equipe. que isso será melhorado na próxima http://www.perldesk.com/index.html
Para administrar o sistema, você precisa versão. Mesmo assim, a interface não [5] OSTicket: http://www.osticket.com/

http://supertuxbr.blogspot.com
de um login completamente diferente. tem muitos meandros.

44 edição 06 www.linuxmagazine.com.br
Diagramação no Linux: Um Jornal com o Scribus TUTORIAL

Editoração mais profissional com o Scribus

Tipografia
e texto
Na segunda desta série em três capítulos [1], Jason

Walsh trata de alguns detalhes da confecção de um

jornal no Scribus. Veremos também como admi-

www.photocase.de
nistrar aqueles arquivos gráficos chatinhos com

esquema de cores CMYK. POR JASON WALSH

N o último mês, mostrei como eletrônica profi ssional. Através desse Finalizando a Imagem
criar um projeto de editoraçãoprocesso, imagens coloridas podem Após importar a foto, posicione-a exata-
ser quebradas em seus tons compos- mente no local desejado e altere o tama-
eletrônica no Scribus e ensinei
os primeiros passos para esboçar nosso tos de ciano, magenta, amarelo e preto. nho dela caso necessário.
jornalzinho de exemplo com a importa- Embora a gama de cores que pode ser Cada publicação tem seu próprio
ção e inserção do nome do jornal no altoobtida na impressão em CMYK seja estilo, o que é normalmente refle-
da primeira página. Também demos menor que a gama de vermelho, verde tido nos guias de estilo. O East Belfast
uma ol hada na forma de colocar o texto e azul de um monitor, mais tons podem Observer exige uma linha preta, com
numa caixa de texto. Este mês, vere- ser reproduzidos com sucesso. dois pontos de largura, em torno de cada
mos mais detalhadamente como inse- O principal editor de bitmap para imagem. Isso não apenas cria um visual
Linux é o Gimp, que é efetivamente um
rir, ajustar, encaixar e destacar o texto. classudo como também serve para fi ns
Mas, em primeiro lugar, vamos falar da clone do Adobe Photoshop 3. Porém, técnicos. Muitas impressoras de jornal
tarefa de colocar a fotografia principal diferente do Photoshop, até ha bem “saem do registro” – isso significa que
na primeira página. pouco tempo o Gimp não dava suporte as pranchas de quatro cores usadas na
a espaços de cor CMYK. Felizmente o impressão se desalinham e a imagem
Importando uma imagem Gimp 2.0 já pode trabalhar em CMYK acaba saindo borrada, quase sempre
A imagem principal é uma foto ou outra com o plugin gimp-cmyk (veja o quadro fugindo dos seus limites. Uma linha de
imagem gráfica que acompanha um “Instalação do plugin gimp-cmyk”). Ele dois pontos tem duas vezes a largura de
artigo e é colocada próximo ao alto da permite ao usuário converter uma ima- uma linha comum – seria muito inco-
página. O arquivo de imagem é criado gem RGB para camadas CMYK indivi- mum que uma das pranchas de cor se
separadamente e em seguida importado duais (usando Perfis de Cor de origem e desalinhasse em mais de dois pontos.
para o Scribus. Começa- destino especificados) e Portanto, mesmo se a impressora sair do
remos colocando uma em seguida salvar essa registro, a linha preta ajudará a deixar a
imagem principal na pri- coleção de camadas página um pouco mais limpa.
meira página de nosso como um TIFF CMYK. Como todas as fotografias neste nosso
jornal de Linux. Para importar uma projeto apresentarão essa linha, é uma
A primeira compli- imagem para o Scribus, boa idéia criar um estilo que possa ser
cação com que depara- selecione primeiro New aplicado a qualquer imagem sem ter de
mos ao importar uma Image Frame na barra recriá-la manualmente todas as vezes.
imagem gráfica para o de ferramentas, depois Para criar um estilo, selecione
Scribus é a falta geral clique e arraste a mol- Edit>Line Styles. Na caixa de diálogo
de suporte para espaços dura retangular até que que aparece, selecione New. Surge uma
de cor CMYK no Linux. esteja mais ou menos nova janela, na qual definiremos o
Como você aprendeu do tamanho desejado. estilo de nossa linha (figura 1).
mês passado, a compo- Em seguida importe a No alto da janela, digite um título
sição em CMYK é fun- Figura 1: Editando o estilo imagem escolhendo File para o estilo, como linha2pt. Na janela

http://supertuxbr.blogspot.com
damental na editoração das linhas. > Import > Get Picture. há também opções para ajustar as

www.linuxmagazine.com.br edição 06 45
TUTORIAL Diagramação no Linux: Um Jornal com o Scribus

Resolução extremidades das linhas e como elas se Limpeza da Página


Imagens de tela, como vemos na Internet, unem. Para nosso projeto, deixe essas O mesmo processo é repetido para a
estão tradicionalmente em resolução de 72 confi gurações no padrão: Flat Cap e pequena coluna da direita: desenhe
pontos por polegada – isso significa que cada Miter Join. uma moldura, importe uma ilustração,
polegada da imagem é composta por 72 pon-
tos. Se você tentar imprimir imagens da web, A seguir, ajuste a largura da linha ajuste o tamanho e aplique o estilo.
elas ficarão granulosas e falhadas, já que essa para 2 pt e a cor para preto. Finalmente, Uma pequena legenda relativa
resolução é demasiado baixa para impressão. clique OK e o estilo estará defi nido. à fotografia virá sob essa imagem.
Ao imprimir em casa, a maioria das pessoas cria Para aplicá-lo, clique com o botão Vamos ignorar essa legenda neste
imagens com resolução de 300 dpi. Essa é uma
direito na imagem e chame a janela de momento, mas não deixemos de reser-
resolução bastante segura, alta o suficiente para
ser usada na maioria dos casos – na verdade, é propriedades com a opção Show Proper- var um espaço para ela. Abaixo da
desnecessariamente alta para um jornal. ties. Escolha Line (Linha) e selecione o legenda vai o código de barras ISSN e
Para perceber qual resolução usar para nossas estilo recém-criado da lista na parte de uma propaganda.
imagens, é importante compreender o que baixo da janela. Os anúncios são imagens criadas num
está acontecendo com elas. Imagens impres-
sas consistem de pontos em meios-tons (se Esse processo de defi nir um estilo programa de editoração e exportadas
você escanear uma página de jornal ou revista, e aplicá-lo a uma imagem ou caixa de como arquivos EPS (“Encapsulated Post-
verá esse padrão de meios-tons - ver figura 5). texto é a chave para a editoração pro- Script” – PostScript encapsulado). São
fi ssional, uma vez que permite que o importados da mesma maneira que as
usuário crie layouts consistentes rapida- fotos: desenhe uma moldura e selecione
mente e com a segurança de que serão Import>Get Picture. Diferente das foto-
uniformes em todo o documento. grafias editoriais, os anúncios não têm
uma linha de dois
pontos em torno
deles. Em vez disso,
trazem uma mol-
dura de um ponto,
que já é parte inte-
grante da imagem
mesmo antes de ela
ser importada.
Figura 5: Uma imagem publicitária do come- O código de bar-
diante Bill Bailey escaneada de um jornal
irlandês. Note os pontos de meio-tom visí- ras é exatamente
veis, formando um padrão na imagem. a mesma coisa:
outro arquivo EPS,
Meios-tons não são medidos em pontos embora dessa vez
por polegada (dpi – dots per inch), mas em seja criado em um
linhas por polegada (lpi – lines per inch). Esse
processo é chamado screening. Quanto mais programa especiali-
alto o valor de lpi, mais pontos de meio-tom zado. Nenhuma mol-
são colocados por polegada; o resultado Figura 2: A primeira página até agora, sem o texto. dura é necessária.
final é uma imagem de resolução maior.
Jornais são impressos com 65-85 lpi, revistas
com 100-150 lpi e livros entre 150-300 lpi. Instalação do plugin gimp-cmyk
Cada ponto de meio-tom é composto de Antes de instalar o plugin, verifique se o seu Gimp já não o possui. Muitas distribuições do Linux
pequenos pontinhos medidos em dpi. O dpi
incluem o gimp-cmyk como parte de sua instalação padrão do Gimp. Por exemplo, esta série foi
efetivo é o número máximo desses pontos que
a impressora pode imprimir em uma polegada. produzida usando o SuSE Linux 9.1, que traz o “gimp-cmyk” instalado como padrão. O mesmo se
pode dizer do Debian Sarge, que possui o Gimp 2.2 já com o plugin para CMYK.
A razão de dpi para lpi fica normalmente entre
150 e 200%; por conseguinte, se sua tela meio- Uma versão binária do plugin gimp-cmyk está disponível, compilada para SuSE Linux 8.0, no site
tom tem 85 lpi, suas imagens precisam estar de desenvolvimento: http://www.blackfiveservices.co.uk/separate.shtml
numa resolução mínima entre 127,5 e 170 dpi.
Se você usar uma distribuição Linux diferente, ou quiser compilar no SuSE sua própria versão do plu-
A resolução relativamente baixa da tela de
gin, precisará ter instaladas as bibliotecas Gtk, Gimp, LibTIFF e LCMS. Se já as tiver instaladas, basta:
meio-tom, ou seja, 85 lpi, é adequada para jor-
nais porque a tinta vai se esparramar pelo papel
de baixa qualidade usado em sua impressão.
make clean
Claro que não dói deixar uma resolução leve-
make
mente maior do que o necessário, de forma
que todas as nossas imagens estejam em segu-
rança com 200 dpi. Embora essa resolução seja Se o gimp-cmyk estiver instalado em seu sistema, será possível converter uma imagem RGB
alta o bastante para um jornal e permita que para o formato CMYK clicando com o botão direito na foto e selecionando “Imagem” no menu.
as imagens sejam ligeiramente ampliadas, se
as imagens em 200 dpi forem impressas numa Um plugin do Gimp para CMYK é útil para nossos fins, mas CMYK numa rotina de trabalho não-colorida
revista com um papel de maior qualidade o não seria o ideal. Num futuro não tão distante, os desenvolvedores do Gimp planejam passar a uma
resultado não será muito satisfatório. biblioteca gráfica mais genérica chamada GEGL. Essa manobra permitiria o suporte nativo a CMYK.

http://supertuxbr.blogspot.com
46 edição 06 www.linuxmagazine.com.br
Diagramação no Linux: Um Jornal com o Scribus TUTORIAL

Rumo ao Texto Sans. No caso das notícias


Agora que nossa imagem principal está em si, é melhor importá-
em seu lugar, vamos voltar a atenção las de arquivos de texto;
para o texto. O primeiro passo é sele- quanto aos cabeçalhos,
cionar um estilo de tipos. Muitas fontes basta desenhar uma caixa
foram projetadas especificamente para de texto, digitar o neces-
jornais. Para editoração profissional de sário e ajustar o estilo.
jornais, vale a pena fazer um pouco de Assim como com os
pesquisa sobre tipos. outros elementos no pro-
No caso do East Belfast Observer, o jeto da página, vamos
texto do corpo (ou seja, o texto das notí- criar um estilo para o
cias) é feito numa fonte chamada News texto principal – o das
701. A News é uma fonte serifada, legí- notícias – e aplicá-lo a elas. Figure 3: A caixa de diálogo usada para configurar o estilo do texto.
vel até mesmo em tamanhos pequenos Escolha Edit>Paragraph
– perfeita para jornais. Como não tenho Styles e clique New na janela Edit Style. se a fonte tem 10 pt, use 11 pt, com
uma licença para usar essa fonte neste Chame esse novo estilo de Body Text uma confi guração de fonte de 8 pt use
projeto, usarei outra fonte serifada, a News (figura 3). um espaçamento de 8,8 pt e assim por
Bauer Bodoni. Qualquer fonte serifada As opções que estamos usando são as diante. Isso é muito menos que a con-
bem projetada, como a Times, seria ade- seguintes: A fonte é Bauer Bodoni Regu- fi guração padrão e dará ao texto uma
quada para o texto principal, mas fontes lar com o tamanho de 10 pt. O tama- cara densa e séria.
como a News têm vantagens espaciais nho que você dá a seu tipo depende da Grande parte do resto das confi gura-
por serem desenvolvidas especifica- medida individual da fonte. Por exem- ções é questão de opinião. Neste caso,
mente para uso num jornal. plo, uma fonte relativamente grande tomamos a decisão de “justificar” o
Na verdade, o segredo para um bom uso como a News 701 seria ajustada para 8 texto das notícias (o texto forma uma
de fontes é simples: escolha tão poucas fon- pt, enquanto com a Times o tamanho linha reta nos dois lados da coluna).
tes quanto possível e atenha-se a elas. Isso pode chegar a 12 pt. Repetimos, isso contribui para o ar de
oferecerá ao leitor clareza e consistência. O espaçamento entre linhas (Line seriedade do texto. Evite centralizar,
Em nosso caso, todos os cabeçalhos spacing/leading) é configurado para alinhar à direita e posições forçadas a
são variações em negrito da fonte Gill 110% do tamanho da fonte – ou seja, qualquer custo: essas configurações

http://supertuxbr.blogspot.com
www.linuxmagazine.com.br edição 06 47
TUTORIAL Diagramação no Linux: Um Jornal com o Scribus

não ajudam em nada no texto principal. Vamos remendar nossa notícia da pri- Retoques Finais
O resto das confi gurações pode ser meira página. Desenhe uma caixa de Tudo o que falta agora é fi nalizar a página.
mantido nos valores padrão. Clique texto sob o cabeçalho com exatamente Na fi gura 4, você pode ver os elementos
OK para voltar à janela Edit Style (Edi- a mesma largura, mas alta o bastante restantes que precisam ser adicionados.
tar Estilos). Marque Body Text News e para chegar quase embaixo – digamos, Em primeiro lugar, acrescente o cabe-
selecione Duplicate. Mude o nome para cerca de 1,5 cm acima da margem. çalho da notícia secundária no lado
Body Text Comment e o alinhamento Embaixo, desenhe outra moldura simi- direito da página. A fonte do cabeçalho
para Align Text Left. Clique OK. Assim lar que encoste na margem inferior. Essa é Gill Sans Bold; ajuste o tamanho.
como notícias factuais se beneficiam moldura conterá informação sobre o que A seguir, abaixo da notícia principal,
do texto justificado que as faz parecer mais há no jornal e determinará até onde acrescente, ainda em Gill Sans Bold, os
mais densas, artigos de comentário, nossa notícia principal pode chegar. detalhes do conteúdo do resto do jor-
opinião e entretenimento ganham com Importe o texto normalmente (Sele- nal. Lembre-se que uma moldura já foi
o alinhamento à esquerda, pois a mar- cione a moldura de texto e vá em criada para isso.
gem direita desigual os faz parecer mais File>Import>Get Text). A seguir, apli- Depois, abaixo do nome mas acima
leves. Feche a janela Edit Style. que o estilo do Texto Principal em da imagem principal está um destaque
Tools>Properties. Na caixa de diálogo da seção de variedades. Esse destaque
Importando e Properties, selecione text e escolha o consiste de uma caixa de imagem e uma
ajustando o texto estilo apropriado (Body Text News). A caixa de texto.
Olhe um jornal com atenção; você vai notar seguir, vá em Shape e selecione 3 colu- A última tarefa é fi nalizar os três des-
que, diferente de muitas revistas, as notícias nas. Lembre-se de deixar um espaço taques principais no alto da página.
cabem direitinho no lugar destinado a elas, entre as colunas, digamos, de 2 mm.
sem espaço em branco sob a última linha. Isso é feito editando-se o valor das Destaques
Isso ajuda a dar um ar sóbrio e profissional Columns na seção Shape (Forma) da No mês passado escrevemos “The new
às páginas de notícias e, obviamente, que- caixa Properties. newspaper for East Belfast” no alto da
remos reproduzir isso em nosso teste. Ajus- Feche a caixa Properties. Qualquer caixa à extrema esquerda. Vamos repetir
tar sutilmente o kerning e o tracking ajuda arquivo de texto razoavelmente grande isso agora e iniciar o processo de adicio-
um pouco, mas o único modo de fazer isso serve – neste caso, estamos usando nar texto e imagem às duas outras caixas.
direito é editar ou “remendar” o texto e uma cópia das primeiras centenas de Trace uma caixa de texto sobre o
fazê-lo caber. Essa é uma das principais palavras deste artigo, já que não temos retângulo da extrema esquerda e digite
razões por que as páginas são projetadas acesso à notícia verdadeira. as palavras: “O novo jornal do East
por sub-editores e não pelos diagramado- Agora a melhor parte (ou a pior – depen- Belfast”. Em seguida, ajuste a fonte, o
res: a compreensão das regras da língua e dendo de sua opinião). Edite manualmente tamanho e o espaçamento. Decidimos
a forma como fazer um texto fluir exige a o texto para que se encaixe no espaço por valores de texto de 42 pt, na fonte
travessia de um longo caminho. dado, como se você fosse um editor. Gill Sans Italic, com um espaçamento

Definições de Tipo
O que esses termos significam?
Serifa e Sem Serifa
Embora haja muitas subcategorias, a divisão básica das fontes é entre
serifadas e não-serifadas. Serifas são os “tracinhos” nas extremidades
das letras, que na verdade representam as marcas de cinzel dos anti-
gos artesãos romanos.
Fontes serifadas são consideradas mais elegantes, suaves, sérias e legí-
veis, sendo por isso comumente usadas para grandes blocos de texto
– confira num romance ou num jornal.
Figura 6: Fontes serifadas e não serifadas.
Uma fonte sem serifa (ou, menos comumente, Grotesca) não apre-
senta esses detalhes. Sua aparência modernista dinâmica as torna
adequadas para textos de tamanho maior, como títulos, textos em Kerning e Tracking (Entreletras)
pôsteres e livros de arte inexoravelmente “moderninhos”. Quando uma fonte é projetada, o projetista atribui a cada caractere
Entrelinhas e Espaçamento uma largura, permitindo que caracteres consecutivos sejam colocados
numa linha sem se tocar. Porém, as intenções do projetista das fon-
O espaçamento entre linhas, como é conhecido no Scribus, é chamado,
tes podem não ser iguais às suas. O Kerning permite que você ajuste
em inglês, de leading – “lead” significa “chumbo” e traz referência às
manualmente o espaço entre dois caracteres quaisquer. O Tracking
tiras de chumbo usadas para criar espaço entre as linhas no tempo da
(Entreletras) permite que o usuário aplique uma forma de espaça-
tipografia mecânica. Em português, o nome é “Entrelinhas”.
mento universal entre todos os caracteres. Dessa forma, é uma opção
As entrelinhas permitem ao diagramador alterar a densidade dos blo- importante e, logo que você encontre uma configuração que julgue
cos de texto. Jornais são bastante densos e usam um valor de espaça- adequada, eu o aconselho a deixá-la em paz e ajustar o kerning manu-
mento menor do que o usado em revistas, panfletos ou pôsteres. almente para mudanças menores.

http://supertuxbr.blogspot.com
48 edição 06 www.linuxmagazine.com.br
Diagramação no Linux: Um Jornal com o Scribus TUTORIAL

de 36pt. Posicione a caixa de texto de Pare, repita, repita novamente. Tipografia avançada
forma que fique dentro da caixa azul. Agora que já quase acabamos de criar a
A tipografia é uma arte, algo que os candidatos
A seguir, desenhe duas caixas de ima- primeira página, o processo deve ser repe- a doutor passaram seus mestrados esforçando-
gem, uma sobre cada uma das caixas tido para as outras páginas. A contracapa se para compreender. Nossa simples introdu-
restantes. Dentro delas, importaremos fica ao lado da primeira página e, na tra- ção não pode ir muito além de uma visão geral
fotografias, mas antes precisamos recor- dição dos jornais anglófonos, é a página da tipografia; assim, se você quiser aprender
tar as imagens (com o recurso path). de esportes. As outras duas páginas mos- mais sobre tipos mas nem sonha ingressar
Isso significa traçar uma linha em torno tradas são a capa da seção de variedades numa faculdade de artes, alguns bons livros
do aspecto da imagem que se quer usar, e uma página de notícias. Se você vem serão uma mão na roda:
permitindo que o Scribus descarte o seguindo este tutorial, será capaz de criar Stop Stealing Sheep and Find Out How
resto da imagem. páginas similares com bastante facilidade. Type Works. Por Erik Spiekermann.
Abra as fi guras em seu editor de O guia clássico da Adobe Press para enten-
imagens. Seja ele PixelFX!, PhotoPaint No próximo mês der a tipografia. Esse livro disseca o assunto
ou GIMP no Linux, ou Photoshop no No capítulo fi nal da série, daremos os do início ao fim, oferecendo uma rica base
Mac/Windows, o processo é similar. retoques fi nais na página, explicaremos para o uso de fontes e tipografia.
Explicaremos como fazer isso no pró- como usar modelos para criar um docu- The Mac Is Not a Typewriter.
ximo artigo . mentos de muitas páginas e daremos Por Robin Williams.
Em nosso caso usaremos uma foto uma olhada mais de perto na forma Obviamente destinado a usuários do Macin-
publicitária da atriz francesa Audrey de levar as páginas ao prelo. Também tosh, esse livro é ainda uma prática referên-
Tatou e uma imagem PR em alta resolu- pediremos que um profi ssional de pré- cia para os interessados em editoração de
ção de um iPod, baixada do site da Apple. impressão avalie o jornal pronto. ■ páginas em qualquer plataforma. Tópicos
tratados: aspas inglesas versus aspas
genéricas, travessões en ou em, tabulações
e recuos, kerning, entrelinhas, espaço em
branco, viúvas, órfãs e pontuação sobrando.
Designer’s Handbook.
Por Alastair Campbell.
Este simples manual já é meio antigo, mas
ajuda a compreender todo o jargão que os
impressores cospem em você, desde PANTONE
até sangramento, trapping e muito mais.

INFORMAÇÕES
[1] Para a primeira parte da série “Layout no
Linux” consultar: Jason Walsh: “Um Jornal
Via Linux”, Linux Magazine Brasil, edição
5, pág. 32.
[2] Scribus: http://www.scribus.org.uk/
[3] News Page Designer:
http://www.newspagedesigner.com/
[4] Society for News Design:
http://www.snd.org/
[5] News Today: http://newstoday.com/

Jason Walsh foi diretor


de arte do East Belfast
Observer desde o lan-
SOBRE O AUTOR

çamento, em janeiro
de 2004, até julho de
2004. Antes disso, era
diretor de arte das
elegantes revistas britânicas Gorgeous
e CityCraic. Atualmente trabalha como
jornalista e contribuiu para a Linux
Magazine, a Variant, a Mute, o jornal
The Guardian e muitas outras publica-
ções sobre arte, design e tecnologia.

http://supertuxbr.blogspot.com
Figura 4: Primeira página pronta.

www.linuxmagazine.com.br edição 06 49
TUTORIAL Linux em um Memory Stick USB

Quem disse que o chaveiro é só para as chaves do carro?

Linux é a chave!
Todo mundo já está careca de saber que dá pra ini-

ciar o Linux em um computador a partir de um Live CD.

Mas quantos de vocês já pensaram em “enfiar” o pin-

güim em um chaveiro USB? POR FABRIZIO CIACCHI

U m “Live CD” como o Knoppix


[1] ou o Kanotix [2] oferece
ao usuário um sistema ope-
racional extremamente portátil. Você
pode carregar seu sistema pessoal para
Primeiro passo: obtendo um
Linux “magro”
Os chaveiros USB são vendidos com
diversas capacidades de armazena-
Chuchu”) é baseada no Knoppix – e,
por conseguinte, no Debian [4] – mas
o autor reduziu o tamanho para meros
50 MBytes pela eliminação de parte
da documentação e fazendo uma
onde bem entender e iniciá-lo em qual- mento. Alguns chegam a comportar faxina radical em praticamente todos
quer computador que queira. Suas fer- até 1 GB de dados, o que impõe poucas os diretórios. O Damn Small Linux
ramentas, seus arquivos e sua área de limitações para o tamanho do sistema pode inclusive carregar uma interface
trabalho o seguirão para onde você for a ser instalado. Entretanto, dispositi- gráfica gráfica das mais leves, como
– mesmo que o PC do seu pai ou de sua vos menores são mais baratos e bem por exemplo o Fluxbox.
namorada possua outro sistema opera- mais comuns. Parte de nosso objetivo • RUNT [5]: O RUNT (ResNet USB
cional. Os Live CDs também são usados é criar um sistema de baixo custo, por- Network Tester) é uma distribuição
por administradores de sistema para tanto nossa discussão será baseada no baseada no Slackware [6] que tra-
consertar aquele computador que teima modelo mais comum de 128 MB – quase balha em um chaveiro USB de pelo
em não iniciar normalmente. um padrão. As instruções são válidas menos 128 MBytes de memória. A
O que poderia ser, então, mais portátil para qualquer tipo de Memory Stick, o distribuição pode ser iniciada no com-
que um Live CD? Hmmm... Que tal um que quer dizer que é possível colocar putador por um disquete de boot dis-
chaveiro de memória USB (os chamados um Knoppix inteirinho em um chaveiro ponível no site – é o mesmo disquete
Memory Sticks) com uma distribuição de tamanho suficiente. do ZipSlack [7], diga-se de passagem.
Linux? Um dispositivo desses é muito Outro objetivo é ter espaço para traba- O RUNT é usado como canivete suíço
mais portátil, na maioria das vezes lhar e guardar documentos no sistema, para manutenção e teste de redes e
mais durável e certamente mais bacana portanto é uma boa idéia usar apenas contém um número considerável de
que um CD. Além disso, trabalhar com metade do espaço disponível (64 MB) ferramentas para a tarefa.
memória USB é muito mais fácil do que para o sistema operacional e programas • Feather Linux [8]: O Feather Linux
com um CD: os dados são gravados e afi ns. Obviamente, será muito difícil (algo como “Linux Peso-Pena”) é
lidos mais rapidamente – instantane- incluir ferramentas úteis mas enormes baseado no Damn Small Linux (DSL)
amente é a palavra – e podemos dis- – como o OpenOffice e o Gimp – por- [3] e também cabe em um chaveiro
pensar o irritante e incômodo trabalho tanto vamos usar de bom senso. de 128 MBytes. Não é muito diferente
necessário de gerar uma imagem de CD Estamos com sorte. Muitos na comu- do DSL mas inclui cerca de 14 MBytes
e depois “queimá-la” na mídia virgem. nidade Linux já estão trabalhando no a mais de software, além de já ter
Com alguns truques e um pouquinho problema de como acomodar o Linux sido testado e “afi nado” para uso em
de suor, podemos confi gurar uma dis- em um espaço ínfi mo. A idéia de colo- dispositivos USB.
tribuição Linux para ser iniciada em car o Linux em um dispositivo de arma- • Flonix [9]: O Flonix também é base-
um dispositivo USB. Tudo o que preci- zenamento USB de recursos modestos ado no DSL mas usa um conjunto
samos é do chaveiro em questão e uma é relativamente nova, portanto não há diferente de programas – por exem-
distribuição pequena o bastante para muitas opções disponíveis. As opções a plo, IceWM em vez de Fluxbox. O
caber no espaço disponível e completa seguir, entretanto, são fortes candidatas projeto Flonix também introduziu um
o bastante para reconhecer dispositivos a ganhar um lar em nosso chaveiro: sistema de instalação via web muito
de armazenamento USB. Obviamente, poderoso. O sucesso foi tão grande
isso só funciona se a BIOS do computa- • Damn Small Linux [3]: A distribui- que virou um produto comercial e
dor permitir o boot via USB, o que não é ção Damn Small Linux (DSL – numa não está mais disponível para down-

http://supertuxbr.blogspot.com
incomum em hardware moderno. tradução livre, “Linux Pequeno pra load gratuito. Entretanto, se você pro-

50 edição 06 www.linuxmagazine.com.br
Linux em um Memory Stick USB TUTORIAL

curar direitinho em todos os cantos com X ou mesmo apenas o X com um # cp -a usb_pen/* usb_backup
da Internet vai encontrar, dentro de gerenciador de janelas próprio, bem # umount usb_pen
algum baú poeirento, alguma versão espartano. Além de conter programas
antiga (e ainda gratuita) para usar. como o Firefox, Java e o reprodutor Seu dispositivo no /dev pode ser dife-
• Puppy Linux [10]: O Puppy Linux de mídia Mplayer, o SPB-Linux é um rente. Se não funcionar com sda1, tente
(hmmm... o “Linux do Cachorrinho”) projeto muito bem documentado. outro. Lembre-se de que pode ser pre-
é um projeto bem recente, mas que ciso carregar o módulo usb-storage
já possui recursos de fazer inveja a Para este exemplo, vou instalar o (modprobe usb-storage) e montar o sis-
seus primos mais velhos. Em pri- Damn Small Linux (DSL) [3], o mais tema de arquivos usbfs (mount -t usb-
meiro lugar, carrega-se inteiramente flexível. Tanto o Flonix quanto o Fea- devfs none /proc/bus/usb) para que o
na memória RAM do computador e ther Linux são baseados nele e têm dispositivo USB seja reconhecido. Para
roda a partir de lá. Isso o torna muito tamanho suficiente para caber em mais informações (ou se nada funcionar
rápido, mas exige pelo menos 128 MB memory Sticks até menores que 128 como esperado) consulte as referências
para funcionar. Além da RAM, seu MBytes, como os outrora comuns [12], [13], [14] e [15].
cãozinho querido pode ser iniciado a modelos de 64 MBytes. Agora que temos nossos dados a salvo,
partir de diversos tipos de dispositi- precisamos formatar nosso Memory
vos (disco rígido, CD, USB) e contém Pingüim em lata de sardinha Stick para reduzir as chances de encon-
programas bastante “magros” e rápi- O primeiro passo, e o mais óbvio, é trar um problema durante o boot. Para
dos. A distribuição completa cabe fazer um backup de todos os dados tanto, use o comando fdisk como root
em menos de 50 MBytes. O ambiente que porventura estejam guardados no – o chaveiro deve estar conectado mas
gráfico escolhido é o FVWM-95, com chaveiro. Em uma distribuição Linux não montado.
a “cara” do Windows. já instalada, insira-o numa porta USB,
• SPB-Linux [11]: O SPB-Linux é abra um terminal e digite: # fdisk /dev/sda
uma distribuição modular bastante
pequena e muito poderosa. As ver- $ su Quando o fdisk entrar, pressione p
sões mais antigas não usavam X; em Password: (digite a senha U para ver a lista de todas as partições
vez disso escreviam direto no Fra- do root e pressione ENTER) presentes em seu chaveiro (normal-
meBuffer (usando o directFB) com # mkdir usb_pen mente apenas uma). Pressione d para
o ambiente gráfico Sawfi sh. Hoje, é # mkdir usb_backup excluir a primeira partição. Se houver
possível usá-lo sem X, usar o XFCE 4 # mount -t vfat /dev/sda1 usb_pen mais partições, faça backup dos dados

CD-ROM da Linux Magazine


������������
������

Não saia de casa sem ele!


����������������������

■ Todo mês um CD-ROM diferente


���������

�����

�����������������������������������
������������������������������������ ������������
�����

����������������������������������� ������
����

���������������������������������
����������������������������������
���

■ Repleto de programas interessantes


�������������������������������������
���

�����������������������������������
���

������������������������������������
���

�����������������������������������
��
���

��������������������������������������
���

������������������������������������
���

���
���

����������������������������� ���
���������������������� ���
���
��� ���
���� ���
��� ���
��� ����
���� ����
���� �����

■ Coletâneas especiais para facilitar a sua vida


������ � ��
�������� �����
����������������������������

Central de Assinaturas:
Linux New Media do Brasil ■ Distribuições Linux prontas para instalar
Av. Luís Carlos Berrini, 1500
Cj. 103 – Brooklin Novo
LM06_bolachaCD.indd 1 28.01.05 12:08:16

São Paulo – SP – Brasil


E no fim do ano, todos os artigos da revista em um único
Tel.: 0xx11 3345 1002
CD-ROM, com máquina de busca para você achar rapidinho
Fax: 0xx11 3345 1081
http://supertuxbr.blogspot.com
assinaturas@linuxnewmedia.com.br tudo o que precisa!

www.linuxmagazine.com.br edição 06 51
TUTORIAL Linux em um Memory Stick USB

e apague-as todas. Quando o chaveiro Nesse ponto, o conteúdo da imagem # mkdir usb_pen
estiver “limpo”, crie uma nova parti- ISO foi copiado em um novo diretório # mount -t vfat /dev/sda1 U
ção primária pressionando n, depois p, no qual podemos trabalhar. Se tentás- usb_pen
depois 1. Torne-a uma partição de boot semos copiar esses dados diretamente # cp -a dsl_usb/* usb_pen
selecionando a opção a. Especifique o para o chaveiro USB não seria possí- # umount usb_pen
tipo de partição (t > 6 cria uma parti- vel iniciar o computador com ele, pois # syslinux /dev/sda
ção FAT16, que reconhece volumes de é preciso, antes, ajustar a posição e os
até 4 GB) e por último pressione w para nomes de alguns arquivos. Com o con- Reinicie o computador com o cha-
gravar os dados na tabela de partição e sole aberto, emita os comandos: veiro ainda conectado e veja se tudo
sair do fdisk. deu certo. Não esqueça de verificar se a
O próximo passo é baixar a imagem # cd dsl_usb/ BIOS do computador permite o boot por
iso do Damn Small Linux, que tem apro- # mv boot/isolinux/* ./ dispositivos USB. Alguns dispositivos
ximadamente 50 MB. Quando terminar, # rm -Rf boot USB possuem registros-mestre de ini-
abra um console, logue-se como root e # mv isolinux.bin syslinux.bin cialização (Master Boot Record – MBR)
vá até o diretório com o arquivo “dsl- # mv isolinux.cfg syslinux.cfg defeituosos que podem apresentar pro-
0.9.2.iso”. Execute os comandos: # cd .. blemas para inicializar pelo Linux. Para
saber mais veja o quadro “Problemas
# mkdir dsl_temp A última parte do processo é bem mais comuns”. ■
# mkdir dsl_usb simples: precisamos montar o chaveiro
# mount -o loop dsl-0.8.3.iso U USB, copiar todos os dados dentro dele INFORMAÇÕES
dsl_temp e, depois de desmontar o disco, torná-lo [1] Knoppix: http://www.knoppix.net
# cp -a dsl_temp/* dsl_usb iniciável com o programa syslinux. [2] Kanotix: http://kanotix.com
[3] Damn Small Linux:
Problemas mais comuns http://www.damnsmalllinux.org
Alguns problemas são comuns, e você pode se considerar um sortudo se não tropeçar em algum
[4] Debian: http://www.debian.org
deles. Por exemplo:
[5] RUNT: http://www.ncsu.edu/project/runt
• sua BIOS não reconhece (ou não está configurada para iniciar) um sistema operacional pela
interface USB [6] Slackware: http://www.slackware.com

• seu dispositivo USB possui um sistema de boot não convencional. Assim, mesmo que tudo [7] ZipSlack:
esteja nos conformes, o sistema não iniciará. http://www.slackware.com/zipslack

Em primeiro lugar, verifique se a BIOS possui opções de USB e se as opções de teclado (USB-key- [8] Feather Linux: http://featherlinux.berlios.de
board) e dispositivos legados (USB-legacy) estão ativadas. A opção Boot from Zip USB (boot por [9] Flonix: http://www.flonix.com
disco Zip na porta USB) é, normalmente, um bom “chute”. Depois selecione o dispositivo USB
[10] Puppy Linux:
como primeiro na ordem de boot. Insira então o chaveiro na porta USB e verifique se, ao ligar a
http://www.goosee.com/puppy
máquina, algum menu permite a inicialização por USB. Para entrar na configuração da BIOS – o
chamado “setup” – pressione del, F1 ou F10 assim que solicitado, logo que ligar a máquina. [11] SPB-Linux: http://spblinux.sourceforge.net

Em alguns computadores não existe possibilidade de configurar o boot por USB, já que o [12] Tutorial de Ricardo Igarashi:
suporte a isso só foi introduzido muito recentemente. Para contornar esse problema, é possível http://br-linux.org/noticias/000156.html
usar um disquete de boot que carregue os módulos USB e passe o controle para a distribuição [13] Tutorial de Indigo Meridian: http://indi-
contida no chaveiro. É claro que carregar um disquete por aí para o boot não é tão sexy quanto boi.com/history/2003/11/18/2887223
iniciar diretamente do Memory Stick, mas é uma maneira de usar um Linux portátil sem ter que
[14] Linux USB Devices:
levar consigo um desajeitado e enorme CD, que além disso nem deixa você guardar seus docu-
http://www.qbik.ch/usb/devices/
mentos. Há uma imagem de disquete no site do DSL [16] já preparada para carregar os módulos
apropriados. Depois de baixar o arquivo, crie o disquete de boot com o comando: [15] Linux USB: http://www.linux-usb.org/
[16] Imagem do disquete de boot USB do DSL:
http://ftp.belnet.be/packages/damns-
# dd if=bootusb-0.8.img of=/dev/fd0 bs=1024 conv=sync ; sync
malllinux/current/bootusb-0.8.img
[17] Setor de boot alternativo:
Obviamente, deve ser emitido como root. Agora, desligue seu computador, insira o chaveiro USB
http://home.tele2.ch/spblinux/
e o disquete e ligue o computador. Se ainda assim não funcionar, é provável que sua BIOS esteja
spbsetup/Linux/spb2_mbr.sec
com o boot por disquete desligado. Verifique.
Outro possível problema, independente do processo de boot usado, é que alguns dispositivos
USB realmente não oferecem a possibilidade de se iniciar um computador por eles. O problema Fabrizio Ciacchi (http://fabrizio.
SOBRE O AUTOR

pode ser causado, por exemplo, por um setor de boot (MBR) defeituoso ou simplesmente fora do ciacchi.it) é estudante de Ciências
padrão. Para este artigo, usei um Iomega Mini Drive de 128 MBytes (www.iomega.com), que fun- da Computação na Universidade de
cionou de primeira e é bem rápido na transferência de dados. Outros dispositivos que testei não Pisa. Trabalha como consultor para
encaravam bem o processo de boot. Para tentar resolver o problema, a distribuição SPB-Linux diferentes companhias e escreve arti-
possui um programa que implementa um setor de boot alternativo no dispositivo USB. Esse setor gos para a edição italiana da Linux
faz o que o nome deixa transparecer (ao contrário do original): permitir o boot por USB [17]. Magazine (www.linux-magazine.it).

http://supertuxbr.blogspot.com
52 edição 06 www.linuxmagazine.com.br
Coluna do Augusto SYSADMIN

Seguro morreu de velho

Garantindo

por Joe Smith: www.sxc.hu


o plano B
Segurança é essencial. Essa é uma afirmação raramente questionada

e a razão de existirem os “planos B”, como são popularmente

conhecidas as alternativas que mantemos de prontidão, mas

que preferimos nunca ter de usar. POR AUGUSTO CAMPOS

O seguro da casa, mesmo quando


há sistema de alarme; o cofre
reforçado, mesmo onde não há
alta incidência de roubos; o conjunto
de remos guardado debaixo dos bancos
pação até mesmo dos usuários domésti-
cos pois, com a proliferação do conteúdo
digital, as perdas de discos domésticos
começam a se tornar verdadeiros dramas
familiares, com o desaparecimento súbito
isto é algo que a própria comunidade
pode resolver (quem sabe algum leitor
da Linux Magazine não se habilita?).
Quase posso imaginar os usuários
experientes se perguntando como recu-
da lancha a motor... são infi ndáveis os de todas as fotos, trabalhos escolares, perar um backup desses em situações
exemplos, no cotidiano, de situações relatórios, emails da família, catálogos de extremas, quando não se consegue fazer
em que julgamos ser melhor prevenir endereços, coleções de músicas, registros um logon completo e ativar o ambiente
do que remediar. do imposto de renda e tudo o mais que gráfico. Mas a solução é simples: há um
Na informática, um dos exemplos hoje se guarda no PC doméstico comum. utilitário chamado dar (independente
mais claros de plano B é o backup. A novidade é que hoje os backups do KDE ou do ambiente gráfico e simi-
Quem tem um bom plano de backup estão ao alcance do usuário doméstico lar ao tradicional tar) exatamente para
o segue na esperança de que nunca de Linux, sem necessidade de fazer um essa tarefa, que pode até mesmo ser
precise usá-lo. Quem não tem, muitas curso de introdução à administração de incluído em seu disco de recuperação
vezes aprende a importância dele ape- sistemas. Embora os mais experientes para emergências.
nas quando já é tarde demais. Por mais tendam muitas vezes a preferir usar, em Mas o mais importante não é a
seguro e inatingível que seja o seu servi- suas estações de trabalho, as mesmas escolha da ferramenta: é a política
dor ou o seu desktop, sempre há alguma técnicas tradicionais adotadas nos ser- de backups. Estabeleça uma e siga!
possibilidade de dano aos dados. vidores e redes que administram, já há Não descubra tarde demais que o seu
Ao defi nir sua estratégia de backup, é alternativas amigáveis voltadas justa- backup mais recente é de 2 meses atrás
necessário levar em conta diversos fato- mente ao usuário doméstico. porque ninguém lembrou de gravar os
res: custo, disponibilidade de mídias e Um exemplo de aplicativo amigável CDs, inserir a fita ou deixar o PC ligado
gravadores, disponibilidade de operador, para backup é o Kdar. Esse programa, no horário em que é gravada a cópia. ■
restrições técnicas de todos os sistemas integrado ao ambiente KDE, é uma
envolvidos e outros mais. Ao planejar, interface agradável e simplificada (mas INFORMAÇÕES
leve em conta quais dados não podem sem ser restritiva) para as tarefas mais dar: http://dar.sourceforge.net/
ser perdidos em nenhuma hipótese corriqueiras de cópia e recuperação de
kdar: http://kdar.sourceforge.net/
(que tal guardar uma cópia atualizada dados. As características mais comuns
deles em segurança e fora do prédio?) e essenciais estão ao alcance do mouse:
e em quanto tempo você precisaria ter compressão (com gzip ou bzip2), sepa- Augusto César Cam-
SOBRE O AUTOR

tudo funcionando novamente após um ração do backup em arquivos de tama- pos é administrador
de TI e desde 1996
evento de perda total. nho fi xo (para melhor caber em CDs,
mantém o site BR-
Profi ssionais de administração de sis- fitas, Zip Disks ou outra mídia externa Linux.org, onde cobre
temas não deveriam precisar das dicas que você use), atributos estendidos, a cena do Software
acima, pois são ensinadas em todo backup incremental e muito mais. O Livre no Brasil e no
manual e curso da área. Mas insisto em visual é agradável e a interação é bas- mundo. Foi colunista
e autor de diversos
mencioná-las mesmo assim porque cada tante intuitiva. Aparentemente ainda
artigos na Revista do Linux.

http://supertuxbr.blogspot.com
vez mais os backups devem ser preocu- não há suporte ao nosso idioma, mas

www.linuxmagazine.com.br edição 06 53
SYSADMIN Configuradores gráficos para firewall

Checkpoint FW1 e Firewall Builder

Regras para todos


A tecnologia de firewall presente no kernel do Linux já há algum tempo atende às

exigências profissionais. Agora, os configuradores gráficos chegaram para diminuir

a distância entre o Linux e as soluções comerciais. POR CHRISTIAN NEY

E mpresas que usam linhas pri-


vadas para se conectar à Inter-
net precisam de muita proteção
contra ataques à sua rede interna. Em
muitos casos, os firewalls são a pri-
não é exatamente fácil de usar. Essa é
a razão pela qual muitos administrado-
res evitam usar qualquer sistema envol-
vendo Software Livre.
Obviamente, uma boa interface não
vedor externo. Isso permite que as mensa-
gens sejam verificadas quanto a presença
de vírus em um único local.
O servidor de email é o único com-
putador com permissão para enviar
meira linha defensiva, permitindo que pode substituir o conhecimento e a mensagens para fora usando o proto-
os administradores defi nam o tipo de experiência. Nenhuma interface gráfica colo SMTP. O fi rewall terá proteção adi-
tráfego autorizado a entrar e sair de vai formar especialistas de fi rewall do cional, pois só poderá ser acessado por
suas redes corporativas. De quebra, dia para a noite, mas a maioria das pes- um único computador dentro da rede
um fi rewall também pode restringir o soas prefere uma abordagem visual do interna, e apenas por meio de SSH.
acesso a serviços da Internet para os problema em vez de uma interminável
funcionários e usuários do sistema. lista de longos comandos. É mais fácil Um genuíno faz-tudo
O mercado continua a crescer, prin- implementar um projeto de segurança O Firewall 1 NG (Next Generation), da
cipalmente devido à penetração da se houver ferramentas gráficas disponí- empresa CheckPoint [1] é provavel-
própria Internet. O leque de produtos veis para auxiliar na tarefa. mente o mais famoso produto comer-
inclui desde opções livres e de código cial dessa categoria, sendo considerado
aberto (normalmente gratuitas) a solu- Nossa rede de exemplo um genuíno faz-tudo. O CheckPoint
ções comerciais esplendidamente caras Basearemos nossos exemplos na rede mos- não só oferece um fi rewall com uma
e com “satisfação garantida ou seu trada na figura 1. Mostraremos como imple- reputação ilibada de ser extremamente
dinheiro de volta”. mentar políticas de segurança usando o seguro como pode, a preços não tão
Praticamente todas as soluções CheckPoint Firewall 1 NG, comercial, e o módicos assim, ser estendido para ofe-
comerciais oferecem uma forma fácil de Firewall Builder, um programa de código recer uma solução de VPN que permite
se confi gurar e administrar o fi rewall – aberto. Nossa rede usa um roteador para se até mesmo a conexão com soluções de
normalmente um programa gráfico. Em conectar à Internet. A empresa fictícia que código aberto – como o FreeS/WAN, por
oposição a isso, a grande maioria dos possui essa rede decidiu que hospedará exemplo. Infelizmente, até o presente
fi rewalls de código aberto impingem ao seu site num servidor próprio. O servidor momento o mundo do Software Livre foi
operador uma linha de comando que ficará localizado numa DMZ (Zona Des- incapaz de apresentar uma solução tão
militarizada, uma completa quando essa. O CheckPoint
rede à parte, com possui uma interessante interface de
menos restrições de confi guração chamada de SmartDash-
acesso) em vez de board (algo como “Painel Inteligente”).
diretamente na rede O CheckPoint é composto por dois
interna. Os empre- tipos de módulos:
gados da companhia • O Management Module (módulo de
devem poder aces- administração) é usado para “com-
sar serviços de FTP, pilar” as regras criadas com o uso da
HTTP e HTTPS na interface. Trocando em miúdos: con-
Internet protegidos verter as regras em linguagem humana
por um proxy interno. para um formato que o fi rewall possa
Um servidor de email entender. O módulo transfere essas
na LAN usará o pro- regras para um ou mais fi rewalls e
tocolo POP3 para administra os módulos de registro
Figura 1: Um exemplo típico de configuração de uma rede pequena, mos- baixar as mensagens (log), os objetos usados na confi gura-

http://supertuxbr.blogspot.com
trando a DMZ separada da rede principal. de email de um pro- ção e os bancos de dados que autenti-

54 edição 06 www.linuxmagazine.com.br
Configuradores gráficos para firewall SYSADMIN

cam os usuários com direito de uso do ração, entretanto, não é recomendada,


fi rewall. O Certificate Authority (uma já que interferiria no desempenho glo-
espécie de “cartório digital”) é outro bal do sistema. O registro de eventos
módulo importante. O CA gerencia os (logging) impõe uma carga por demais
certificados emitidos para qualquer pesada na máquina. Por razões de
sistema autorizado a usar um dado segurança, o Management Module deve
recurso e roda no computador que rodar em um servidor dedicado. Esse
administra o sistema. Essa arquitetura arranjo também proporciona uma segu-
tem a vantagem de possibilitar a cen- rança adicional, uma vez que todas as
tralização do gerenciamento de múlti- máquinas envolvidas podem ficar em Figura 2: Exemplo de um conjunto de regras de fil-
plos fi rewalls. Quaisquer computadores uma rede separada. tragem criada com o CheckPoint SmartDashboard.
envolvidos em uma transação de rede Em ambiente de produção, muitas
devem confiar no servidor central. empresas podem optar por rodar ambos uma lista de objetos – fi rewalls, com-
• Módulos individuais de controle de trá- os módulos em uma única máquina, putadores, serviços e o que quer que
fego, chamados “Enforcement Modules”, embora a interface de administração um administrador atarefado precise
são usados para montar dispositivos tipicamente esteja instalada na estação para criar regras de fi ltragem. O Check-
que agem como fi ltros de pacotes base- de trabalho do administrador. Infeliz- Point oferece, felizmente, uma vasta
ados em regras. Em outras palavras, mente, essa máquina deve, obrigatoria- seleção de definições. Até serviços
eles são o que comumente se chama mente, rodar Windows ou Solaris, pois praticamente extintos, como o Gopher,
de fi rewall. Os módulos ajustam auto- a interface de administração não possui estão presentes, o que retira das costas
maticamente o sistema operacional nos uma versão para Linux. do administrador um peso bastante
quais rodam para que se tornem menos A única distribuição de Linux que incômodo. Com o tempo livre, o res-
vulneráveis a ataques – em inglês, cha- o módulo de fi rewall suporta, oficial- ponsável pela segurança da rede pode
mamos isso de “hardening”. Isso deixa mente, é o Red Hat. Com muito traba- criar novos objetos, pensar melhor nas
apenas uns poucos itens para os admi- lho é possível fazer o mesmo com um regras ou ter tempo para um café.
nistradores ajustarem manualmente, Debian. A instalação, entretanto, é um
como por exemplo desabilitar os mui- desafio e tanto, pois os procedimentos Policy Editor
tos serviços desnecessários sempre pre- são um tanto centrados no Red Hat. Em O Policy Editor (editor de regras, canto
sentes no /etc/inetd.conf. listas de discussão que tratam do Check- superior direito) ocupa uma grande
O conjunto de regras de fi ltragem é Point [11] descobrimos que é possível parte da tela. O editor possui abas para
criado por um aplicativo especial, nor- instalar o FW-1 no SuSE, no Mandrake as regras de fi ltragem, para as defi ni-
malmente instalado em uma máquina e no Slackware. Kernels especiais são ções de tradução de endereços (NAT)
cliente. O administrador pode usar sua necessários em alguns casos. Como e, dependendo da sua licença (e do
interface gráfica para criar as regras, de praxe, essas variações são levadas quanto você pagou), outros objetos
mas a informação é gerenciada de forma a termo por conta e risco dos especia- como o VPN Manager. Na primeira vez
centralizada pelo Management Module. listas envolvidos, pois o fabricante não que você abre o programa, nenhuma
prestará suporte sob nenhum pretexto. regra de fi ltragem estará defi nida. A
Separando a interface A interface gráfica do CheckPoint primeira tarefa é criar um gateway
gráfica dos módulos de está dividida em quatro painéis por (concentrador de conexões para a Inter-
administração padrão (ver fi gura 2). Você pode ajus- net) que, futuramente, será também o
Obviamente, todos os módulos e até tar, é claro, o modo de visão de forma fi rewall. Para isso, pode-se tanto usar
mesmo a interface gráfica podem rodar a satisfazer suas necessidades e pre- um wizard (assistente) quanto fazer
em uma única máquina. Essa confi gu- ferências. O painel à esquerda mostra tudo manualmente. É importante adi-
cionar o módulo ao SIC (Secure Inter-
Inspeção de estado versus tabelas de estado nal Communication).
O fato de que objeto firewall possua
Em listas de discussão e newsgroups, usuários novatos freqüentemente fazem perguntas a
respeito da diferença entre um filtro de pacotes por estado de conexão (o chamado Stateful
internamente recursos de anti-spoofing
Firewall) e a técnica usada no CheckPoint, batizada de Stateful Inspection (inspeção de estado) entre suas regras nos dá uma camada
– e isso não é surpresa, pois o pedante nome dado pela empresa leva a uma conclusão errônea. adicional de proteção interna. Essas
Todos os filtros de pacotes discutidos neste arquivo oferecem a opção de simplificar o conjunto regras asseguram que invasores não
de regras usando as chamadas tabelas de estado (state tables). O uso dessas tabelas melhora o possam conseguir acesso usando técni-
desempenho do filtro de pacotes e, ao mesmo tempo, a segurança.
cas de impostura – em outras palavras,
fi ngindo ser alguém de dentro. O exem-
Inspeção de estado de conexão plo clássico é o IP Spoofing: o atacante
O Checkpoint usa a mesma tecnologia [10], mas também analisa os dados úteis do pacote – ou forja um endereço IP que pertença à
seja, os dados da camada de aplicação, da mesma forma que um proxy. Para conseguir isso,
nossa rede interna. Quando você ativa
faz uso de scripts especialmente criados para a tarefa. Como resultado, o monitoramento das
comunicações é muito mais eficiente. as regras de fi ltragem do fi rewall, o edi-

http://supertuxbr.blogspot.com
tor emite um aviso para cada interface

www.linuxmagazine.com.br edição 06 55
SYSADMIN Configuradores gráficos para firewall

que ainda não esteja com o anti-spoo- Firewall por estado de conexão
fing ligado, como um lembrete para que Essa tecnologia é baseada num princípio assaz simples. Como uma conexão TCP será sempre
você pare tudo e faça isso. As mensa- iniciada por um pacote SYN, o filtro usa as regras para verificar se esse tipo de comunicação é
gens também são gravadas no registro permitida. Se for, a conexão com o cliente é, primeiro, estabelecida, e depois incluída em uma
de eventos do sistema (syslog). tabela de estados como tal. As tabelas são armazenadas na memória do kernel, permitindo
Com essas etapas cumpridas, pode- acesso extremamente rápido. O filtro de pacotes pode então usar esses dados para verificar os
mos começar a defi nir os objetos neces- pacotes seguintes (que não possuem o flag SYN ligado) e decidir se eles pertencem – ou não – a
sários. Uma regra, basicamente, é uma conexão autorizada. Em outras palavras, não há necessidade de escrever um punhado de
composta por: regras para lidar com todos os aspectos da conexão. Por estarem relacionados àquela primeira
• Objeto de origem (Source); conexão já listada na tabela, os pacotes são autorizados automaticamente.
• Objeto de destino (Target); A redução do número de regras proporciona um desempenho bem maior para o firewall, per-
• O serviço usado para a comunicação; mitindo que o sistema reconheça pacotes contíguos, como os pertencentes a uma conexão FTP,
• Uma restrição para a regra se a cone- que não tenham relação direta com a conexão estabelecida previamente e marcada na tabela.
O Linux usa um “ajudante” (helper) para esse fim. Esse comportamento também aumenta a
xão usa uma VPN específica;
segurança porque não há a possibilidade de se abrir múltiplas portas – veja a discussão sobre o
• Defi nição de registro no log se a regra
assunto em [9].
for usada;
• Em quais fi rewalls essa regra deve
ser aplicada – isso permite defi nir a ontem” um relatório com o diagrama comandos SMTP e SMNP ilegais. Esse
mesma regras para vários fi rewalls; atualizado da rede. É possível exportar recurso é chamado de SmartDefense,
• O horário em que essa regra deve o diagrama como arquivo de imagem para combinar com os outros produtos
estar ativa; no formato do Microsoft Visio. Isso per- da linha “Smart”. Fique atento para as
• Um comentário sucinto e informativo, mite manter a documentação da rede novidades nessa área.
que esclareça a qualquer um o obje- sempre em dia – coisa extremamente Depois de conseguir uma configu-
tivo dessa regra. necessária se os fi rewalls e a rede são ração que funcione, podemos passar à
A regra precede uma lista de obje- administrados por uma equipe. Infeliz- árdua tarefa de deixar o sistema mais
tos, que é, no fundo, uma visão mais mente, tudo isso só está disponível se seguro, já que o fi rewall não trabalha
detalhada sobre os objetos criados pelo você pagar – e não é barato! apenas no nível dos pacotes (camada
usuário. A lista revela várias das carac- É muito simples criar regras individu- 3 do modelo OSI) mas também analisa
terísticas intrínsecas de cada um, como, ais. Simplesmente arraste e solte os obje- o tráfego dos serviços como um IDS
por exemplo, seu número IP. Isso pode tos desejados nos campos apropriados. – Intrusion Detection System ou Sistema
ser extremamente útil quando se tem que É possível usar o mouse para deslocar de Detecção de Intrusos.
lidar com um grande número de objetos regras – recurso que não estava dispo-
e precisamos vislumbrar rapidamente os nível nas versões anteriores. A estrutura Serviço de tradução
IPs usados em uma subrede específica. bem defi nida da interface torna a vida do Depois de completar a lista de regras
administrador bastante simples, mesmo e o trabalho de pré-instalação, é pre-
Visão geral da rede para os que não possuem muita experi- ciso transferir as regras para a estação
O último painel contém o Visual Policy ência com esse tipo de tecnologia. Entre- de administração num formato que os
Editor, um mapa gráfico de todos os nós, tanto, a quantidade fabulosa de opções, fi rewalls possam entender. No jargão da
suas interligações e a infra-estrutura da nem todas óbvias ou aparentes, sempre CheckPoint, isso é chamado de “compi-
rede. Um mapa desse tipo é sempre bár- deixa algum espaço para otimizações. lação”. O arquivo de texto com as regras
baro caso existam conexões entre um O recurso de permitir que o fi rewall de fi ltragem, legível para os humanos, é
punhado de computadores usando uma faça tradução de endereços (NAT) para convertido num formato interno deno-
VPN – além de permitir que o adminis- qualquer objeto é utilíssimo e pode minado Inspect script, que por sua vez
trador de rede se exiba para os colegas poupar bastante trabalho. Obviamente, é reconvertido no chamado Inspect code.
e superiores quando o chefe pede “para você pode confi gurar o NAT manual- É esse código que será instalado nos
mente. Dependendo de como for feito, fi rewalls. Inspect é uma linguagem de
isso pode significar alguma confi gura- script criada pela CheckPoint especifi-
ção de roteamento adicional no fi rewall camente para seus produtos. Isso per-
para refletir a estrutura real de NAT da mite que os especialistas (e os inimigos
sua rede – em versões anteriores, isso das interfaces gráficas) possam fazer as
era sempre necessário. Por exemplo, coisas manualmente.
pode ser preciso defi nir uma rota a par- Como as modificações manuais não
tir do IP externo “válido”, atrás do qual alteram os objetos mostrados na inter-
todos vão se esconder, para o IP interno. face gráfica – o que só acontece durante
Versões posteriores ao HotFix 3 da a compilação – é melhor deixarmos as
Figura 3: Os objetos do CheckPoint Firewall-1 CheckPoint podem monitorar trá- alterações manuais para os especialistas.
permitem que quase qualquer tipo de operação fego de rede em busca de atividade O perigo de seu conjunto de regras de fi l-

http://supertuxbr.blogspot.com
de rede possa ser feita. malévola, como o “Ping da Morte” ou tragem ficar inconsistente é gigantesco,

56 edição 06 www.linuxmagazine.com.br
Configuradores gráficos para firewall SYSADMIN

especialmente se levarmos em conta que entretanto (500 dólares americanos [7])


a documentação é bastante inadequada é baixo o bastante para ser uma pechin-
– mesmo que tenhamos pago por ela. cha em relação a outros produtos.
O CheckPoint tem seu recurso de A abordagem modular torna o Firewall
propagação proprietário, chamado de Builder interessante quando é preciso
Secure Internal Communication (SIC) administrar de forma centralizada
para transferir o conjunto de regras de fi rewalls de várias procedências. Tam-
fi ltragem aos Enforcement Modules. O bém é bastante indicado se um adminis-
protocolo é baseado na conhecida téc- trador já acostumado com o CheckPoint Figura 4: Um conjunto de regras de filtragem
nica SSL / TLS, e usa Criptografia de precisa trocar de plataforma. criado pelo Firewall Builder, como exemplo de uma
Chave Pública para verificar a identi- O Firewall Builder não só pode tra- possível solução para a rede mostrada na Figura 1.
dade dos nós envolvidos na transação, balhar com múltiplos fi ltros de pacotes
assegurar a integridade dos dados e como também rodar em muitos sabo-
criptografar todo o tráfego da rede. Com res de Unix. Até o momento da edição, Portátil, graças ao XML
isso, a confidencialidade e a segurança havia pacotes para inúmeras distribui- O administrador pode defi nir um certo
dos dados é garantida. ções Linux, FreeBSD, OpenBSD e até número de opções de transferência para
O CheckPoint Firewall 1 NG é parti- para o Mac OS X. o script. Por exemplo, o local para gra-
cularmente útil para aqueles que preci- var o arquivo com o conjunto de regras
sam de uma solução completa, do tipo Regras para mais de um firewall no sistema de arquivos do firewall.
“satisfação garantida ou seu dinheiro Assim como o Checkpoint, o Firewall Também é possível defi nir se o arquivo
de volta”. O produto é particularmente Builder é dividido em duas partes: o XML usado para “compilar” o conjunto
recomendado quando se pretende usar programa de administração, que roda de regras deve ser gravado junto com o
algum tipo de VPN, pois oferece o na estação de trabalho do administra- arquivo “compilado” ou qual usuário se
recurso de gerenciamento centralizado. dor e possui uma interface gráfica, e registrará (“logará”) no fi rewall para a
Se você possui sistemas que precisam o fi rewall propriamente dito, rodando transferência e outras operações.
de alta disponibilidade, não há muita normalmente em máquinas que servem O procedimento tem a vantagem
escolha. Os fi ltros de pacotes do mundo como gateways. Em contraste com o de evitar que o usuário root opere o
do Software Livre têm severas restrições Checkpoint, usa um sistema de configu- fi rewall, propiciando um considerável
no tocante a recursos desse tipo. Um ração para criar os conjuntos de regras aumento de segurança. Observe que o
exemplo básico: sincronização de tabe- e então transfere-as para as máquinas conjunto de regras não só é transferido
las que funcione direito e seja estável. onde rodam os fi rewalls. Não há um mas também automaticamente ativado
mecanismo de transferência próprio, pelo script, coisa que requer privilégios
Irmão caçula como no Checkpoint, mas o administra- de root. Se você defi nir um usuário
Se você já trabalhou com o CheckPoint dor pode usar o bom e velho SSH. Um com menos privilégios, certifique-se
antes, o Firewall Builder [3] o fará sen- daemon independente que cuide da de que sua conta esteja cadastrada no
tir-se em casa. Em aparência, é bem transferência das regras, rodando em sudo (/etc/sudoers).
semelhante ao SmartDashboard do FW- cada fi rewall, está no forno para as pró- Da mesma forma que com o Check-
1. A metodologia de separar a admi- ximas versões – e isso já se reflete na point, o Firewall Builder não trará
nistração em uma interface gráfica e interface gráfica – mas ainda não está nenhuma regra quando for executado
manter os fi rewalls de longe também disponível. Como seu “irmão maior”, o pela primeira vez. Entretanto, já pos-
foi “adotada”. Firewall Builder usa conexões protegi- sui defi nições para os serviços mais
O Firewall Builder permite gerenciar das por Chaves Públicas para a comuni- comuns nos protocolos TCP e UDP e
múltiplos fi rewalls ao mesmo tempo. cação entre as máquinas. mensagens ICMP, além de já conhe-
Há quatro tecnologias de filtragem A versão atual possui um script cha- cer os endereços das LANs privadas. É
reconhecidas: mado fwv_install, muito útil ao admi- possível usar um assistente para adi-
• iptables [4] (Linux com kernel da nistrador do fi rewall. O script faz uso cionar os computadores conectados à
série 2.4 ou 2.6) de autenticação SSH via Chave Pública sua rede. Para detectar os nós de sua
• ipfi lter [5] (FreeBSD e NetBSD, com para transferir as regras aos fi rewalls. rede, o assistente pode – entre outras
versões para vários outros “sabores” Depois de defi nir o conjunto de regras “espertezas” – ler seu arquivo /etc/hosts,
de Unix) adequado, basta selecionar a opção fazer uma transferência de zona DNS
• pf [6] (OpenBSD) Rules > Install para transferi-lo. (zone transfer), usar SNMP ou simples-
• Cisco Pix A interface gráfica chama o script mente rodar um scanner.
O Cisco Pix possui sua própria inter- fwb_install em segundo plano e mostra a Quando testamos essa função, o pro-
face HTML, mas ela é usada apenas saída do comando em uma nova janela. grama produziu um erro a cada vez que
para a confi guração inicial. Para que o Para evitar redigitação, o sistema ativa o fazia uma consulta ao DNS. Por outro
Firewall Builder possa administrar essa programa ssh-agent. O agente armazena lado, usando SNMP é possível obter os
plataforma, é necessário adquirir um todas as suas informações de conexão e dados de contato, a localização e até a

http://supertuxbr.blogspot.com
módulo adicional, não-livre. Seu preço, senha até que você o desative novamente. descrição do objeto em questão. Isso

www.linuxmagazine.com.br edição 06 57
SYSADMIN Configuradores gráficos para firewall

a uma única interface de rede no regras que bloqueiam acesso, essa regra
fi rewall, não à rede que se conecta a usa a ação REJECT em vez de DROP.
essa interface. Por outro lado, a opção Isso permite que a conexão seja fi nali-
permite emular as regras de anti-spoo- zada como se deve, usando a flag RST
fi ng do CheckPoint de forma bastante do protocolo TCP. Se fosse usado DROP,
próxima, evitando que potenciais inva- não haveria resposta para pacotes
sores forjem pacotes IP que pareçam entrantes, o que levaria a um incômodo
vir de sua LAN interna, permitindo que timeout depois de um período pré-deter-
Figura 5: O Firewall Builder permite uma configuração ganhem acesso não autorizado pela minado de tempo.
bastante granular das várias opções de filtragem. interface externa.
O Firewall Builder também permite Sem complicação!
aumenta a base de conhecimento do configurar a tradução de endereços Obviamente, essas regras podem ser
administrador sobre a rede e pode (deve!) (NAT). Ao contrário do CheckPoint, refi nadas para incluir recursos, como
ser usado para documentá-la melhor. casos especiais em que um nó interno por exemplo permitir apenas pacotes
precisa ser acessado de fora precisam ser ICMP Redirect do roteador conectado
Interfaces semelhantes – plágio? roteados manualmente. O programa não aos fi rewalls, possibilitando a detecção
O assistente incluído com o programa é oferece esse recurso automaticamente. de ataques nesse nível. É uma questão
uma ferramenta bastante útil para admi- de compromisso entre risco e eficiência.
nistradores inexperientes que precisam Arrastando e soltando regras Há uma boa razão para manter as
construir rapidamente um conjunto de e objetos coisas simples quando estiver proje-
regras inicial. Metódico, cuida das pri- Ambos os produtos permitem que se tando seu fi rewall e montando seus
meiras coisas primeiro: defi ne uma DMZ crie e mova objetos e regras usando o conjuntos de regras. Qualquer regra
e usa os dados iniciais para criar sozinho mouse. As mudanças aplicadas em que obrigue o kernel a verificar cada
um simples mas efi caz conjunto básico um objeto são imediatamente propa- pacote que chegue irá diminuir o
de regras de fi ltragem. Isso cria uma fun- gadas para cada instância da regra no desempenho do sistema. Além disso,
dação sólida sobre a qual é fácil construir conjunto. As diferenças estão nos bas- as regras devem ser inteligíveis para
um fi rewall, seja ele simples ou complexo. tidores. Embora o Firewall Builder não o administrador. Um bom conjunto
Obviamente, esse assistente não impede ofereça a mesma gama de funções que o de regras pode ser inútil se ninguém
que você crie – manualmente, como bom CheckPoint, a grande vantagem da solu- souber como funciona.
hacker – os objetos de que precisar. Tam- ção livre é sua independência de um fi l- O Firewall Builder armazena o con-
bém não impede que você use os outros tro de pacotes específico. junto de regras e os objetos associados
“druidas” disponíveis. Uma solução possível para a rede em um arquivo XML bem simples. Os
A interface gráfica lembra muito mencionada no início do artigo (ver compiladores interpretam, então, esse
a do Checkpoint, incluindo campos fi gura 1) é mostrada na fi gura 4. As arquivo para gerar as instruções para o
muito semelhantes: regras #0 #1 asseguram que a máquina fi rewall apropriado. Usar o XML como
• Objeto de origem (Source); chamada fw-mgmt seja a única com formato intermediário permite que os
• Objeto de destino (Target); permissão de usar SSH para acessar os administradores possam olhar o “motor”
• O serviço usado para a comunicação; fi rewalls, bem como de registrar nos e descobrir o que o sistema está fazendo
• Uma ação a ser tomada caso a regra se logs esses acessos. A regra #2 permite enquanto o chefe toma café.
aplique a um determinado pacote (libe- acesso por meio dos protocolos HTTP O produto fi nal não tenta esconder
rar, rejeitar, bloquear e contabilizar); e HTTPS ao servidor Web que está na o fato de que o programa usa scripts
• Defi nição de registro no log se a regra DMZ. Como o servidor web possui seus altamente automatizados para cada
for usada; próprios arquivos de log, não ativamos uma das plataformas de firewall
• O horário em que essa regra deve o registro de eventos para ele. suportadas, poupando trabalho para
estar ativa; As regras 3 e 4 permitem que o proxy e o administrador, que teria que fazer
• Um comentário sucinto e informativo, o servidor de email na rede interna aces- tudo “na unha”. Com a exceção do
que esclareça a qualquer um o obje- sem a Internet. Todo e qualquer acesso é PIX, todos são shell scripts extrema-
tivo dessa regra. registrado. A regra 5 serve apenas para mente espertos que incluem instru-
Além dessas regras “globais”, cada limpar os arquivos de log,, apagando os ções para os fi ltros de pacotes. Os
interface de rede do fi rewall pode ter eventos gerados pelos broadcasts Net- scripts também detectam endereços
suas próprias regras, especificando BIOS enviados à LAN pelas máquinas dinâmicos (DHCP) e alteram a confi-
a direção do fluxo de tráfego da rede com Windows. Os arquivos ficariam guração para que refl ita as mudanças.
(entrando, saindo ou ambos). O Check- extremamente atravancados se não fos- A configuração abrange alguns
Point costumava ter essa opção, mas por sem limpos regularmente. detalhes normalmente esquecidos
algum motivo ela foi retirada da versão Os últimos blocos de regras blo- quando escrevemos as mesmas regras
5, a mais recente. queiam qualquer acesso não explici- manualmente, como por exemplo
No caso do Firewall Builder, a opção tamente permitido por qualquer outra prevenção de spoofi ng para todas as

http://supertuxbr.blogspot.com
pode ser uma armadilha, pois se aplica regra. Em contraste com as duas outras interfaces de rede.

58 edição 06 www.linuxmagazine.com.br
Configuradores gráficos para firewall SYSADMIN

Listagem 1: Regras em uso


01 [...]
02
03 echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
04 echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
05 echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
06 echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
07 echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
08 echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
09 echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_intvl
10 echo 1 > /proc/sys/net/ipv4/tcp_syncookies
11 [...]
12
13 # Regra 0(NAT)
14 $IPTABLES -t nat -A POSTROUTING -o eth2 -s 192.168.0.0/24 -j MASQUERADE
15 [...]
16
17 $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
18 $IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
19 $IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
20 [...]
21
22 # Regra 0(eth2)
23 # Regra para ativar o anti-spoofing
24 $IPTABLES -N eth2_In_RULE_0
25 $IPTABLES -A INPUT -i eth2 -s $interface_eth2 -j eth2_In_RULE_0
26 $IPTABLES -A INPUT -i eth2 -s 192.168.1.1 -j eth2_In_RULE_0
27 $IPTABLES -A INPUT -i eth2 -s 192.168.0.1 -j eth2_In_RULE_0
28 $IPTABLES -A INPUT -i eth2 -s 192.168.0.0/24 -j eth2_In_RULE_0
29 $IPTABLES -A INPUT -i eth2 -s 192.168.1.2 -j eth2_In_RULE_0
30 $IPTABLES -A FORWARD -i eth2 -s $interface_eth2 -j eth2_In_RULE_0
31 $IPTABLES -A FORWARD -i eth2 -s 192.168.1.1 -j eth2_In_RULE_0
32 $IPTABLES -A FORWARD -i eth2 -s 192.168.0.1 -j eth2_In_RULE_0
33 $IPTABLES -A FORWARD -i eth2 -s 192.168.0.0/24 -j eth2_In_RULE_0
34 $IPTABLES -A FORWARD -i eth2 -s 192.168.1.2 -j eth2_In_RULE_0
35 $IPTABLES -A eth2_In_RULE_0 -m limit --limit 10/second -j LOG --log-level info --log-prefix "RULE 0 -- DENY "
36 $IPTABLES -A eth2_In_RULE_0 -j DROP
37 [...]
38
39 # Regra 0(global)
40 # Permite conexão SSH para o firewall vinda apenas da máquina do administrador.
41 $IPTABLES -N RULE_0
42 $IPTABLES -A INPUT -p tcp -s 192.168.0.2 -d $interface_eth2 --destination-port 22 -m state --state NEW -j RULE_0
43 $IPTABLES -A INPUT -p tcp -s 192.168.0.2 -d 192.168.1.1 --destination-port 22 -m state --state NEW -j RULE_0
44 $IPTABLES -A INPUT -p tcp -s 192.168.0.2 -d 192.168.0.1 --destination-port 22 -m state --state NEW -j RULE_0
45 $IPTABLES -A RULE_0 -m limit --limit 10/second -j LOG --log-level info --log-prefix "RULE 0 -- ACCEPT "
46 $IPTABLES -A RULE_0 -j ACCEPT

Menos regras, melhor


entendimento
A aba Firewall no objeto de mesmo A i nd a n a l i s t a ge m 1, ve mos
nome permite que se especifique muitos dos conceitos usados pelo
O processo cria um conjunto de regras quantos desses truques podem ser Fi rewa l l Bu i lder na cr iação das
bastante abrangente mas, ao mesmo aplicados. Também é possível defi nir reg ras, baseado no que f i zemos
tempo, pequeno o suficiente para ser o nível de registro no log para o fi ltro na interface gráfica. O script não
facilmente digerido por homens e de pacotes. só leva em conta endereços dinâ-
máquinas. Os recursos do iptables são A listagem 1 dá alguns exemplos. micos como também usa o sistema
muito bem usados, incluindo aí as tabe- Todos esses itens estão incluídos no de a rquivos /proc pa ra modif ica r
las de estado de conexão e os “atalhos” conjunto de regras. Mas preste muita opções e comportamento do kernel
disponíveis no Netfi lter. Regras abran- atenção: você precisa, obrigatoria- e, por exemplo, habilitar recursos
gendo múltiplas portas são apenas um mente, saber o que está fa zendo! como o redirecionamento de IP (IP
exemplo. Com elas, uma mesma regra Se agir sem conhecimento de causa, for warding). Obser ve as ver if ica-
pode ser aplicada a vários serviços. pode acabar escrevendo regras para ções de consistência que permitem
Isso evita criar um grande número de funções do iptables que sequer estão ao ker nel cer t if ica r-se de que o

http://supertuxbr.blogspot.com
regras idênticas, uma para cada porta. implementadas. endereço IP foi originado na inter-

www.linuxmagazine.com.br edição 06 59
SYSADMIN Configuradores gráficos para firewall

face cor reta (r p_ filter) e def i n i r aplicar essa regra ao objeto firewall o efeito das regras no desempenho global
temporizações seletivas para algu- abriria a porta 22 em todas as interfaces do fi rewall. Muitas opções são aplicadas
mas conexões. – incluindo aí a Internet. a um objeto em particular por padrão,
Se você estiver interessado em como sem que o administrador tenha de defi nir
As regras para NAT ficam no essas regras funcionam na prática, explicitamente – um exemplo clássico é o
início recomendamos estudar com afi nco a bloqueio de pacotes com roteamento na
O conjunto de regras começa, efetiva- configuração gerada por nossa rede de origem (source routing). Você pode com-
mente, defi nindo a tradução de endereços exemplo. Isso irá melhorar sua curva parar essa funcionalidade com as regras
(NAT). Isso evita problemas potenciais na de aprendizado. implícitas do CheckPoint. Dependendo
interação entre o NAT e as demais regras. da plataforma de fi rewall usada, o pro-
Essa seção é seguida pelas regras que Especialidades do netfilter duto livre pode até mesmo oferecer mais
asseguram a permissão das conexões já Permitir a criação de serviços personali- opções de configuração que o CheckPoint.
estabelecidas. Isso simplifica em muito o zados é mais uma dentre as muitas fun-
conjunto de regras. O fi rewall pode auto- ções interessantes do Firewall Builder. Conclusão
maticamente reconhecer fluxos de dados Com esse truque, torna-se possível usar O Firewall Builder é uma escolha
relativos a uma conexão já existente, opções altamente específicas do fi ltro de particularmente interessante para
como o FTP, por exemplo, e não precisa pacotes que está sendo configurado. Em administradores que não precisam
de regras adicionais para tratar todas as particular, uma combinação das exten- das opções avançadas dos produtos
situações decorrentes. sões do Netfi lter/iptables pode oferecer comerciais, ou não podem usá-los
As regras exclusivas das interfaces de um número bastante grande de recur- devido ao seu parque heterogêneo de
rede (regras de anti-spoofi ng) são defi ni- sos avançados em comparação com o plataformas de fi rewall.
das antes das regras “globais”. Essa etapa fi ltro de pacotes do kernel padrão. O Firewall Builder permite que os
pode ser deixada de fora, se desejado, e o Um exemplo é o string patch [8], que administradores com pouca experiên-
módulo do kernel pode ser usado no lugar. permite analisar o fluxo de dados à pro- cia em confi guração de fi ltros de paco-
Depois disso temos, enfi m, as regras glo- cura de uma cadeia de caracteres espe- tes criem conjuntos de regras com um
bais. Como o exemplo mostra, uma cadeia cífica e aplica regras específicas a eles. mínimo de esforço. O fato de sua confi-
é defi nida para cada regra. Isso simplifica Você pode, por exemplo, procurar pela guração ser aplicada de forma transpa-
a contabilidade em um estágio posterior, chamada ao cmd.exe que vários worms rente permite que se aprenda à medida
mesmo que o método pareça mais compli- na selva da Internet emitem – e que infes- que o fi rewall fica mais complexo. ■
cado do que realmente é. tam os logs do Apache. O patch evita que
A regra # 0 (global) no conjunto a chamada sequer chegue a seu servidor INFORMAÇÕES
mostra que o software segue sem des- Web, sendo bloqueada no fi rewall.
[1] CheckPoint: http://www.checkpoint.com/
vios o projeto do administrador para o A opção de defi nir regras especiais para
products/protect/firewall-1.html
fi rewall. Mesmo se o administrador qui- cada uma das interfaces de rede é outro
[2] Lista de discussão dos “Gurus” do FireWall-1:
ser usar SSH no lado interno do fi rewall, recurso inteligente que permite aprimorar
http://www.phoneboy.com/staticpages/
index.php?page=20030517034933897
Mais front-ends: GuardDog e KNetFilter
[3] Firewall Builder: http://www.fwbuilder.org
O GuardDog é um configurador de iptables construído com a biblioteca Qt. É muito interessante
[4] iptables, filtro de pacotes do Linux:
para usuários com pouca ou nenhuma experiência em redes e protocolos. Permite que o usuário
http://www.netfilter.org
defina zonas em sua rede e escolha os serviços permitidos para cada zona. O GuardDog imple-
menta a maioria dos protocolos mais comuns – particularmente em ambiente doméstico. [5] ipfilter, filtro de pacotes do Free/NetBSD:
http://coombs.anu.edu.au/~avalon/
Embora esse tipo de firewall pessoal possa ser uma boa idéia para computadores de mesa, mos-
ip-filter.html
tra suas limitações quando precisa ser aplicado a cenários mais complexos. Felizmente, o padrão
desse programa é bloquear tudo o que não for explicitamente permitido – na medida certa para [6] pf, filtro de pacotes do OpenBSD:
usuários inexperientes, evitando que permitam acesso ilimitado de crackers à sua máquina. http://www.benzedrine.cx/pf.html
Para mais informações sobre o GuardDog, veja a matéria sobre ele nesta edição, à página 20. [7] Compilador PIX para o Firewall Builder:
O Knetfilter é outro front-end para o iptables que, além disso, usa o tcpdump e o Nmap para http://www.netcitadel.com/pix.htm
monitoramento. Também oferece recursos de QoS – Quality of Service (qualidade de serviço). [8] Patch para o iptables:
O programa espera que o administrador defina todas as regras sem qualquer ajuda. Não há ser- http://www.netfilter.org/documentation/
viços pré-definidos. Aliás, os serviços são distinguidos apenas por suas portas de origem e des- pomlist/pom-extra.html#string
tino. O administrador obrigatoriamente tem que saber os números de cabeça ou providenciar
[9] Anatomia de um firewall por estado de
um papel com uma “colinha”.
conexão: http://www.giac.org/practical/
Se isso não for problema, o KNetfilter é capaz de criar regras extremamente granulares, levando gsec/Lisa_Senner_GSEC.pdf
em conta, inclusive, informações vindas de mensagens ICMP ou do estado das conexões. O KNe-
[10] Tabela de estados do Firewall-1:
tfilter não é, definitivamente, um brinquedo para iniciantes, pois requer conhecimentos mais
http://www.spitzner.net/fwtable.html
ou menos profundos a respeito do iptables. Administradores experientes, entretanto, vão amar
o poder de configuração e o nível extremo de detalhe que a ferramenta oferece, embora seja [11] Listas de discussão da Checkpoint:
necessário um chope ou dois para se acostumar com a interface gráfica. http://msgs.securepoint.com/fw1/

http://supertuxbr.blogspot.com
60 edição 06 www.linuxmagazine.com.br
Protegendo a memória SYSADMIN

Proteção de Memória com o PaX e o Stack Smashing Protector

Pax Romana

Aqui está um patch para o kernel que vai trazer um pouco de paz de espírito aos usuários paranóicos no que diz respeito

à segurança. Peter Busser, desenvolvedor do Adamantix, explica os princípios básicos do PaX (em latim, “paz”) e justifica
sua inclusão como um módulo de sua distribuição ultra-segura. POR PETER BUSSER

M uito tem se falado e escrito Pouco se fala, entretanto, sobre a Por que é tão importante
sobre segurança de sistemas. proteção dos únicos objetos realmente proteger a memória?
O assunto do momento são ativos em um sistema Linux: os pró- Em um mundo cor-de-rosa, nenhum
as maneiras de se limitar o que os pro- prios processos! Mais importantes que software seria infestado por “bugs” e,
cessos podem fazer com outros objetos os arquivos, dispositivos e memória já portanto, nenhum maldito invasor seria
no sistema, como por exemplo arquivos, citados, os processos desempenham capaz de conseguir acesso de escrita e
dispositivos e memória compartilhada. um papel crucial no Linux: são o único leitura na memória usada pelos proces-
Com tal limitação, os especialistas lugar no sistema em que algum código sos. Há pessoas clamando a altos brados
esperam aperfeiçoar a integridade do pode ser realmente executado. A des- que, para ingressar nesse mundo per-
sistema, a confidencialidade dos dados peito dessa importância, o mundo Linux feito, bastaria parar de desenvolver em
e a disponibilidade dos serviços. Prova tem uma triste tradição de ignorar o C e começar a usar Java, C-LISP, Ada ou
cabal dessa preocupação é a enorme problema da proteção do quinhão de qualquer outra linguagem que conside-
quantidade de patches para o kernel memória usado pelos processos. Com rem ser a melhor do universo. Como se
do Linux e mesmo de programas user isso, um número avassaladoramente a vida fosse simples assim...
space que existem para esse fi m. Um alto de exploits utiliza-se da corrupção A afi rmação acima nunca foi compro-
belo exemplo é o RSBAC [1], usado pela da memória (os famosos buffer over- vada, já que linguagens como Java, Perl
distribuição Adamantix [2] para atingir fl ow) dos processos para atingir seus e Python dependem de interpretadores

http://supertuxbr.blogspot.com
esses objetivos. objetivos malévolos. escritos… na linguagem C! Mesmo que

www.linuxmagazine.com.br edição 06 61
SYSADMIN Protegendo a memória

outras porções de memória do grsecurity começou a incluir também


a proteger. O argumento o PaX. O grsecurity é bastante conhe-
era ext remamente coe- cido e, como muita gente o usa, repen-
rente, mas o que fi zeram as tinamente as atenções começaram a se
outras pessoas em resposta voltar para o PaX.
a ele? Melhoraram o patch Muitas distribuições, como por exem-
do OpenWall? Escreveram plo a versão segura do Gentoo (“harde-
outros patches para proteger ned”, ou “reforçada”), possuem o patch
outras porções de memória? gr-security e, por conseguinte, o PaX.
Não. Em vez disso, muitas Isso criou uma demanda benéfica para
pessoas começaram a con- a equipe de desenvolvimento: muitas
siderar que qualquer tipo pessoas começaram a pedir a inclusão
de proteção de memória de recursos, relatar falhas e mesmo
era inútil. Isso é uma tolice contribuir para portar o PaX para outras
tão grande quanto acreditar plataformas. Onde havia apenas um
Figura 1: O paxtest verifica o funcionamento do PaX. que a Terra é chata. Triste- desenvolvedor agora há uma pequena
mente, é também uma tolice – e muito ativa! – comunidade que usa e
fosse verdadeira e começássemos a con- altamente disseminada e extremamente desenvolve o software.
verter décadas de código em C para a persistente. A diferença entre o PaX e os outros
novíssima, mais segura e sexy lingua- Nos velhos e bons tempos em que patches para proteção de memória é
gem XYZ, anos e anos seriam neces- todas as máquinas pequenas eram com- o fato de que ele não tenta prevenir
sários. Nesse meio tempo, os sistemas putadores pessoais, o assunto “segu- exploits específicos. Em vez disso, tenta
ainda dependeriam de programas escri- rança” não estava na ordem do dia. prevenir algumas classes de exploits.
tos na insegura, vulnerável e “arcaica” Desde que o computador não se conec- Como é que é? Classes? Do que diabos
linguagem C. tasse a uma rede ou que as outras pes- esse cara está falando?
Nosso mundo não é perfeito e temos soas se mantivessem a uma distância Vou tentar explicar. Animais e plan-
que aceitar o fato. Mesmo os melhores segura de seu teclado ou mouse, o usu- tas são categorizados tendo como refe-
programadores cometem erros, e muitos ário podia se considerar a salvo. Muitos rência suas similaridades. Há diversas
deles podem possibilitar a corrupção da dos programadores de hoje cresceram classes de animais: mamíferos, aves,
porção de memória interna usada pelos nessa realidade. Entretanto, com o cres- anfíbios, peixes... Suponha agora que
processos. Como os invasores externos cimento da Internet a situação mudou alguém invente uma cerca que proteja
sabem disso, o melhor a fazer é prote- dramaticamente. Até então era fácil suas terras contra javalis selvagens. Um
ger nossa memória. ignorar o problema e dizer às pessoas expediente utilíssimo se temos uma
que não havia perigo. Hoje, fi ngir que o lavoura freqüentemente vítima desses
No início era o caos... monstro não está embaixo da cama não animais. Entretanto, a mesma cerca será
Há muitas razões para a atenção quase é mais uma opção. inútil contra um estouro de elefantes
nula que os desenvolvedores dão à ou mesmo pequenos roedores. Em vez
memória dos processos e sua proteção. …e um dia veio a PaX! disso, uma cerca que protegesse contra
A mais gritante é, infelizmente, a falta Houve inúmeros esforços para criar TODOS os animas terrestres seria, essa
de compreensão da gravidade do pro- patches que propiciassem melhor pro- sim, muito superior.
blema. Tradicionalmente, as pesquisas teção de memória desde o fatídico dia O mesmo se aplica aos exploits e
sobre segurança voltaram-se quase em que Linus rejeitou a contribuição do ataques. No mundo do software livre,
que exclusivamente para o desenvol- projeto OpenWall. O site oficial do PaX o PaX é como essa supercerca, prote-
vimento de técnicas de controle de [4] lista alguns deles. Muitos patches gendo o sistema contra toda uma classe
acesso e mecanismos de criptografia. A foram abandonados e não são mais de exploits. Em outras palavras, prote-
integridade dos processos não era um mantidos, deixando o PaX como único ção contra TODOS os animais terres-
problema até que os estouros de buffer espécime ainda vivo. Graças à persis- tres. Infelizmente, a cerca ainda deixa
foram descobertos. Como tais falhas tência do autor do PaX, os usuários do passar pássaros e insetos. Precisaría-
são mais populares a cada ano, o pro- Linux podem desfrutar da melhor pro- mos, então, de outros softwares para
blema agora é assunto de Estado. teção de memória do mundo livre. trabalhar ao lado do PaX e proteger
A recusa de Linus Torvalds de incluir O trabalho no PaX começou há mais seu sistema contra os outros tipos de
no kernel o patch do projeto OpenWall, ou menos trinta meses. Depois de exa- animais. É triste constatar, entretanto,
que impede a execução de código na minar muitos “exploits”, o autor do que os poucos softwares similares que
pilha [3], foi um evento importante PaX chegou à conclusão de que a única existem atualmente não dão conta do
na história do Linux. Como o patch maneira de neutralizá-los seria com recado. Podemos dizer, por exemplo,
implementava apenas o controle da uma eficaz proteção da memória usada que o patch do OpenWall protege ape-
pilha, Linus argumentou que ele não pelos processos. Infelizmente não foi nas contra os roedores. Os projetos W^X

http://supertuxbr.blogspot.com
era completo o suficiente, pois haviam usado em larga escala até que o patch [5] e exec-shield [6] do OpenBSD prote-

62 edição 06 www.linuxmagazine.com.br
Protegendo a memória SYSADMIN

gem contra todos os animais terrestres, - Carregar código do disco para a vezes usada para acentuar a eficiência
exceto elefantes. Confuso? Falaremos memória e executá-lo. de cercas. O PaX faz algo semelhante
mais sobre isso logo adiante. ao influenciar ACLs e outros mecanis-
Se é possível sobrescrever código, mos de acesso como o RSBAC [1]. Isso
Classes de ataque um invasor pode injetar o seu próprio garante uma proteção perfeita contra
De modo geral, há três classes de ata- código, invariavelmente malicioso, num qualquer ataque de classe (1). É o único
ques que os patches de proteção de processo vulnerável e fazer com que o patch de proteção de memória que vem
memória tentam evitar: próprio processo execute esse código. com uma garantia desse tipo.
Em vez de fazer o que o programa foi
(1) Injeção e execução arbitrária projetado para fazer, o processo faz o Classe (2)
de código. que o invasor deseja que ele faça. Lembram do exemplo que Linus Tor-
(2) Execução de código já existente O mesmo vale para a segunda técnica. valds deu para rejeitar o patch do pro-
mas fora da ordem original em Dados do programa, guardados numa jeto OpenWall? Pois é, aquele era um
que estava no programa. porção da memória, são sobrescritos por ataque de classe (2). Explicando de
(3) Execução de código já existente dados injetados pelo invasor e executa- forma simples, num ataque de classe (2)
no programa e na ordem original, dos como se fossem código. Você pode o invasor sobrescreve com novos dados
mas com dados arbitrários. pensar que o sistema deveria separar o um endereço de memória usado para
que é código e o que são dados, mas os controlar a maneira como o processo
Cada tipo possível de corrupção de programadores preferem a facilidade de trabalha. Por exemplo, a alteraração do
memória pertence a uma dessas três tratar tudo do mesmo jeito. Como resul- valor do ponteiro de retorno da pilha
classes. Por exemplo, muitas falhas tado, essa técnica é usada pela maioria faz com que, quando a função chamada
populares usando estouros de pilha dos ataques de estouro de buffer. O PaX devolve o controle ao programa que a
pertencem a (1). O exemplo citado assegura que código seja código e dados chamou, o processamento seja desviado
por Linus Torvalds, usando a técnica sejam dados, permitindo que possamos não para o lugar certo no programa que
return-to-libc, pertence a (2). Exploits ler e gravar a memória onde os dados está sob ataque, mas para outra posi-
pertencentes à classe (3) são raros, mas estão, mas nunca executar código nela. ção de memória qualquer à escolha do
existem. Normalmente é mais fácil usar De forma semelhante, o patch permite cracker. Geralmente, nessa posição de
as classes (1) e (2). Observe que essa é ler e executar código na área de memó- memória já se encontra algum código
uma classificação de técnicas de explo- ria apropriada, mas nunca escrever malicioso, cuidadosamente colocado
ração de falhas, não das próprias falhas. nada por lá. lá pelo invasor antes dele provocar o
Ou seja, uma mesma técnica pode ser As duas primeiras técnicas requerem “estouro” da pilha.
usada para explorar diferentes bugs, e apenas acesso de escrita e execução na Esse é o apenas exemplo mais comum,
uma mesma falha pode ser explorada memória. O PaX lida com essas técni- mas há inúmeros outros lugares em que
de mais de uma forma. cas à sua maneira. A terceira técnica é algum tipo de endereço é armazenado.
A idéia por trás do PaX é fazer com que diferente porque requer, além de ope- Cada um deles, obviamente, é usado
classes inteiras de técnicas de explora- rações com a memória, acesso a arqui- para uma fi nalidade específica dentro
ção parem de funcionar. Até o momento, vos no disco. A eletricidade é muitas do programa que se está atacando e,
o PaX conseguiu parar ataques da classe
(1) – ou seja, é uma cerca contra todos
os animais terrestres. Os exploits da
classe (2) estão com os dias contados,
pois suas técnicas estão sendo discuti-
das. A classe (3) será tratada em algum
ponto do futuro, mas as pesquisas ainda
não estão concluídas. O que destaca o
PaX dos outros patches de proteção de
memória é o fato de lidar com a classe
(1) inteira, além de não ignorar (2) e (3).

Classe (1)
Injeção e execução de código arbitrário
significa que é possível:

- Sobrescrever código que já está na


memória da máquina;
- Sobrescrever dados que já estejam
na memória e executá-los como se Figura 2: O grsecurity é uma outra alternativa em termos de proteção de sistemas Linux.

http://supertuxbr.blogspot.com
fossem código;

www.linuxmagazine.com.br edição 06 63
SYSADMIN Protegendo a memória

pelo menos em teoria, todos eles podem Vista todas as suas O SSP usa dois mecanismos para che-
ser usados por invasores para influen- armaduras gar a esse objetivo:
ciar o comportamento dos processos. Proteger-se contra uma única classe
de ataques não é lá uma atitude muito - Posiciona uma espécie de “mina ter-
Classe (3) sábia. Linus usou um ataque de Classe restre” na pilha quando detecta uma
Nessa classe, dados importantes são (2) para driblar a proteção contra ata- função potencialmente perigosa. O
alterados durante o ataque. Nos dese- ques de Classe (1) proporcionada pelo mecanismo de detecção não é à prova
nhos animados, uma piada recorrente patch do projeto OpenWall. Isso é válido de imbecis – tanto pode detonar a
mostra o mocinho pondo um disfarce para qualquer classe: se o sistema pro- “mina” sem perigo como pode falhar e
qualquer e fazendo o bandido pular tege contra um tipo, basta usar o outro! deixar a pilha ser estourada;
num precipício ou correr na direção As pessoas em geral (e mesmo desen- - Muda a ordem das variáveis locais,
errada. Por incrível que pareça, os pro- volvedores experientes) concentram- deixando as mais perigosas o mais
gramas em geral são, via de regra, tão se em apenas uma classe de ataques, perto possível da “mina”. Isso aumenta
burros que é possível atacá-los usando esquecendo-se das demais – foi o que muito a possibilidade de detecção.
o mesmo velho truque sujo. Caso um o pessoal do projeto OpenWall fez. Pior
invasor possa gravar novos dados por do que isso, as pessoas costumam igno- O termo “mina terrestre”, embora
cima de informações importantes, o rar a utilidade de se proteger contra uma seja uma boa alegoria para o meca-
programa pode ser levado a acreditar classe de ataques simplesmente porque nismo, não virou jargão. A palavra mais
que o caminho certo a seguir é o cami- precisam instalar outros mecanismos conhecida no meio técnico é “canário”
nho da perdição, trilhando uma lógica para se proteger de ataques em outras (canary), em referência aos passarinhos
completamente diferente e fazendo coi- classes. Esse foi o erro cometido por usados por mineiros de carvão para
sas inesperadas. Linus Torvalds. Em vez de esperar por detectar monóxido de carbono (CO) em
Peguemos como exemplo o comando uma ferramenta abrangente, o correto níveis letais. O gás mata os passarinhos
mount. Podemos configurá-lo para seria combinar diferentes mecanismos muito mais rápido do que mataria os tra-
permitir que certos usuários possam de proteção para cobrir todos os casos balhadores, dando a eles tempo de fugir.
montar discos. O programa faz algu- (e classes) possíveis. Não há isso de Na pilha, o “canário” é um número alea-
mas verificações para discernir entre tamanho único em Unix. A abordagem tório colocado em um ponto estratégico.
usuários autorizados e não autorizados, correta é, e sempre será, a de ter várias Um ataque por estouro de pilha certa-
montando os volumes de acordo com as ferramentas trabalhando juntas. mente alteraria esse número, evento
permissões encontradas. que seria detectado pelo SSP antes que
Se um invasor puder de alguma Stack Smashing Protector o código malicioso do invasor pudesse
forma influenciar essas verificações, o A combinação de diferentes mecanismos ser executado. O SSP então envia uma
comando mount pode acreditar que de defesa é a razão pela qual o Stack mensagem ao registro de eventos do sis-
o atacante é um usuário autorizado Smashing Protector (SSP) foi agregado tema (syslog) e interrompe a execução
e montar um disco para ele – ou seja, ao Adamantix. O SSP [7] (ou ProPolice) do programa atacado.
mais uma base para disparar novos ata- é um patch para o GCC que toma provi- Esse tipo de verificação é bastante
ques. Esse exemplo foi puramente hipo- dências para evitar que alguns tipos de dispendioso em termos de memória e
tético. Exemplos reais são dificílimos falhas das Classes (1), (2), e (3) possam tempo de CPU, especialmente quando
de encontrar, pois falhas desse tipo são ser exploradas. Mais precisamente, ele funções muito pequenas são usadas. O
muito difíceis de se descobrir, que dirá cria defesas contra os chamados estou- SSP tenta detectar funções que possam
de explorar. ros de pilha (stack overflows). ser vulneráveis a estouros de pilha e
adiciona as rotinas de verificação ape-
Comparação: PaX versus outros patches. nas a elas. Como o mecanismo de detec-
ção não é perfeito, é bem provável que
A melhor coisa a respeito do paxtest é o fato de que foi possível usá-lo para testar a proteção de o SSP deixe de injetar as rotinas em
memória proporcionada pelos outros patches. Baixe o paxtest do site oficial do PaX [4] e com-
funções que delas precisem ou as inclua
pile-o em seu sistema. Se estiver usando Adamantix, basta um apt-get install paxtest. Disparar o
em lugares desnecessários. Às vezes,
paxtest contra um kernel “remendado” com o OpenWall mostra que apenas a pilha é protegida
contra execução de código – coisa que, aliás, é o esperado. Em outras palavras, isso significa que
ambas as coisas.
quase não há proteção. O SSP também pode ser usado para
compilar o kernel. Sempre é uma boa
Quando o paxtest é rodado contra o exec-shield, obtemos diferentes resultados, dependendo
da versão do paxtest em uso. Algumas falhas em versões antigas do paxtest fizeram com que as
idéia incluir uma camada de proteção
pessoas acreditassem que o exec-shield oferece uma proteção maior do que realmente o faz. em volta do núcleo do sistema. Quanto
ao desempenho, uma surpresa: as oti-
Na realidade, a proteção que o exec-shield oferece é realmente impressionante – só que para
menos. Será interessante acompanhar a agitação dos desenvolvedores de exploits e ver quão
mizações do SSP não deixam o kernel
rápido se adaptarão às fraquezas do exec-shield. Seria divertido se alguém portasse o paxtest perceptivelmente mais pesado!
para o OpenBSD. Não acredito que o i386 W^X – tão festejado pela comunidade OpenBSD Existem técnicas mais elaboradas
– mostre resultados convincentes. para fazer com que programas escritos

http://supertuxbr.blogspot.com
na linguagem C sejam mais seguros.

64 edição 06 www.linuxmagazine.com.br
Protegendo a memória SYSADMIN

Uma delas é a famosa verificação de e, exceto pelo servidor gráfico (XFree86), teste escreve código de máquina em
limites (bounds checking). Essa veri- tudo funcionou sem problemas com o uma variável do tipo string e tenta exe-
ficação significa que o acesso a todo e kernel com PaX. cutá-lo. Um PaX funcionando bem detec-
qualquer dado é testado. Pelo lado bom, A maioria dos programas funciona taria a tentativa e mataria o processo
isso traz mais segurança para qualquer sem nenhum problema com o PaX, imediatamente. Outros criavam diversas
programa. A desvantagem: o programa mesmo que esteja configurado para ser situações vulneráveis, cada uma relativa
fica pesado. A velocidade é comparável bastante restritivo – como é o caso do a um aspecto que o PaX deveria proteger,
à do Java – que, por acaso, faz verifica- Adamantix, por exemplo. Das várias e tentavam explorá-las.
ção de limites por padrão. Essa queda centenas de pacotes já adaptados para Há também testes que verificam a
brutal no desempenho é algo com que, uso no Adamantix, apenas uns poucos profundidade de aleatorização do ASLR.
na vida real, poucas pessoas querem causam problemas com o PaX. Em mui- Juntos, todos os programas nos dão uma
(ou podem) conviver. tos deles, o conserto foi bem fácil. As idéia do nível de proteção oferecido pelo
alterações mais comuns são de flags de PaX. Quanto mais testes informam “kil-
Aleatorização compilação, especialmente para biblio- led” (ou seja, processo interrompido),
Um recurso encontrado no PaX e em tecas. Em alguns casos precisamos melhor. Usando os dados obtidos com
outros patches de proteção de memória usar código em C em vez de assembly o paxtest, pude comprovar que o PaX
é o chamado ASLR – “Address Space (por exemplo, na zlib e no gnupg). Em estava se dando muito bem com o ker-
Layout Randomization”, algo como dis- outros, algumas linhas de código tive- nel do Adamantix. Melhor que isso: a
posição aleatória do espaço de endereços. ram que ser reescritas para se adequar ausência de programas indicava que o
Com o ASLR, diferentes partes do pro- ao método de trabalho do compilador. PaX estava funcionando muito melhor
grama são gravadas em locais diferentes Alguns programas – poucos, na ver- do que o esperado.
da memória. A posição de cada porção dade – não puderam ser adaptados.
do programa na RAM muda a cada vez Todos eles precisam, por definição, Conclusão
que ele é executado. criar código executável diretamente A proteção da memória usada pelos
Isso não é um mecanismo de proteção, na memória. Um bom exemplo é o processos é assunto da mais alta impor-
pois não há pontos de controle. Entre- ambiente de Java da Sun, o SUN Java tância, mas até agora não conseguimos
tanto, dificulta bastante uma tentativa Runtime Environment (JRE). encontrar nada que nos proteja contra
de exploração de uma falha conhecida, Quando isso acontece, é possível usar as três classes de ataques ao mesmo
uma vez que o atacante nunca pode ter o comando chpax para defi nir exceções. tempo. O PaX, desde seu surgimento,
certeza da exata localização das coisas As confi gurações do chpax são grava- nunca foi superado por outro patch de
na memória. Os diversos patches de das no interior do próprio executável. proteção de memória. Com o auxílio
proteção de memória diferem na quan- Quando o executável é invocado, o PaX de controle de acesso (ACLs) e outros
tidade de entropia usada. Normalmente, detecta essas confi gurações e desativa mecanismos auxiliares, o PaX consegue
quanto mais melhor, pois faz com que algumas das verificações. Um software garantir proteção perfeita contra ata-
ataques de força bruta (brute force) problemático pode, então, ser colocado ques de Classe (1).
sejam gradativamente mais difíceis. em funcionamento sem que seja neces- Outros mecanismos, como o SSP,
Atualmente, o PaX oferece a maior ale- sário mudar uma única linha de código. são necessários para evitar alguns ata-
atoriedade dentre todos os patches de ques nas Classes (2) e (3). O custo de
proteção de memória para Linux. Aliás, O duro teste da paz implementação é relativamente baixo.
melhor até do que a do OpenBSD. Quando o PaX foi incluído no kernel Qualquer distribuição de Linux que se
do Adamantix e eu passei a recompilar importa com aspectos de segurança tem
Compatibilidade os programas para o ASLR do sistema, a obrigação de planejar a inclusão desse
Não é necessário recompilar todos os tudo funcionou tão maravilhosamente tipo de proteção. ■
seus programas para que eles funcio- bem que eu comecei a duvidar da
nem num kernel com o PaX. A maioria honestidade dos desenvolvedores. Antes INFORMAÇÕES
deles rodará bem sem qualquer modi- de começar, eu já estava preparado para
[1] http://www.rsbac.org/
ficação. Já as bibliotecas podem causar encarar um grande número de progra-
algum estresse. Por experiência própria, mas deixando de funcionar. Nada disso [2] http://www.adamantix.org/
sei que o Debian Woody possui algu- pareceu ocorrer. Como isso era possível? [3] http://old.lwn.net/1998/0806/a/
mas “pegadinhas” nessa área. Poucas Uma das alternativas era a de que o PaX linus-noexec.html
bibliotecas são afetadas, mas algumas estava inoperante, ou estava realmente [4] http://pageexec.virtualave.net/
delas são extremamente importantes ativado mas não fazia nada de nada. [5] http://archives.neohapsis.com/archives/
– a zlib é um belo exemplo. Conta-se que Em vez de especular, decidi encontrar openbsd/2003-04/1362.html
versões antigas do Red Hat possuem alguma prova de (não) funcionamento. [6] http://people.redhat.com/mingo/
muitos problemas de compatibilidade Para isso, desenvolvi o paxtest. exec-shield/
com bibliotecas, embora eu nada tenha O paxtest é uma pequena coleção de [7] http://www.research.ibm.com/trl/
ouvido sobre as versões mais novas. Fiz programas de teste. Cada um deles veri- projects/security/ssp/

http://supertuxbr.blogspot.com
testes preliminares com o Debian Sarge fica um aspecto funcional do PaX. Um

www.linuxmagazine.com.br edição 06 65
PROGRAMAÇÃO Compilação cruzada

Compilando software para várias plataformas

Produto de exportação
ge
n oH
ag Apesar de ser um conceito incomum para a
cia
Lu
m:

Mo
nta
ge
maior parte das pessoas, aqueles que desen-

volvem para outras plataformas rapidamente

sentem uma necessidade de bons ambientes e

suporte para cross-compiling. POR PITER PUNK

N ão sou o que se pode chamar de OK, você me convenceu... ...mãos à obra!


“desenvolvedor multiplataforma”, Agora que já consegui convencê-lo a usar Vale lembrar que todos os softwares
mas já dei meus pulinhos, com- um cross-compiler, vamos às más notícias: utilizados são extremamente tempe-
pilando um kernel para PlayStation ramentais. Vejamos os procedimentos
(desenvolvido por uma empresa que não 1. O processo envolve aproximadamente básicos e dicas do que você pode pre-
existe mais, a runix.ru), um para ARM, meia dúzia de passos exóticos; cisar se quiser compilar programas
outro para PowerPC e uma meia dúzia de 2. Não funciona sempre, estando con- para outras arquiteturas.
softwares para Athlon64. dicionado a diversos fatores externos, Utilizamos neste artigo o binutils-
Se eu tenho todas essas máquinas? incluindo as fases da lua, o humor do 2.15.90.0.3, o gcc-3.3.4, a glibc-2.3.2 e o
Não, não tenho. E, mesmo que tivesse, presidente do Banco Central e a flu- kernel 2.4.18. O código fonte dos três
como eu iria compilar o kernel do Play- tuação no valor de títulos voláteis da primeiros foi retirado do Slackware 10.0
Station no próprio PlayStation, que não dívida externa do Zimbábue. e o kernel veio do Slackintosh 8.1. Você
tem sequer linha de comando, quanto pode tentar com versões diferentes, mas
mais um compilador? Quanto à primeira má notícia, a solução é uma questão de “sorte”.
É nessas horas que usamos um “cross- é razoavelmente simples: basta montar
compiler”, ou compilador cruzado. Fazer um “algoritmo” com os tais passos e segui- Preparando o terreno
uma compilação cruzada nada mais é los sempre que necessário. A segunda Descompacte o kernel que você baixou.
que compilar programas de uma plata- má notícia envolve bem mais trabalho, Uma boa dica é remover o link /usr/
forma em outra. Aproveitando o exem- incluindo buscas em listas de discussão, src/linux e descompactar seu kernel no
plo que citei acima, podemos compilar no Google, em ChangeLogs, em documen- /usr/src. A seguir, entre no diretório do
um kernel para MIPS R3000A (proces- tos obscuros na Biblioteca Nacional e até kernel e execute:
sador do PlayStation 1) dentro do meu mesmo o sacrifício de virgens.
PC, que usa um processador x86. A primeira coisa que você vai precisar é # make ARCH=$ARQUITETURA symlinks U
Outro uso típico da compilação cruzada baixar e instalar os softwares necessários include/linux/version.h
é em máquinas com baixa capacidade de para a compilação. Basicamente você vai
processamento. Por exemplo, um Power- precisar das binutils, o código fonte do ker- Esse comando irá corrigir os links que
Mac 5500 (com um processador PowerPC nel e o gcc, que são instalados por padrão estão dentro do /usr/src/linux/include e
603e a 250 MHz) demora cerca de uma na maioria das distribuições Linux. apontá-los para a arquitetura correta.
hora para compilar um kernel da série 2.4, Como estudo de caso, realizaremos a No meu caso, eu fi z:
mas em menos de 20 minutos meu Athlon compilação de um binário para a arquite-
já “velhinho” resolve o problema. Ou seja, tura PowerPC em uma máquina x86. Isso # make ARCH=ppc symlinks U
apesar de gastar um tempo inicial confi- irá determinar as versões de cada software include/linux/version.h
gurando o Athlon para geração de biná- que serão utilizadas (bem como os patches
rios para máquinas PowerPC, terei uma necessários). Sim, graças à segunda má Com isso, o link /usr/src/linux/
grande economia de tempo depois. Em notícia, não são todas as versões de soft- include/asm que, originalmente, apon-
alguns casos, o dispositivo alvo sequer ware que funcionam com todas as plata- tava para o asm-i386 (instruções em
tem memória suficiente para compilar formas de destino. Aliás, nem mesmo é assembler do x86) passa a apontar
coisa alguma, como o PlayStation com possível a compilação cruzada entre cer- para o asm-ppc, com as instruções em

http://supertuxbr.blogspot.com
seus parcos 2MB de RAM. tas plataformas – cada caso é um caso. assembler para o PowerPC.

66 edição 06 www.linuxmagazine.com.br
Compilação cruzada PROGRAMAÇÃO

O binutils O compilador C ARCH=ppc


Agora começa a diversão. O binutils Este é o momento de compilar o gcc.
gera vários programas importantes para Na teoria é extremamente simples. A Ah! Os nomes utilizados na compila-
a compilação. Entre eles, dois essenciais: seguinte linha de comando faz a confi- ção de outros programas nem sempre são
guração correta: os mesmos nomes utilizados no kernel,
• as – o assembler, que pega a saída do gcc como vimos agora com powerpc e ppc.
e a converte para instruções da máquina; # ./configure --target=powerpc-U Também devemos editar a linha com:
em seguida, as passa para o linker. linux --prefix=/opt/ppc U
• ld – a função do linker é juntar vários --disable-nls --disable-threads U CROSS_COMPILE =
arquivos objeto em um só, o que pos- --disable-shared --enable-U
sibilita dividir programas extensos em languages=c --with-newlib E colocar o parâmetro powerpc-linux-
pequenos pedaços e juntá-los no fi m (é, com o “-” no fi nal) após o sinal de
do processo em um único executável. As opções --target, --prefi x e --disable- igualdade. Agora siga a ordem normal
nls já são nossas conhecidas de quando de compilação:
O as e o ld são específicos para cada compilamos o binutils. Como novidades
arquitetura. Ou seja, o as para x86 não temos o --disable-threads e o --disable-sha- # make menuconfig
pode ser usado para gerar binários de red, que desabilitam, respectivamente, o # make dep
PowerPC e vice-versa. Por isso, vamos suporte a threads (que depende da glibc, # make clean
compilá-los (junto com outros progra- que nós ainda não temos) e a bibliotecas # make vmlinuz
mas importantes) para ser executados compartilhadas (idem).
em x86 e gerar código PowerPC. O --enable-languages diz quais das Opa! Essa última linha não era para
Antes de descompactar o binutils, linguagens do gcc iremos compilar. No ser make bzImage? Bom, uma das coisas
vamos prezar um pouco a organiza- nosso caso, pelo menos nesse primeiro que temos que fazer quando pensamos
ção do sistema e criar um diretório / momento, compilaremos apenas o C, não em compilar para outras arquitetu-
opt/ppc, para não misturar os nossos tendo motivo para dar suporte a outras ras é tentar se livrar dos vícios x86. O
binários com os do sistema. Após criar linguagens. O último argumento faz com zImage e o bzImage só existem porque
esse diretório, descompacte o código- que o gcc não use a glibc (que nós ainda não é possível ler diretamente arquivos
fonte do binutils, entre no diretório não temos). Depois de tudo isso, poderí- de um certo tamanho no PC. A solução
criado e digite: amos terminar o assunto com um: encontrada foi compactar o arquivo e
fazer com que ele fosse descompactado
# ./configure --prefix=/opt/ppc U # make durante a inicialização. Daí vêm os
--target=powerpc-linux U # make install arquivos zImage (Zipped Image) e o bzI-
--disable-nls mage (Big Zipped Image).
Não é? Pode até ser que para outras No PowerPC, e na maioria das outras
Esse comando confi gura o binutils arquiteturas isso seja verdade, mas para arquiteturas, geramos diretamente a
para ser instalado no diretório /opt/ o PowerPC é necessário utilizar um imagem do kernel, o arquivo vmlinux.
ppc, tendo como plataforma alvo uma patch. E, sim, é muito comum ter que Podemos verificar se o binário foi gerado
máquina PowerPC rodando Linux. O usar patches diversos: lembre-se da má corretamente utilizando o comando
--disable-nls avisa para não compilar o notícia número 2; ela nos perseguirá “fi le” para ver o tipo do arquivo:
suporte para outras linguagens além ainda por bastante tempo. No nosso
do inglês. Depois de tudo confi gurado, caso, devemos aplicar o patch gcc-3.3.1- # file vmlinux
vamos aos já clássicos: crossppc.diff, encontrado em [1]. Para vmlinux: ELF 32-bit MSB executable,U
aplicar o patch basta digitar: PowerPC or cisco 4500, version U
# make 1 (SYSV), statically linked,U
# make install # patch -p1 < gcc-3.3.1-U not stripped.
crossppc.diff
Com isso podemos já compilar pro- Pois bem: se quisermos compilar ape-
gramas em assembly do PowerPC. Depois disso, podemos rodar nova- nas o kernel, terminamos por aqui o nosso
Como a maior parte dos programas mente o make e o make install. Dessa toolkit para compilação cruzada. Porém,
está em C, é uma boa idéia ter um vez, tudo vai correr bem e teremos nem só de kernel vive o homem, mas de
compilador C, como por exemplo o nosso compilador C funcionando. todo software que puder ser compilado...
gcc. Ah! Antes de passar para o pró- Um bom teste para ele é compilar o
ximo passo, inclua o diretório /opt/ kernel do Linux, que é complexo e não Compilando a glibc
ppc/bin no seu PATH, para que possa- usa a glibc. A compilação é bem sim- Sim, se quisermos compilar outros
mos utilizar os comandos que acaba- ples: o primeiro passo é editar o arquivo softwares além do kernel, vamos pre-
mos de compilar: /usr/src/linux/Makefile. Comente a linha cisar de uma libc. A mais utilizada no
que começa com ARCH=$(sh...) e inclua mundo Linux é a GNU libc, conhecida

http://supertuxbr.blogspot.com
export PATH=$PATH:/opt/ppc/bin uma linha com o seguinte conteúdo: como glibc. Usei o código-fonte da glibc-

www.linuxmagazine.com.br edição 06 67
PROGRAMAÇÃO Compilação cruzada

2.3.2, encontrado nos CDs do Slackware Aproveitando que estamos copiando # export C_INCLUDE_PATH=/opt/ U
10. Cuidado: o procedimento de compi- coisas, vamos copiar os includes do ker- ppc/include
lação dela não é tão trivial. nel para o /opt/ppc/include. Vamos fazer # export CC=powerpc-linux-gcc
Primeiro, devemos descompactar o isso porque os programas devem ser
código (arquivo glibc-2.3.2.tar.bz2); em compilados com os mesmos includes O primeiro comando indica onde
seguida, entramos no diretório gerado de kernel com que foi compilada a glibc, devem ser encontrados os headers do
(glibc-2.3.2). Lá dentro, devemos des- e nada melhor para garantir isso que sistema; afi nal, queremos que o compi-
compactar o código-fonte da linuxthre- copiar esses arquivos agora, logo depois lador use aqueles que nós criamos para
ads (glibc-linuxthreads-2.3.2.tar.bz2): de criarmos a glibc. PowerPC. Acredite, a falta dessa linha
leva a desespero e noites mal dormidas. O
# tar -xvjf ../glibc-U # cd /opt/ppc/include segundo comando serve apenas para faci-
linuxthreads-2.3.2.tar.bz2 # cp -a /usr/src/linux/include/ U litar a vida se formos compilar várias coi-
linux . sas. A maioria dos programas e Makefi les
Ainda no diretório glibc-2.3.2, aplica- # cp -a /usr/src/linux/include/ U já reconhece a variável CC e por isso usa
mos um patch para possibilitar a compi- asm-generic . o compilador indicado. O teste é simples:
lação da glibc com o gcc 3.3.x: # cp -a /usr/src/linux/include/ U
asm-ppc asm # $CC -Wall hello.c
# zcat ../glibc.gcc33x.diff.gz U
| patch -p1 Repeteco Ele vai dar algumas mensagens de
O gcc completo usa a glibc. Enquanto erro, reclamando que o “main” não
Agora, vamos começar a trabalhar. não havia a glibc, não era possível com- pode ser “void” (e não pode mesmo),
Saia do diretório glibc-2.3.2 e crie outro pilar o gcc com ela. Por isso usamos o mas vai compilar. Agora basta checar
chamado “build” (ou o nome que você parâmetro --with-newlib na confi gura- se o arquivo gerado é para PowerPC, o
achar melhor). Entre nesse diretório e ção do gcc. Agora que temos uma glibc, que pode ser feito com o comando “fi le”,
vamos configurar a glibc: podemos também ter um gcc completo. assim como fi zemos com o kernel (vmli-
Entre de novo no diretório onde você nux) que compilamos anteriormente.
# ../glibc-2.3.2/configure U descompactou o gcc, e digite: Para garantir que nosso sistema
--prefix=/opt/ppc --target= U funciona com programas “de verdade”
powerpc-linux --host=powerpc-U # ./configure --target=powerpc-U vamos compilar um software qualquer.
linux --enable-add-ons= U linux --prefix=/opt/ppc --enable-U Escolhi o tar e peguei os sources do
linuxthreads --with-headers= U shared --enable-threads U slackware 10.0. Vamos descompactar o
/usr/src/linux/include U --enable-languages=c arquivo tar-1.14.tar.bz2 e compilá-lo:
--with-binutils=/opt/ppc/bin # make all
# make install # tar -xvjf tar-1.14.tar.bz2
Os parâmetros significam: # cd tar-1.14
O gcc será compilado, mas agora com # ./configure --host=powerpc-U
--enable-add-ons=linuxthreads , suporte a threads, bibliotecas compar- linux --target=powerpc-linux U
que adiciona e faz com que seja com- tilhadas e o que mais você achar inte- --prefix=$HOME/ppc
pilado o suporte a threads; ressante. Agora você também pode # make
--with-headers, que aponta para compilar outras linguagens além de C # make install
onde estão os includes do kernel que e fazer um sistema de desenvolvimento
estamos utilizando; e completo! Atingimos nosso objetivo! Para confi rmar, novamente usamos o
--with-binutils, que avisa onde estão comando fi le. O resultado deve ser:
instalados nossos binutils. Testando...
Depois de tudo pronto, o ideal é testar ELF 32-bit MSB executable, U
Depois de confi gurada a glibc, pode- com um programa: PowerPC or Cisco 4500, version U
mos compilá-la: make all. De prefe- 1 (SYSV), dynamically linked U
rência faça isso pouco antes de dormir, /* hello.c */ (uses shared libs), not stripped
ou quando estiver passando um fi lme #include <stdio.h>
bom na TV, já que o processo demora int main() { Missão cumprida. Agora divirta-se
bastante. Quando tudo tiver terminado, printf(“Hello World!”); compilando seus softwares favoritos
digite: make install. return(0); para rodar numa torradeira, lavadora
Por algum motivo, a glibc instala } ou no microondas. ■
vários dos seus arquivos em /opt/ppc/lib
e o gcc os procura em /opt/ppc/powerpc- Esse programa imprime na tela “Hello INFORMAÇÕES
linux/lib. Resolvi isso copiando todos os World!” (sim, não estou sendo nem um
[1] http://www.openslack.org/~piterpk/
arquivos de /opt/ppc/lib para o /opt/ppc/ pouco original). Antes de compilar,
cross/gcc-3.3.1-crossppc.diff

http://supertuxbr.blogspot.com
powerpc-linux/lib. vamos exportar as seguintes variáveis:

68 edição 06 www.linuxmagazine.com.br
Bem-vind0 à LinuxUser!
Esta é uma seção especial dedicada a destacar programas úteis e interessantes

para ajudá-lo no seu trabalho diário com o Linux no desktop. Aqui você

encontrará informações sobre como utilizar programas comuns de forma

mais eficiente, obterá um valioso embasamento técnico e conhecerá as

últimas novidades em software para seu sistema operacional favorito.

SuSE Linux 9.2 .......................................................................... 70


Temos o prazer de lhe oferecer a versão nacionaliza-
da do SuSE Linux 9.2.

Porque existem tantas distribuições? – Parte II.... 72


Depois de acompanhar a história e principais característi-
cas do Debian e do Fedora, é a vez do Gentoo e Slackware.

Leve, rápido e prático ........................................................... 75


O Fluxbox herdou as melhores características de seu pre-
decessor e acrescenta recursos úteis à área de trabalho.

A porta de entrada ................................................................ 80


Veja o que o KDM e o GDM têm a oferecer e aprenda a
configurar a tela de boas-vindas de seu sistema Linux.

Surfando sem banners........................................................ 83


Ferramentas permitem bloquear, em sua própria máqui-
na ou em toda a rede local, banners de sites Web.

Papo de Botequim ................................................................. 86


Blocos de código, laços e condicionais continuam a
ser os temas deste mês em nosso curso de shell script.
Os comandos da vez são while e until.

http://supertuxbr.blogspot.com
LINUX USER SuSE Linux 9.2 Edição Especial para o Brasil

O camaleão esbanja tropicalidade

SuSE Linux 9.2 ������������


������

Fruto do trabalho conjunto da SuSE Linux AG e da Linux

Magazine, este mês temos o prazer de lhe oferecer um CD

com a versão nacionalizada de uma das distribuições mais

cobiçadas do momento: o SuSE Linux 9.2.

����������������������
POR RAFAEL PEREGRINO DA SILVA

���������

�����
A
�����������������������������������
������������������������������������ ������������

�����
����������������������������������� ������

����
���������������������������������
����������������������������������

���
idéia nasceu durante uma con- e poderosas do �������������������������������������

���
�����������������������������������

���
versa entre alguns dos diretores mercado, o produto ������������������������������������

���
�����������������������������������

���
��������������������������������������

���
da SuSE Linux AG, da Linux da Novell é um forte

���
������������������������������������

���
����������������������������� ��

���
���
New Media AG e da Linux New Media competidor para qual- ����������������������
���
���
��� � ���
do Brasil, por ocasião da Linux World quer ambiente de traba- ���� ��
��� ���
��� ����
���� ����
Conference and Expo em Frankfurt, em lho da atualidade. Como se ����
������ � �������
�������� �����
����������������������������
outubro de 2004: “Por que não criar uma isso não bastasse, você pode dei-
versão para o Brasil do SuSE Linux, que xar seu dicionário de lado quando for
coubesse em um único CD?” O resultado usar o CD: tanto a instalação quanto o Instalação
chega a suas mãos com esta edição. conjunto de pacotes pré-instalado – que A instalação não poderia ser mais sim-
Versão atual do sistema, o SuSE conta, entre outros, com o kernel Linux ples: introduza o CD no drive apro-
Linux 9.2 tem muito a oferecer: com 2.6.8, o X.org 6.8.1, o KDE 3.3, o Open- priado, inicie seu computador e siga as
um sistema desktop totalmente inte- Office.org 1.1.3 e uma série de aplica- instruções na tela. O YaST, instalador
grado e de interface consistente, bem tivos que oferecem tudo aquilo de que da SuSE, é totalmente gráfico e inteli-
como uma das instalações mais fáceis você precisa – estão em português. gente. Não fique com receio se houver
um Windows® ou outro sistema qual-
LM06_bolachaCD.indd 1
quer instalado no seu computador: o 28.01.05 12:08:16
YaST vai lhe perguntar se você deseja
mantê-lo ou utilizar todo o disco rígido
para a instalação. Caso deseje mantê-lo
– e se houver espaço, é claro – a rotina
de instalação do sistema o guiará de
maneira simples e intuitiva através das
tarefas de redimensionamento e parti-
cionamento do seu disco. Naturalmente,
aconselhamos realizar um backup de
seus dados antes de prosseguir. Mas ao
fi nal da instalação dificilmente haverá
surpresas indesejáveis: seus sistemas
antigos estarão lá, prontinhos para ser
iniciados, ao lado do novo sistema.
Todo o reconhecimento de hardware
ocorre automaticamente. Além disso,
todas as impressoras locais ou dispo-
níveis via rede deverão estar listadas
e prontas para ser usadas por todos os
aplicativos do sistema. O mais interes-

http://supertuxbr.blogspot.com
Figura 1: SuSE Linux a seu dispor! Esperamos que você aprecie a viagem... sante é que, ao fi nal da instalação, não

70 edição 06 www.linuxmagazine.com.br
SuSE Linux 9.2 Edição Especial para o Brasil LINUX USER

Tabela 1: Principais
aplicativos pré-instalados
Função Aplicativos
Gráficos OpenOffice Draw, GIMP
Internet Konqueror, Kopete
Gerenciador de Kontact (composto pelo KMail,
Informações KOrganizer, KAddressBook,
Pessoais KNotes e KNode)
Multimídia Kaffeine, K3B, JuK e amaroK
Escritório OpenOffice.org

é necessário reiniciar o computador.


Aliás, isso não ocorre uma vez sequer
em todo o processo.
Caso haja uma conexão com a Inter-
net disponível, em um dos últimos pas-
sos da instalação o sistema chama o
YOU (YaST Online Update) e verifica se
o sistema instalado está atualizado. Por
motivos de segurança, essa atualização
é recomendada, mas prepare-se: mesmo
com uma conexão de boa velocidade, a Figura 2: Estendendo o universo de pacotes instaláveis para além do seu CD.
atualização do sistema pode demorar.
A figura 1 mostra o ambiente desktop imaginação e originalidade (sem contar dutor de vídeos capaz de ler DVDs crip-
da distribuição após a instalação ter a preguiça de procurar outro) ftp.suse. tografados via CSS (“Content Scrambling
sido fi nalizada. com. O diretório para a versão 9.2 do System”) ou que contenha decodificado-
sistema é pub/suse/i386/9.2. Vá tomar res (“codecs”) proprietários, que permi-
Software adicional um café durante a atualização da lista tam tocar formatos como QuickTime ou
A instalação deixa de fora alguns pro- de pacotes disponíveis e não se assuste WMV, apesar desses programas (codecs)
gramas que podem ser interessantes, se, ao voltar, ela ainda não tiver termi- estarem disponíveis na Internet. ■
tais como o Mozilla Firefox, o Adobe nado. Aguarde e confie! Se lhe serve de
Acrobat Reader etc. Esses programas consolo: isso só acontece quando você INFORMAÇÕES
não se encontram no CD (ver tabela 1: atualiza a fonte de instalação. [1] SuSE Linux: http://www.novell.com/
Principais aplicativos pré-instalados Depois disso, clique em Instalar e linux/suse/index.html
para saber o que está disponível por Remover software (ver figura 3), procure [2] Codecs para o Kaffeine:
padrão após a instalação do sistema). os aplicativos que deseja instalar e siga http://packman.links2linux.de/
Para quem tem um link de banda as instruções na tela. Caso as coisas ?action=046
larga, instalar software adicional no sis- não estejam claras, sempre está dispo-
tema não deve ser um problema. Basta nível a Ajuda sensível ao contexto em S.O.S
chamar o YaST novamente, escolher o português. No exemplo da figura 3 ilus- O CD-ROM que acompanha a Linux Maga-
item Modificar fonte da instalação e inse- tramos a instalação do visualizador de zine foi testado e, até onde pudemos cons-
rir na caixa de diálogo que aparecer um documentos em formato PDF da Adobe. tatar, se encontra livre de qualquer tipo de
dos diversos repositórios (FTP ou web) Como todas as distribuições comer- vírus ou conteúdo malicioso e de defeitos.
espelho da distribuição. Na figura 2 uti- ciais, a SuSE também não pode, por Não nos responsabilizamos por qualquer
lizamos como servidor, por pura falta de problemas de licença, fornecer um repro- perda de dados ou dano resultante do uso
deste CD-ROM ou de software nele inclu-
ído. A Linux Magazine não oferece suporte
técnico ao conteúdo deste CD.

Rafael Antonio Guido


SOBRE O AUTOR

Peregrino da Silva foi


chefe de pesquisa e
desenvolvimento da
Cyclades Europa. É
um dos fundadores
da Linux Magazine
Brasil e atualmente
atua, entre várias outras funções,
Figura 3: Instalando um programa a partir do Figura 4: Trailer de Guerra nas Estrelas: Episódio III
como seu editor-chefe.

http://supertuxbr.blogspot.com
repositório FTP da distribuição. reproduzido com o Kaffeine.

www.linuxmagazine.com.br edição 06 71
LINUX USER Linux e seus sabores

Emily Stone: National Science Foundation - EUA


Linux e seus sabores

Por que existem tantas


distribuições? Parte II
Na edição passada, acompanhamos a história e principais características do Debian e do

Fedora. Nesta edição, é a vez do Gentoo e do Slackware. POR SULAMITA GARCIA

O Gentoo [1] foi criado por


Daniel Robbins, que começou
usando Debian e criou uma
versão desta distribuição chamada
Enoch. O objetivo de Robbins era tornar
O Gentoo possui um Contrato Social
baseado no do Debian, porém simplifi-
cado. Esse contrato traz basicamente
as mesmas premissas do documento
que o inspirou: “O Gentoo é e perma-
de otimizações adequadas ao proces-
sador da máquina. Essa documentação
foi recentemente atualizada, em 17 de
janeiro, com uma versão voltada para
a instalação a partir do terceiro estágio
o Enoch uma distro muito rápida, que necerá Software Livre”, “o código será (stage 3) de um Live CD. O grupo Gen-
tivesse criação e atualização de pacotes devolvido à comunidade” e “não escon- tooBR [2] lançou há pouco tempo uma
completamente automatizadas. Com deremos os problemas”. Atualmente a versão em português dessa documen-
o tempo, o Enoch se distanciou tanto distribuição tem suporte às arquitetu- tação. Vale a pena conferir e também
do Debian que se tornou o Gentoo. Na ras x86, AMD64, PowerPC, UltraSparc, colaborar com outros projetos do grupo.
época em que o Gentoo chegaria à ver- Alpha and MIPS. Possui mais de 8000 A distribuição concentra-se na oti-
são 1.0, Robbins adquiriu uma máquina pacotes no seu repositório, o Portage, e mização do desempenho do sistema,
que tinha uma incompatibilidade de está na versão 2004.3.
hardware com o Linux. Por causa disso, Uma defi nição aproximada do Gen-
o projeto ficou parado por um tempo. too seria dizer que ele é um Linux From
Nesse período, Robbins começou a usar Scratch automatizado. A documenta-
o FreeBSD e se tornou fã do ports, um ção disponível no site é a melhor que
repositório de pacotes extremamente já vi, extremamente didática e deta-
eficiente, que compila os pacotes na lhada. Usuários que queiram começar
máquina por padrão antes de instalá- a usar o Linux, mesmo que com outra
los. Essa experiência serviu de inspi- distribuição, irão se beneficiar com os
ração para o Portage, repositório de tópicos sobre particionamento, siste-
pacotes do Gentoo. Logo depois o pro- mas de arquivos e formatação de dis-
blema com o hardware foi consertado e cos, confi guração e conceitos básicos
Daniel voltou ao Linux. Com a ajuda de de rede, além de compreender as vari-
outros desenvolvedores, como Achim áveis envolvidas na otimização de um Figura 1: O Gentoo é ideal para quem quer o

http://supertuxbr.blogspot.com
Gottinger, o Gentoo voltou à ativa. sistema, como por exemplo a defi nição máximo de desempenho do sistema.

72 edição 06 www.linuxmagazine.com.br
usando para isso muita automatiza- coisa que pode ser problemática: por ser
ção. O processo gira em torno da con- uma distro preocupada com otimização
figuração de parâmetros no arquivo e constante atualização, o Gentoo não
/etc/make.conf através das variáveis é lá extremamente estável. Li num site
CXXFLAGS e USE. Os CXXFLAGS são que isso se deve a um pobre sistema de
parâmetros passados ao gcc. Com eles QA – Quality Assurance (Controle de
é possível selecionar, entre outras coi- Qualidade) – que idealmente deveria
sas, seu processador. Como este artigo pegar os bugs antes do sistema ser libe-
trata de características gerais das dis- rado. Passei por problemas com a ver- CURSOS OFICIAIS
tribuições, não iremos nos aprofundar são 2004.2 em um Athlon XP instalado
nisso. A variável USE, por outro lado, a partir de um stage 1 e só consegui
irá defi nir como serão compilados os resolvê-los usando o stage 2.
pacotes a instalar. Há uma longa lista A instalação é dolorida – nunca espere
de recursos para ativar ou desativar ao gastar menos de alguns dias para ter
gosto do freguês, entre eles: Java, ALSA, um sistema funcional. Você pode gerar
criptografia, X, QT e GTK. Assim, esses pacotes com o software que está insta-
recursos serão automaticamente ativa- lando para reaproveitar mais tarde, sem
dos ou desativados, de acordo com suas ter de compilar tudo novamente. Porém,
escolhas, durante a compilação. Obvia- dois sistemas com algumas poucas con-
mente, se um pacote não tiver, por figurações diferentes não irão aproveitar
exemplo, suporte à criptografia, ativá-lo os pacotes uma da outra. Por exemplo,
ou desativá-lo não terá efeito algum. um usuário que goste de GTK e Python
A instalação do Gentoo se divide em não vai aproveitar os pacotes compila-
estágios – os stages. Eles defi nem de dos com suporte a QT e Java.
onde você vai começar a instalação. É Todavia, após alguns dias de instala-
A Conectiva acaba de lançar o módulo
possível começar diretamente do stage ção, o resultado é impressionante. Foi
3 se você quiser, porém a diversão está emocionante ver o Mozilla e o Open-
ADMINISTRAÇÃO DE REDES II
que aborda em detalhes o
em começar pelo menos do stage 2. Office.org nem sequer pensarem para
Protocolo LDAP e o Servidor SAMBA 3.
No stage 1, você irá executar o script abrir, numa máquina em que a única
bootstrap.sh, que irá compilar a libc, o coisa não compilada era o próprio Open- Agora as Formações voltadas para
gcc e vários outros programas essen- Office. Se você gosta de emoções fortes, Administradores LINUX estão mais
ciais do sistema, todos otimizados para de controlar à unha seu sistema e fazê-lo completas do que nunca. Confira !
seu processador. Isso demora bastante. render ao máximo, porém com ferramen-
O stage 2 é a compilação e instalação tas automatizadas e scripts de inicia-
do sistema básico, de acordo com as lização prontos, o Gentoo é uma ótima
confi gurações escolhidas ao se confi- pedida. Pode parecer incrível, mas exis-
Linux Systems Administrator - 3 cursos
gurar a variável USE. Você pode baixar tem pessoas, como uma colega minha, Fundamentos + Sistemas I + Sistemas II
um arquivo de stage 2 já preparado para que quando não têm o que compilar bus-
seu processador nos mirrors do Gen- cam os últimos pacotes adicionados ao Linux Network Administrator - 2 cursos
too e assim pular a parte do bootstrap. Portage só para ver seu sistema em ação. Redes I + Redes II

No stage 3, você pode escolher entre o Há loucos pra tudo. Se você é um desses,
Linux Specialist - 5 cursos
kernel da série 2.4 ou 2.6 e se quer um leia o Gentoo Handbook [9] e divirta-se. Fundamentos + Sistemas I + Sistemas II +
kernel puro ou se gostaria de usar um Redes I + Redes II
conjunto de patches de otimização. E Slackware
Linux Total - 7 cursos
todo o resto, interface gráfica, clientes O nascimento do Slackware [3] já Fundamentos + Sistemas I + Sistemas II + Redes I +
de irc, icq, serviços de rede… foi contado na primeira edição desta Redes II + Firewall + Ferramentas e Serviços
Tudo isso é feito através do emerge, a revista. Resumidamente, ele é a mais
ferramenta que resolve as dependências, antiga distribuição Linux em atividade, Benefícios dos cursos Conectiva Pro++
verifica os recursos ativados na variá- criada por Patrick Volkerding. Seu cria-
- Cursos oficiais preparatórios para os
vel USE e instala os pacotes de acordo dor atualmente enfrenta sérios proble-
exames Conectiva e LPI nível 1
com as opções ali listadas. Através dele mas de saúde, porém conta com o apoio - Instrutores certificados
é possível atualizar toda a listagem do e trabalho de vários grupos ao redor do - Material oficial com CD do Conectiva 10
sistema e os pacotes, com os coman- mundo, liderados pelo GUS-BR [4], na - Certificado oficial de conclusão

dos emerge sync e emerge world. Com o manutenção do sistema e na torcida


emerge, também se podem baixar paco- pelo seu pronto restabelecimento.
tes binários, o que às vezes é aconse- Na primeira vez que ouvi falar do
lhável, como no caso do OpenOffice. Os Slackware, soube que era uma distri-

http://supertuxbr.blogspot.com
pacotes são constantemente atualizados, buição para hackers. Um pouco mais

edição 06 73
LINUX USER Linux e seus sabores

Alguns programas, entretanto, fazem


essa verificação por conta e risco do
autor, como o swaret e o slapt. Outro
software, o slackpkg [5], apenas con-
sulta a listagem de pacotes de um mir-
ror escolhido, verifica versões, instala
ou atualiza pacotes, de acordo com o
comando escolhido.
Os pacotes são feitos com base nos
SlackBuilds, scripts que compilam o
Figura 2: Até hoje o Slackware é "trabalho de um homem só", Patrick Volkerding. software e formatam um pacote de
acordo com o padrão oficial. Eles estão
adiante, que era uma distribuição para o PAM. Volkerding tem uma profunda sempre disponíveis junto aos fontes
machos. Estou aqui para demonstrar aversão ao PAM e prefere deixar tudo do Slackware. Com eles, é fácil modi-
que essa segunda premissa não é ver- simplificado pelo NSS. O ciclo de desen- ficar alguma opção de compilação fal-
dadeira. O Slackware simplesmente volvimento é de aproximadamente 6 tante ou excedente, como por exemplo
assume que o administrador tem o con- meses entre as versões. A fi losofia da suporte a algum recurso que não venha
trole do sistema e que sabe o que está distribuição é sempre estar concentrada por padrão em um pacote.
fazendo. Como disse Piter Punk em uma na simplicidade e estabilidade. A ver- O Slackware também tem uma versão
de suas palestras, ele “resgata o pra- são atual, 10.0, trouxe algumas novida- super reduzida, chamada ZipSlack, que
zer da leitura”. O sistema é indicado des, como o suporte ao UDEV (que irá pode ser instalada em qualquer partição
para usuários novatos ou experientes, substituir o devfs), sistema /sys (que irá FAT (ou FAT32) com 100Mb de espaço
desde que tenham, porém, vontade substituir o /proc) e atualizações gerais. livre e utiliza o sistema de arquivos
de entender o funcionamento do sis- O kernel 2.6 continua no diretório tes- UMSDOS. Isto significa que você não
tema e desejem total controle sobre o ting, não tendo sido oficialmente incor- precisa reparticionar seu HD e instalar
que está sendo instalado e configu- porado à distribuição. tudo para testar o Linux e conhecer a
rado em sua máquina. Tudo isso com Os scripts de inicialização do Slackware cara do Slackware.
extrema simplicidade. seguem o padrão BSD; todos ficam no dire- Com tudo isso, espero ter fornecido
Conhecido por sua estabilidade, um tório /etc/rc.d/. Os scripts principais, que uma visão geral das distribuições
dos grandes segredos do Slackware se carregam o sistema de acordo com o run- e que alguma tenha lhe chamado a
deve ao fato de ser a única distribuição level escolhido, verificam as permissões atenção. Ao download! ■
que não aplica patches nem adaptações de execução dos scripts de serviço (como
aos softwares que distribui. E também rc.httpd, rc.sshd) e os executam, se permi- INFORMAÇÕES
de sempre lançar versões com pacotes tido. Para desativar a execução de um ser-
[1] Gentoo: http://www.gentoo.org
atualizados e manter um rápido sistema viço no boot, basta remover a permissão
[2] Gentoo-BR: http://www.gentoobr.org
de atualização, caso surjam problemas de execução do script correspondente.
[3] Slackware: http://www.slackware.org
de segurança. O gerenciamento de pacotes é feito
A instalação é toda em modo texto e os pelo pkgtool e seus agregados: install- [4] GUS-BR: http://gus-br.linuxmag.com.br/
pacotes são divididos em séries: A (ins- pkg, removepkg, upgradepkg, makepkg e [5] Slackpkg: http://slackpkg.sourceforge.net/
talação base), AP (aplicações básicas de explodepkg. Essas ferramentas já foram [6] Swaret: http://swaret.sourceforge.net
sistema), D (desenvolvimento), K (fon- melhor detalhadas nas edições 1 e 2 da [7] Slapt-get: http://software.jaos.org
tes do kernel), N (rede), KDE, GNOME, Linux Magazine Brasil. Resumidamente, [8] Trabalhando com o Portage: http://www.
L (bibliotecas), X, XAP (aplicações servem para instalar, remover, atuali- gentoo.org/doc/pt_br/handbook/
handbook-x86.xml?part=3&chap=0
gráficas). Depois de escolher as séries zar ou construir pacotes do Slackware.
que deseja instalar, você seleciona o Esses pacotes têm um formato bastante [9] Gentoo Handbook (em Português):
http://www.gentoo.org/doc/pt_br/hand-
nível de controle que quer ter sobre os simples: são arquivos tar.gz contendo book/index.xml
pacotes instalados: modo expert (todos os binários, bibliotecas e demais arqui-
os pacotes podem ser selecionados ou vos que compõem o software, mais um
desativados), menu (pacotes essenciais script para executar algum comando Sulamita Garcia é
formada em Ciências
SOBRE A AUTORA

ao sistema não são mostrados), full necessário após a instalação e a des-


da Computação pela
(instalação completa) ou por tagfiles. A crição do software. Uma listagem des-
UFSC, onde conheceu
instalação pode ser feita por CD ou atra- ses arquivos, junto com a descrição, é o Linux. Participa do
vés da rede, via FTP ou NFS. colocada no diretório /var/log/packages, projeto LinuxChix
O desenvolvimento do Slackware é num arquivo que leva o nome do pacote. e mantém a seção
feito exclusivamente por Volkerding. Isso serve para consultas rápidas sobre sobre Alta Disponi-
bilidade do site UnderLinux. Possui
Ele toma as decisões do que entra ou versões e arquivos instalados.
certificação LPIC II e trabalha como
não na distribuição. O que implica, por O Slackware, por defi nição, não veri- Software Designer na Cyclades.

http://supertuxbr.blogspot.com
exemplo, no fato da distro não utilizar fica as dependências entre pacotes.

74 edição 06 www.linuxmagazine.com.br
Fluxbox LINUX USER

O Gerenciador de Janelas Fluxbox

Leve,
rápido,
prático
Velocidade é um traço de família. O Fluxbox herdou as melhores características de seu predecessor,

o Blackbox, e acrescenta alguns recursos úteis à área de trabalho. POR ANDREA MUELLER

T er dons de programação é algo


fantástico. Não importa se seu
aplicativo favorito é chato demais,
extravagante ou carece de algumas
opções – um punhado de linhas de
poníveis. Boa notícia para os usuários
do SuSE Linux 9.0 – embora a SuSE não
disponibilize RPMs, os pacotes do Man-
drake funcionarão de maneira bastante
satisfatória. Os usuários do Debian fica-
O gerenciador de janelas em si tem
caráter frugal e demanda apenas os
pacotes de desenvolvimento do XFree86,
da libpng e da freetype. Se você usa
regularmente os aplicativos do KDE,
código trará os recursos de que você rão felizes em saber que o Fluxbox está pode preferir substituir o ./confi gure
precisa. Henrik Kinnunen viu-se exata- no repositório oficial, acessível com o por ./confi gure --enable-kde. Isso faz
mente nessa situação há algum tempo. comando apt-get install fluxbox. com que o Fluxbox exiba os programas
O Blackbox [1] era seu gerenciador de Não dá para compilar o Fluxbox 0.9.9 do KDE que geralmente são iconizados
janelas favorito, mas ele precisava (ou versões anteriores) com o gcc 3.3 no kicker, a barra de tarefas do KDE. Só
acrescentar algumas coisas para ficar ou posterior. Se você tem a versão 8.2 que, como não estamos no KDE mas no
realmente satisfeito. Em vez de reinven- ou 9.0 do SUSE Linux ou 9.2 ou 10.0 do Fluxbox, usa-se o Slit, uma barra para
tar a roda, Henrik começou a trabalhar Mandrake Linux, ou qualquer outra os dockapps do WindowMaker. Assim,
no código fonte do Blackbox 0.61.1, adi- distro baseada no gcc 3.3, deve usar aplicativos “K” como o gerenciador
cionou alguns recursos convenientes e a versão 0.9.10 ou posterior (quando de área de transferência klipper ou o
apresentou sua criação, o Fluxbox [2]. escrevíamos este artigo a mais atual era guarda-chaves kgpg, para o sistema de
0.9.11). Siga os passos de costume para assinatura digital GnuPG, podem ser
Instalando o Fluxbox compilar e instalar o Fluxbox: usados e minimizados numa bandeja
O modo mais rápido de instalar o Flu- como de costume.
xbox é usar pacotes RPM (ou DEB, se ./configure ; make ; su -c U
você usa o Debian), se estiverem dis- make install-strip Apertem os cintos:
decolagem autorizada!
Glossário Depois de instalar o Fluxbox, temos que
integrar esse novo ambiente gráfico ao
gcc: O compilador C da GCC (GNU Compiler Collection). Traduz o código fonte de programas para um
nosso gerenciador de login (veja artigo
formato compreensível para a máquina, criando assim um executável a partir de um arquivo de texto.
à página 80). A boa notícia é que se
Dockapps do WindowMaker: Mini-aplicativos [3] especialmente projetados para o ambiente
gráfico WindowMaker (http://www.windowmaker.org/), criado pelo brasileiro Alfredo Kojima.
você o instalou por meio de um pacote
Esses aplicativos rodam em segundo plano e podem ser acessados por um ícone em uma barra de oficial da sua distribuição, isso já deve
programas comumente chamada de dock (doca ou atracadouro). ter sido feito automaticamente.
GnuPG: O “GNU Privacy Guard” (GnuPG ou GPG) é um programa que criptografa de forma segura Se instalou manualmente, entretanto,
vários tipos de dados. O sistema permite que apenas pessoas autorizadas consigam decifrar esses será necessário editar, também manual-
dados, protegendo documentos e mensagens de email contra o “olho grande” de espiões durante mente, a confi guração de seu gerencia-
o trajeto – da mesma forma que um envelope protege o conteúdo de uma carta no correio “de
dor de login.
verdade”. Para que isso seja possível, é necessário o uso de chaves de criptografia GnuPG [4] para
cifragem e decifragem das mensagens. Se você entra no sistema em modo
Gerenciador de Login: Programa que pede aos usuários que informem nome e senha. Caso estejam
texto, adicione a linha:
cadastrados, libera acesso ao ambiente gráfico escolhido, que de outra maneira estaria bloqueado.

http://supertuxbr.blogspot.com
exec /usr/local/bin/fluxbox

www.linuxmagazine.com.br edição 06 75
LINUX USER Fluxbox

Meus Glossário
Figura 1: A barra de tarefas do Fluxbox, com seu seletor de áreas de traba-
programas
Menu de contexto: Um menu que surge
lho e o infalível relógio no cantinho. O menu de con-
quando se pressiona o botão direito do mouse
texto, que possui sobre uma região específica dentro de uma
em seu arquivo ~/.xinitrc. Desta uma bela seleção de programas pré- janela. O menu mostrado contém opções
forma, o comando startx carregará confi gurados, facilita o acesso ao que exclusivas daquele objeto clicado. Normal-
o Fluxbox. o usuário realmente precisa (ver figura mente, uma das opções mostradas reflete
exatamente o que o usuário quer fazer.
3). Os dois primeiros itens chamam um
Primeiros Passos emulador de terminal e um navegador Tema: Um método de alterar a aparência
geral da área de trabalho e dos programas
O Fluxbox é bastante direto em sua de Internet. Qual navegador e emulador que rodam nela. Os temas são como uma
comunicação com o usuário. Há uma de terminal será chamado depende do coleção de roupas para o ambiente gráfico.
barra de tarefas com um relógio e um que estiver instalado no sistema.
seletor de áreas de trabalho, normal- O Fluxbox possui um programi-
mente quatro (ver figura 1). Programas nha chamado fluxbox-generate_menu. Se a janelinha preta com letras bran-
iconizados são também exibidos nessa Ele “fareja” os menus existentes atrás cas do shell e o navegador de Internet
área. É possível usar os botões com de aplicativos, que são gravados no escolhidos pelo Fluxbox não lhe agra-
setas para navegar entre as diversas arquivo ~/.fluxbox/menu. Isso ocorre dam, mais uma vez o comando flux-
áreas de trabalho; mas, se o usuário automaticamente na primeira vez em box-generate_menu – desta vez com os
estiver realmente com pressa, pode usar que o usuário entra no Fluxbox. parâmetros -t e -b – salvará o dia:
a “rodinha” do mouse, caso possua um
modelo desse tipo. fluxbox-generate_menu -t U
Para modificar esses padrões, clique konsole -b konqueror -p U
com o botão direito do mouse na barra /usr/local/share
de tarefas para ter acesso ao menu de
confi guração. Os itens sob Placement Com isso, o emulador de termi-
defi nem a posição da barra de tarefas. nal konsole e o navegador Konqueror,
Há seis posições predefi nidas, desde o ambos programas do KDE, serão adicio-
canto superior esquerdo (Top Left) até nados ao menu.
o canto inferior direito (Bottom right), Figura 3: Durante o processo de compilação, o
passando pelo centro (ver figura 2). Fluxbox modifica o menu para refletir os pro- Grupos
gramas e configurações que estão realmente Com relação ao comportamento das
instalados no sistema. janelas, o Fluxbox é muito semelhante
a qualquer outro ambiente gráfico. Um
Figura 2: Onde você quer a barra mesmo? Uma ferramenta pequena e muito útil, clique transfere o foco para a janela. As
o fbrun, não é encontrada por padrão. barras de título das janelas possuem
Para que as janelas dos aplicativos não Ela mostra uma caixa de diálogo para botões bem conhecidos para travar,
escondam a barra de tarefas, é interes- rodar comandos arbitrários – como o minimizar, maximizar e fechar.
sante habilitar a opção Always on top (sem- menu “Executar” do Windows e do As abas na parte superior esquerda da
pre no topo). A opção Auto hide (esconder KDE. Para forçar sua instalação, digite: barra de janelas (ver fi gura 4) são um
automaticamente) faz com que a barra de recurso especial que permite associar
tarefas desapareça se não estiver em uso. fluxbox-generate_menu -p U múltiplos programas a um único “invó-
Não se preocupe: ela surgirá magicamente /usr/local/share lucro”. O princípio de funcionamento
se o ponteiro do mouse passar próximo à é o mesmo do pwm [5], um gerencia-
posição que ela ocupa. A ativação simul- Isso colocará o fbrun no nível mais dor de janelas mais antigo e limitado.
tânea dessas duas opções permitirá o uso alto do menu. A opção -p /usr/local/ Arraste a aba com o botão do meio do
integral da tela pelos aplicativos, aumen- share é importante se o Fluxbox for mouse até a janela de destino. Ao soltá-
tando a área útil. Sempre que preciso, bas- compilado em casa. Por padrão, o la, a janela agora conterá duas abas,
tará mover o mouse para o canto da tela e ambiente gráfico procura por suas cada uma com um aplicativo diferente.
lá estará a barra de tarefas. confi gurações e temas no diretório Para desacoplar a aba de uma janela,
Para defi nir nomes diferentes para /usr/share. Entretanto, como com- simplesmente arraste-a e solte sobre a
cada uma das áreas de trabalho – per- pilamos a partir do código-fonte (e, área de trabalho.
mitindo assim que ela seja facilmente portanto, não é um pacote oficial da
distinguível das demais – selecione a distribuição) o Fluxbox está insta-
opção Edit current workspace name (edi- lado no diretório /usr/local/share. Se
tar o nome da área de trabalho atual). o caminho não for explicitamente
No seletor, os nomes padrão (one, two indicado, nenhum dos diversos
etc.) serão substituídos pelo novo nome temas incluídos será mostrado no Figura 4: As abas permitem que vários progra-

http://supertuxbr.blogspot.com
que você informar. menu de configurações. mas sejam agrupados em uma única janela.

76 edição 06 www.linuxmagazine.com.br
Fluxbox LINUX USER

a declaração sessiongroupFile:. Só falta,


então, incluir o caminho para o arquivo
groups que acabamos de criar:

sessiongroupFile: U
/home/andi/.fluxbox/groups

O comando fluxbox-menu | Reload


Confi g, presente no menu principal do
Fluxbox, permite que o ambiente grá-
fico releia seus arquivos de confi gura-
ção e aplique as mudanças sem que seja
necessário reiniciar.

Configurações
O item fluxbox-menu no menu principal
também é o lugar para alterar o compor-
tamento do gerenciador de janelas. Os
apreciadores do modelo de “foco desor-
denado”, em que a janela ganha foco ao
passar o mouse em cima sem clicar, vão
Figura 5: Adaptável sem perder o estilo: seu ambiente gráfico preferido vestido com o tema da maison Fluxarnation. gostar da opção configure | Focus Model
| Sloppy Focus. Para que as janelas que
O trabalho de arrastar as janelas O Mozilla causou problemas ao xprop, ganham o foco sejam enviadas para a
para agrupá-las é meio chato, não é? mostrando uma mensagem de classe frente de todas as outras, é necessário
Para facilitar, as abas possuem atalhos desconhecida (class unknown). A linha ativar a opção Auto Raise.
úteis. Clique com o botão direito sobre abaixo no arquivo groups permite que o O menu Tab Placement permite
elas para mostrar o menu principal. Os Konqueror e o Quanta automaticamente que as abas sejam posicionadas em
programas iniciados por esse menu não compartilhem uma janela. 16 locais diferentes. As mais interes-
serão abertos em suas próprias janelas, santes são as que incluem a palavra
mas numa aba da mesma janela. quanta konqueror Relative. Há um item desses para cada
Não está fácil o bastante? Se você borda da janela. A opção Left Relative
quer que alguns programas sempre Agora basta informar ao Fluxbox que irá atracar as abas na borda esquerda
compartilhem a mesma janela, crie o arquivo contém as defi nições de grupo. da janela. Se dois programas forem
um arquivo chamado .fluxbox/groups O lugar apropriado para isso é o ~/.flu- agrupados, cada aba ocupará 50% da
no seu diretório pessoal (home). Adi- xbox/init. A última linha já deve possuir altura da janela.
cione os nomes das classes de janelas
que quer criar, um para cada pro- Listagem 1: Atalhos de teclado para
grama. Cada nome deve estar em uma o arquivo ~/.fluxbox/keys
linha. A ferramenta xprop informa o
# Use [Alt-Ctrl-Seta para a direita] e [Alt-Ctrl-Seta para a esquerda]
nome da classe para um determinado
# para alternar entre áreas de trabalho.
programa. Digite:
Mod1 Control Right :NextWorkspace
Mod1 Control Left :PrevWorkspace
xprop WM_CLASS
# [Alt-Ctrl-Enter] abre uma janela de terminal
Mod1 Control Return :ExecCommand xterm
O ponteiro do mouse transforma-se
# [Alt-x] fecha a janela ativa
numa mira. Clique na janela cujo nome
Mod1 x :Close
de classe quer descobrir. O resultado
# [Alt-m] maximiza e restaura uma janela
mostrado no exemplo refere-se ao editor
Mod1 m :MaximizeWindow
HTML do KDE, o Quanta:
# [Alt-s] “enrola” a janela, reduzindo-a a sua barra de título
Mod1 s :ShadeWindow
WM_CLASS(STRING) = U
# [Alt-d] liga e desliga as decorações das janelas
"quanta", "quanta"
Mod1 d :ToggleDecor
# Para maníacos por Emacs: também é possível associar
e, para o Konqueror
# seqüências de teclas. Em nosso exemplo, [Alt-y] [Alt-c]
# chamará o Mozilla.
WM_CLASS(STRING) = U
Mod1 y Mod1 c :ExecCommand mozilla

http://supertuxbr.blogspot.com
"konqueror", "konqueror"

www.linuxmagazine.com.br edição 06 77
LINUX USER Fluxbox

Glossário as opções fluxbox-menu | System Sty- ser mudado: o applet Direction altera a
les e fluxbox-menu | User Styles do orientação, entre vertical ou horizon-
Monitor do sistema ACPI: Um programa
menu principal. tal. Placement possui as mesmas opções
que mostra a carga da bateria ou a tem-
peratura do processador de um laptop, por discutidas antes para a barra de tarefas,
exemplo. O hardware tem que, obrigatoria- Feitiçaria e teclados permitindo escolher a posição na tela.
mente, ser compatível com o sistema ACPI Amantes do teclado vão se apaixonar Infelizmente, os práticos recursos de
(“Advanced Configuration and Power Inter- pelo Fluxbox. Uns poucos atalhos de “Auto hide” e “Always on top” não estão
face”) para tal e, necessariamente, precisa de
teclado estão definidos por padrão, disponíveis no Slit.
uma distribuição Linux atual, configurada
com suporte a ACPI. Veja a edição número como por exemplo [Alt-Tab] para alter- Todas essas conveniências fazem do
05 da Linux Magazine. nar entre janelas e [Alt-F1] até [Alt-F12] Fluxbox mais do que uma belíssima
para alternar entre áreas de traba- opção para apreciadores de ambientes
lho. Entretanto, basta editar o arquivo gráficos leves. De fato, o Fluxbox é uma
Se preferir não usar abas, desabilite ~/.fluxbox/keys com o editor de tex- tentação mesmo para os fanáticos pelos
o item Use Tabs. Para ver o conteúdo tos de sua preferência e adicionar tan- onipresentes KDE e Gnome. ■
da janela enquanto a estiver movendo, tos atalhos quantos sua imaginação e
ative Opaque Window Moving. necessidades exigirem. Após quase dois anos
Cada atalho de teclado deve estar em como jornalista inde-
Requinte e estilo pendente, Andrea

SOBRE A AUTORA
uma linha, no formato:
Mueller agora tra-
Os itens sob fluxbox-menu | Styles per- balha como editora
mitem alterar a aparência do ambiente. atalho de teclado :ação para a Linux New
O Fluxbox possui nativamente uma Media AG.
coleção de mais de 20 temas. Os fãs do O atalho de teclado deve conter pelo Quando não está
Blackbox apreciarão o tema Artwiz. Já menos uma tecla modificadora como lidando com artigos ou empacotando
software, ela gosta de ir além do
Lemon Space parece exalar a fragrân- o [Alt] (o arquivo de confi guração o
Linux, e se envolve com outros siste-
cia refrescante da primavera, enquanto chama de Mod1) ou Control (Ctrl em mas operacionais, como o QNX, BeOS
Blue é um tema futurista. Se nenhum alguns teclados) e uma tecla adicional. e NetBSD.
deles lhe agradar, um mundo de novos Consulte a seção KEYS FILE na página
temas pode ser baixado de [6], alguns de manual do Fluxbox para descobrir
deles maravilhosos (ver figura 5). quais ações são reconhecidas. A con- INFORMAÇÕES
Será necessário criar um diretório fi guração com comentários mostrada [1] Blackbox:
chamado ~/.fluxbox/styles para gra- na listagem 1 traz alguns truques úteis http://sourceforge.net/projects/blackboxwm/
var os temas baixados da Internet, para o arquivo keys.
[2] Fluxbox: http://fluxbox.sourceforge.net/
embora alguns deles façam isso auto-
maticamente ao serem descompac- O estranho mundo dos applets [3] Artigo sobre dockapps: Joachim Moska-
lewski, “DockApps”, Linux Magazine
tados. Se o tema possuir seu próprio No início do artigo, nos referimos a
Internacional, Edição 3, página 128:
papel de parede, será necessário tam- um tal de Slit, a barra que abriga dock- http://www.linux-magazine.com/
bém criar o diretório ~/.fluxbox/back- apps do WindowMaker [3] e applets do issue/03/Dockapps.pdf
grounds. Depois de criar o diretório e Afterstep [7] e do KDE. Não o discuti-
[4] Artigo sobre GnuPG: Patricia Jung, “Key
colocar o tema dentro, basta acessar mos em detalhe então; afi nal, o Slit está Signing Party”, Linux Magazine Interna-
lá, aguardando fiel- cional, Edição 35, página 45:
mente em seu posto http://www.linux-magazine.com/
no canto inferior issue/35/Using_GnuPG_Keys.pdf
direito. Quando um [5] PWM:
programa é iniciado http://modeemi.cs.tut.fi/~tuomov/pwm/
– por exemplo, o [6] Temas para o Fluxbox:
monitor do sistema http://fluxbox.sourceforge.net/themes.php
bubblemon [8] e [7] Applets para o Afterstep: Andrea Müller,
o monitor do sis- “Docked”, Linux Magazine Internacional,
tema ACPI do KDE, Edição 41, abril de 2004, página 78
o akpi [9], ambos [8] Utilitários para desktop: Andrea Müller,
os programas se “Aquatic Utilities”, Linux Magazine Inter-
acomodarão alegre- nacional, Edição 31, página 78:
mente no Slit. http://www.linux-magazine.com/
Se não gostar da issue/31/BubbleMon_WMFishTime.pdf
posição padrão do [9] Akpi: http://akpi.scmd.at/
Slit, na vertical e no [10] gkrellm: http://www.gkrellm.net
Figura 6: Combine o Fluxbox com utilitários como o gkrellm e desklaunch canto direito da tela,
[11] Desklaunch: http://www.oroborus.org

http://supertuxbr.blogspot.com
para conseguir um desktop bonito, leve e funcional. isso também pode

78 edição 06 www.linuxmagazine.com.br
http://supertuxbr.blogspot.com
LINUX USER Gerenciadores de Login: KDM e GDM

Configurando o KDM e GDM

A porta de
entrada
Tanto o KDE quanto o GNOME possuem gerenciado-

res de login. Vamos olhar o que o KDM e o GDM têm

a oferecer e aprender a configurar a tela de boas-vin-

Jenny W.: www.sxc.hu


das de seu sistema Linux. POR HAGEN HÖPFNER

N a maioria dos sistemas opera-


cionais, o gerenciador de login
é o primeiro programa gráfico
que o usuário vê. Muitas distribuições
iniciam o servidor gráfico (o X Window
pelo KDE podem usar o GDM para se
logar no sistema usando seu ambiente
gráfico favorito. A única desvantagem é
que instalar o GDM coloca uma grande
quantidade de bibliotecas do Gnome no
o GDM pode-se simplesmente instalar
o pacote gdm no Fedora Core 2, SuSE e
Mandrake, o KDM é encontrado numa
miríade de pacotes RPM. No SuSE, por
exemplo, o pacote é chamado kdebase3-
System) automaticamente após o boot. disco rígido, ocupando espaço valioso. kdm; o Mandrake o chama kdebase-kdm
O usuário digita seu nome e senha e Este artigo explica como mudar o geren- e os usuários do Fedora devem procurar
entra no sistema, depois de selecionar o ciador de login padrão no Fedora Core 2, por kdebase.
ambiente gráfico de sua preferência. No SuSE Linux 9.1 e Mandrake Linux 10.0. No Mandrake e no SuSE, é possível
gerenciador de login também é possível Também explicamos como adicionar que o usuário nem veja o gerenciador de
disparar outras ações, como desligar a mais gerenciadores de janelas e ambien- login, pois há a opção de selecionar um
máquina ou reiniciá-la. tes gráficos ao menu de inicialização. usuário para login automático quando
O KDM, do projeto KDE, e seu “rival” da instalação do sistema. Isso pode ser
no Gnome, o GDM, são os dois geren- Primeiros Passos aceitável para máquinas com apenas um
ciadores de login mais populares do A maioria das distribuições Linux con- usuário, já que provavelmente esse usu-
mundo Linux, mas há outras alternati- fi gura um gerenciador de login já na ário vai usar sempre o mesmo ambiente.
vas, como o ancião XDM e o minúsculo instalação. O SuSE e o Mandrake usam Entretanto, há algumas desvantagens.
WDM. O gerenciador de login não tem o KDM por padrão (fi gura 1); o Fedora Por exemplo, se mudar de idéia, é difícil
influência alguma nos ambientes gráfi- usa o GDM (fi gura 2). Para experimen- para o usuário alterar o ambiente grá-
cos instalados na máquina; em outras tar um novo gerenciador de login, deve- fico em uso. Outro exemplo: qualquer
palavras, mesmo os maiores aficionados se, primeiro, instalá-lo. Enquanto para um tem acesso a seus dados e docu-

http://supertuxbr.blogspot.com
Figura 1: A tela de login do KDM rodando no SuSE. Figura 2: O GDM dá as boas-vindas aos usuários no Fedora Core 2.

80 edição 06 www.linuxmagazine.com.br
Gerenciadores de Login: KDM e GDM LINUX USER

mentos apenas ligando a máquina, já config/. Se você


que nenhuma senha é necessária. preferir um editor
Para desabilitar o autologin no SuSE, de textos comum,
selecione a opção etc/sysconfig/Editor no simplesmente edite
YaST. Ela está na categoria System (Sis- a va r iável DIS-
tema). Edite a opção Desktop | Display PLAYMANAGER no
manager | DISPLAYMANAGER_AUTO- arquivo /etc/syscon-
LOGIN, apagando o nome do usuário no fig/displaymanager.
campo à direita.
No Mandrake usa-se o drakconf. Cli- Domando o
que em Autologin na seção Boot e altere KDM
o padrão para No, I don’t want autologin Cada distribuição
(Desabilitar autologin). Certifique-se de ajusta o KDM para
que a opção Launch the graphical envi- que se comporte
ronment when your system starts (Entrar de uma determi-
em modo gráfico quando o sistema ini- nada maneira. No Figura 3: O SuSE oferece aos usuário todas as opções do KDM em uma única tela.
cia) esteja ligada. Se essa opção estiver SuSE, por exemplo,
desligada, o Mandrake não vai iniciar o KDM, além de pedir aos usuários que Centro de Controle para essas eventua-
em modo gráfico, forçando o usuário a informem seu login e senha, possui um lidades, mas infelizmente ele foi remo-
logar-se em modo texto e digitar startx menu que permite selecionar o tipo de vido do KDE 3.2. Agora, é necessário
para usar o KDE. sessão, além de funções para reiniciar que o usuário entre como root e crie
o servidor X e desligar (Shutdown) a manualmente um script de sessão para
GDM e KDM: máquina (figura 3). o novo ambiente gráfico – em nosso
uma questão de escolha O Mandrake espera que o usuário caso, o qlwm. Esse script é simples-
Para alterar o gerenciador de login selecione da lista um nome de login e, mente um arquivo texto contendo parâ-
padrão, é preciso fazer algumas altera- em seguida, mostra uma caixa de diá- metros para o ambiente em questão. O
ções “à mão” tanto no Mandrake quanto logo (fi gura 4) para que os usuários SuSE armazena esses scripts em /opt/
no Fedora Core 2. Ambas as distribui- escolham o ambiente gráfico que dese- kde3/share/apps/kdm/sessions/; o Man-
ções usam o arquivo /etc/X11/prefdm jam usar. O KDM do Fedora é o que drake e o Fedora Core 2 procuram em
para chamar o programa de login grá- possui a interface mais simples, mas /usr/share/apps/kdm/sessions/. Crie um
fico. O prefdm lê as configurações para comporta-se como o do SuSE. arquivo para o novo ambiente – qlwm.
o gerenciador de login a partir de uma Todas as três variações permitem que desktop em nosso exemplo (a extensão
variável de ambiente chamada DISPLAY- o usuário se registre no sistema, mas há .desktop é obrigatória) – e, dentro dele,
MANAGER. O arquivo /etc/sysconfig/ pelo menos uma boa razão para mudar digite os dados a seguir:
desktop configura o valor dessa variável. o padrão. O tipo de sessão é baseado nos
A linha que defi ne o programa de login ambientes gráficos pré-instalados (KDE, [Desktop Entry]
gráfico será DISPLAYMANAGER="kdm" Gnome, Window Maker, IceWM...). Se Encoding=UTF-8
para o gerenciador de login do KDE ou o usuário instalar outro ambiente, o Type=XSession
DISPLAYMANAGER="gdm" para o do gerenciador de login não o mostrará na Exec=/usr/local/bin/qlwm
Gnome. Assim que o servidor gráfico lista de ambientes disponíveis, a menos TryExec=/usr/local/bin/qlwm
for acionado, o gerenciador de login que que a própria distribuição tenha inclu- Name=QLWM
você configurou será mostrado. ído um script para
O Mandrake esconde um “segredi- isso. KDM e GDM
nho”. A distribuição francesa oferece ignoram ambientes
duas variantes do KDM: uma versão sem esse script.
modificada, específica do Mandrake Por e x e m p l o,
e usada por padrão (Figura 4) e a ver- supon ha que o
são original, intocada. Se o valor kdm usuário instalou o
for atribuído à variável DISPLAYMA- gerenciador de jane-
NAGER, o KDM original é mostrado. A las qlwm. Para dizer
versão modificada do Mandrake será ao KDM para que
usada se a linha apropriada em /etc/ adicione o qlwm na
sysconfi g/desktop for modificada para lista de ambientes
DISPLAYMANAGER=“KDE”. disponíveis, é pre-
Os usuários do SuSE devem usar o ciso criar um novo
/etc/sysconfi g/Editor no YaST. Essa fer- tipo de sessão. O
ramenta é, na verdade, uma interface KDE costumava ter

http://supertuxbr.blogspot.com
para acesso fácil ao diretório /etc/sys- um menu em seu Figura 4: O KDM no Mandrake – passo a passo.

www.linuxmagazine.com.br edição 06 81
LINUX USER Gerenciadores de Login: KDM e GDM

Pronto! Da próxima vez que alguém lha System administra-


se logar no sistema, o KDM oferecerá a tion | Login manager
opção de usar o QLWM. O tipo de sessão (Adm in ist ração do
é defi nido pelo parâmetro Name= – em sistema | Gerencia-
nosso caso, QLWM. O sistema assume dor de login – veja a
que há um arquivo chamado /usr/local/ figura 5). Além do
bin/qlwm e que o arquivo é executável ajuste fino na apa-
(TryExec). Agora basta selecionar QLWM rência (Appearance
como tipo de sessão ao informar nome e / Font / Background
senha e o KDM irá iniciar o ambiente – Aparência / Fonte /
gráfico apropriado – ou seja, o programa Fundo), há três abas
indicado na linha que começa com Exec. com opções gerais. A
O KDM classifica a lista de ambientes aba Shutdown per-
gráficos em ordem alfabética de acordo mite especificar quais
com o nome do script. Para que o QLWM usuários podem ligar,
seja o primeiro item da lista, renomeie o desligar e reiniciar o Figura 6: O programa de configuração do GDM.
script para 00qlwm.desktop. computador. Já em
Users – Usuários você defi ne quais das figuração vai ficar ou não disponível na
De roupa nova contas aparecerão na lista de usuários tela de login. Entretanto, a opção Allow
Se você não está muito satisfeito com que o KDM mostra. configuration from the login screen (Per-
a maneira como o KDM se apresenta, Para mais detalhes sobre a confi gu- mitir confi guração a partir da tela de
que tal “maquiá-lo” um pouquinho? ração do KDM, há mais material dispo- login) no Fedora Core 2 não faz o que
No Centro de Controle do KDE, esco- nível em [1]. Infelizmente, o manual promete: ainda não há um botão para
do KDM não está atualizado, embora o gdmsetup no login. O tema do GDM
GLOSSÁRIO supostamente devesse abordar a ver- para o Fedora Core 2 é o responsável. Se
são 3.3 do KDE. um tema diferente for escolhido – o que
XDMCP: Acrônimo para X Display Manager
pode ser feito na aba Graphical greeter,
Control Protocol [2], um protocolo de con-
trole desenvolvido para possibilitar acesso
Login à moda do Gnome o GDM do Fedora exibirá a ferramenta
a servidores X em outras máquinas da rede. Assim como o KDM, a aparência do GDM na tela. Como a variedade de temas pré-
Usuários remotos podem trabalhar como se depende da distribuição. O SuSE possui instalados é pequena, procure em [3]
estivessem sentados na frente do servidor um seletor de idiomas (Language) que um que lhe agrade. É preciso rodar o
e usando os programas disponíveis nele.
permite escolher a língua a ser usada gdmsetup para instalar os temas baixa-
Por razões de segurança – e para diminuir o
tráfego na rede – o protocolo SSH é preferível após o login. Já Session mostra aos usu- dos da Internet.
em lugar do XDMCP. ários um cardápio com os ambientes É simples dizer ao GDM para
Tema: Um tema é um conjunto de elemen- gráfi cos disponíveis. Por último, System mostrar, no menu Sessão, um novo
tos que força uma determinada aparência possui opções para desligar e reiniciar o ambiente gráfico – tão simples como
em um programa que possua uma interface computador, além de poder configurar o no KDM. A única diferença é o cami-
gráfica. Além dos diversos ambientes gráfi- servidor XDMCP [2]. Há ainda a opção nho para o script de sessão. No SuSE,
cos e seus gerenciadores de login, programas
de chamar o programa de configuração o GDM espera encontrar os scripts
como o Mozilla ou o XMMS podem ser per-
sonalizados com temas. do GDM (figura 6). em /opt/gnome/share/xsessions. Man-
O GDM no Mandrake é exatamente drake e Fedora Core 2 usam o diretório
igual, à exceção do /usr/share/xsessions/. Para saber mais
menu System, que sobre a confi guração do GDM, leia o
aqui é chamado de manual de referência do programa,
Actions. encontrado em [4]. ■
No Fedora, que
usa o GDM por INFORMAÇÕES
padrão, não é pos-
[1] Manual do KDM: http://docs.kde.org/
sível cha ma r a
pt_BR/HEAD/kdebase/kdm/
ferramenta de con-
figuração por ele. O [2] HOWTO para o XDMCP: http://www.tldp.org/
usuário root deve HOWTO/XDMCP-HOWTO/
executar o utilitário [3] Temas para o GDM: http://art.gnome.org/
gdmsetup para aces- themes/gdm_greeter/
sar essas opções. [4] Manual de Referência do GDM:
Na aba Security, é http://www.jirka.org/
possível defi nir se a gdm-documentation/t1.html

http://supertuxbr.blogspot.com
Figura 5: Modificando a aparência e o comportamento do KDM. ferramenta de con-

82 edição 06 www.linuxmagazine.com.br
Filtros para a Web LINUX USER

Bloqueando propagandas com seu navegador ou um proxy

Surfando sem
banners
Propagandas em sites podem dificultar sua navegação e consomem muita

banda. Neste artigo, conheceremos ferramentas que permitem bloquear

banners em sua própria máquina ou rede local. POR OLIVER FROMMEL

A tualmente, há pouquíssimos
sites que não contenham anún-
cios publicitários. Além dos
banners que cobrem toda a extensão da
tela, há uma tendência crescente de uti-
ferramentas de bloqueio fi ltram os dados,
permitindo que o conteúdo solicitado
passe e rejeitando a propaganda indese-
jável. Eles funcionam porque o navegador
vai buscar a página direto no servidor.
menu permite visualizar os elementos
na página atual. Se você descobrir um
anúncio que fugiu do fi ltro, pode usar
sua URL para criar um novo fi ltro.
Também é possível clicar no anúncio
lizar grandes imagens que substituem O software inteligente busca imagens com o botão direito e selecionar Adblock
o cabeçalho, dificultando a navegação de propaganda na página e remove os Image no menu drop-down para acessar
dos usuários (ver figura 1). pedaços ofensores do arquivo HTML. os mesmos recursos. Isso fará com que
Embora isso possa ser compreensível Só então o navegador reúne os elemen- se abra uma pequena caixa de diálogo
do ponto de vista do provedor de con- tos necessários para exibir a página. com o endereço daquela imagem. Você
teúdo, a maioria dos usuários não acha Há diversos métodos. Alguns nave- pode usar um caractere curinga (*)
nem um pouco divertido trombar com gadores têm um recurso integrado ou para modificar a URL e capturar ende-
propagandas, especialmente se elas podem usar um plugin ou extensão. reços semelhantes. Vamos supor que a
afetam a velocidade de navegação. De Programas de filtragem que rodam seguinte URL seja exibida:
fato, é bastante comum que anúncios como servidores proxy independen-
espalhafatosos, sejam imagens ou apre- temente do navegador mas na mesma http://img-cdn.mediaplex.com/ U
sentações em Macromedia Flash que máquina são uma alternativa. Esse tipo ads/2399/9556/DE_DE_mofg_dim U
consomem mais memória do que o ver- de software pode rodar numa máquina 4600_dhs_q1w0304_300x200_15k_ U
dadeiro conteúdo do site. separada se necessário, servindo de FL_gif.gif
Esses problemas levaram ao desenvol- proxy para os computadores de sua rede
vimento de alguns programas que evitam doméstica ou empresarial. Remova a seção que vem depois do nome
que banners indesejados apareçam em do servidor e o diretório ads e digite um
sites – e mesmo que sejam carregados. As Integrado com o navegador asterisco como caractere curinga no lugar:
Os usuários do Mozilla têm uma opção sim-
ples, um plugin que bloqueia propaganda. http://img-cdn.mediaplex.com U
A ferramenta, apropriadamente chamada /ads/*
AdBlock, fi ltra com base na URL. É fácil
instalar o plugin – basta clicar no link na Essa linha manda que o plugin bloqueie
homepage do projeto [1]. Não são precisos todos os arquivos do diretório ads no ser-
privilégios de administrador para fazê-lo, já vidor Mediaplex. Agora clique em Reload
que o AdBlock é instalado no diretório pes- (Atualizar) e voilà, o anúncio desaparece.
soal (home) do usuário atual em ~/.mozilla. Candidatos prováveis são fáceis de encon-
É necessário reiniciar o navegador trar usando o menu mencionado anterior-
para habilitar o plugin. O programa está mente, ou inspecionando o código fonte
disponível na seção AdBlock, no menu do arquivo HTML (ver fi gura 3). Usuá-
Tools (Ferramentas). Se você acrescentar rios do navegador Mozilla Firefox (antes
o tipo de padrões mostrados na fi gura conhecido como Firebird) vão gostar de
Figura 1: Uma página da web cheia de propaganda 2, o plug-in bloqueará um número saber que o plugin também funciona ali

http://supertuxbr.blogspot.com
atrapalha a visualização do conteúdo real. bastante respeitável de anúncios. Um (fi zemos o teste com o Firefox 0.8).

www.linuxmagazine.com.br edição 06 83
LINUX USER Filtros para a Web

Café saboroso fi ltros adicionais, que não estão habi-


O Muffi n é um desses proxies. Fica entre litados por padrão, como o Animatio-
o servidor web e seu navegador e fi ltra nkiller para remover animações gif e o
o tráfego das propagandas pela web. Por Cookiemonster, que dá um jeito nos oni-
ser um pacote Jar, pode ser rodado dire- presentes Cookies. O fi ltro NoThanks
tamente com o Java, não necessitando não funciona com as configurações
de instalação ou compilação. É neces- padrão. É necessário antes baixar um
sário ter o Java Runtime Environment pequeno arquivo de confi guração, cha-
Figura 2: Usando o menu do Mozilla para confi- (JRE), mas a maioria das distribuições mado killfi le. Uma amostra do killfi le
gurar o AdBlock. instala o JRE por padrão. Ao baixá-lo está disponível no site do Muffi n, no
de [2], lembre-se de clicar com o botão menu Samples.
Alguns anúncios podem ser bloquea- direito no arquivo Jar e escolher Save Para baixar o killfi le, selecione a
dos sem o plugin. O modo mais fácil de link to disk. De outra forma, seu nave- entrada para o fi ltro NoThanks em
fazê-lo é habilitar a opção Load Images | gador pode decidir iniciar o arquivo Jar Enabled Filters e clique em Preferences.
for the originating site only (Carregar Ima- diretamente, o que seria implorar para Na caixa de diálogo que surge, sele-
gens | apenas do site de origem) presente ter problemas. cione Browse em Kill File e localize o
no menu Options | Web Features (Opções Se o interpretador java não estiver em Killfi le em seu diretório Muffi n. Cli-
| Web). Isso funciona muito bem, pois a seu caminho de execução (path), adi- que em Apply, e em seguida em Load,
maior parte dos banners publicitários não cione o diretório em que o programa para mandar o Muffi n usar o killfi le.
são realmente gerados pelo servidor web está armazenado, por exemplo: O botão Save armazena essa confi-
que hospeda a página, mas fornecidos por guração permanentemente, o que
terceiros, que gerenciam para o provedor export PATH=$PATH:/usr/java U é uma boa idéia, a não ser que você
de conteúdo as compras dos internautas /j2sdk1.4.2_02/bin prefi ra repetir eternamente esse pro-
ocorridas por meio dos anúncios no site. cedimento a cada vez que o Muffi n
Para usar esse recurso durante a nave- Inicie então o Muffi n digitando java for iniciado. O programa de filtro
gação, clique no anúncio com o botão -jar muffin-0.9.3a.jar (ver fi gura 4). O irá criar um diretório Muffin em sua
direito e selecione Block images from ser- Muffi n usa o fi ltro NoThanks por padrão. pasta pessoal e o usará para armaze-
ver (Bloquear imagens do servidor). O fi ltro utiliza regras simples para blo- nar sua configuração e um arquivo de
Note que esse método pode ser um quear anúncios. O proxy inclui alguns registro (log).
tiro no pé, já que vai impedir que você
baixe quaisquer imagens que não este-
jam armazenadas no servidor origi-
nal. Além disso, ele não bloqueará os
anúncios que estejam no site original.
O plugin AdBlock certamente tem con-
fi gurações mais granulares. Se mesmo
assim você não estiver satisfeito, pode
preferir usar um proxy mais flexível e
poderoso, que rode em outros navega- Figura 3: É possível inspecionar o código fonte HTML para identificar o endereço das propagandas.
dores como o Konqueror e o Opera. Muitos sites, na verdade, usam “ad” como parte de seu nome.

Glossário
Servidores proxy (ou simplesmente proxies) de repetições de um determinado caractere ção em texto associadas pelo browser a um
ficam entre um cliente (p. ex., um navegador (em expressões regulares). Quando você website. Os provedores de conteúdo usam
web) e um servidor. Visto da perspectiva do digita ls *.jpg, o shell exibirá todos os nomes cookies para armazenar informações sobre os
cliente, o proxy é um servidor, enquanto do de arquivo com o sufixo .jpg, quaisquer que costumes de navegação pela internet do usu-
ponto de vista do servidor ele é um cliente. Os sejam as iniciais desses nomes. ário entre duas visitas a um site (“Quando esse
proxies armazenam os websites em cache,
URL: Um Uniform Resource Locator (Locali- usuário visitou pela última vez este site?”)
aumentando assim a velocidade de acesso.
zador Padronizado de Recursos) compreende Port: Uma vez que diversos programas servi-
Em alguns casos, um proxy é necessário para
um serviço representado por um acrônimo dores podem rodar numa só máquina, uma
permitir que clientes sem conexão direta pos-
sam acessar a internet. (http, ftp, ..), o endereço de um servidor da combinação do número da porta e do ende-
Internet e diretórios e nomes de arquivo reço IP é usada para identificar cada uma das
Caractere Curinga: Muitos programas do
opcionais. Isso permite que os endereços da conexões. Os padrões da Internet atribuem
Linux (como o shell) usam caracteres específi-
internet sejam individualmente identificados, portas determinadas para serviços específi-
cos para representar uma ou mais letras. Por
por exemplo: http://www.linuxmagazine. cos; por exemplo, a porta 80 para a World
exemplo, o asterisco (*) tipicamente repre-
senta um conjunto de caracteres arbitrário, com.br/issue/01/KDE_32_Tips.pdf. Wide Web (HTTP) e a porta 25 para o sistema
embora possa significar qualquer número Cookies: pequenos fragmentos de informa- de envio de email (SMTP).

http://supertuxbr.blogspot.com
84 edição 06 www.linuxmagazine.com.br
Filtros para a Web LINUX USER

Tabela 1: Visão geral dos filtros web


Adblock Muffin Privoxy Webwasher
Possibilidade de instalação por sim sim sim não
usuários comuns
Proxy não sim sim sim
Porta padrão – 51966 8118 9090
Em desenvolvimento? sim não sim sim
Figura 4: O Muffin, baseado em java, tem sua
Pré-configurado não não sim sim
própria interface gráfica, e informa quais os
Licença livre livre livre restrita, livre para uso privado
arquivos com que está lidando.

Para que a nova ferramenta funcione, Quando o Privoxy é instalado no Red


é preciso mudar as configurações de seu Hat, o sistema operacional roda o fi l-
browser ao instalá-la como um proxy. tro na inicialização, junto com outros
Isso se aplica a quaisquer ferramentas programas servidores. Você pode fazer
de proxy que você pretenda usar. Se seu isso manualmente usando /etc/rc.d/init.
navegador for o Mozilla, abra as confi- d/privoxy start. Os arquivos de configu-
gurações em Edit | Preferences (Editar | ração estão em /etc/privoxy; o arquivo
Preferências) e clique no pequeno triân- principal é o /etc/privoxy/confi g. Use
gulo Advanced (Avançado). Procure por esse arquivo para os ajustes mais gra- Figura 6: A página de configuração do Privoxy
Proxies; ali você pode habilitar a confi- nulares; porém, o Privoxy funciona bas- em um navegador, onde você pode clicar para
guração manual e digitar os valores cor- tante bem com as configurações padrão. habilitar ou desabilitar o filtro.
retos para HTTP Proxy e Port (ver figura Depois de defi nir a porta como 8118
5). O primeiro campo, tipicamente, é em seu navegador, como descrito antes, wwasher e os arquivos de log em /var/
localhost. Digite o número da porta o Privoxy começará a fi ltrar anúncios log/wwasher. O registro de eventos (log)
de seu proxy no segundo campo (ver nas páginas web que você visitar. O pro- fica desativado por padrão, mas pode
tabela 1). O Opera tem confi gurações grama tem um recurso útil de marcar o ser ativado usando um confi gurador
similares no menu Network | Proxy Ser- lugar de onde removeu a propaganda, baseado em web – você pode acessá-lo
vers; o Firefox usa Ferramentas | Opções, e pode exibir tanto a imagem fi ltrada com seu navegador de Internet por um
e fi nalmente Conexão. como a regra de fi ltragem na qual ela endereço especial: http://-web.washer-/.
se encaixa. Assim, você pode conferir O nome de usuário padrão é admin e a
Um filtro com história se a ferramenta está apenas removendo senha é webwasher.
Esse software baseia-se numa ferra- propaganda ou também bloqueando o
menta clássica, o Junkbuster [3]. O acesso a imagens que você gostaria de Mas qual escolher?
Privoxy [4] também ainda está em ver. Também é possível confi gurar o A escolha de uma ferramenta de fi ltra-
desenvolvimento ativo. O website do Privoxy diretamente a partir do nave- gem é basicamente questão de gosto
Privoxy tem pacotes pré-compilados gador usando um endereço especial: pessoal. Se você detesta Java, não vai
para diversas distribuições. Por padrão, http://p.p (ver figura 6). apreciar o Muffi n. Se insiste em utilizar
o pacote será instalado para todos os apenas software completamente livre,
usuários através da conta do admi- Lava mais branco pode descartar o Webwasher. Os usuá-
nistrador. O Privoxy pode usar uma Os usuários domésticos podem querer rios de Mozilla e Firefox podem baixar
conta de usuário não-privilegiado, mas dar uma olhada no Webwasher [5], uma o plugin AdBlock, embora ele não seja
para isso exige que se façam algumas ferramenta livre da empresa Webwasher. tão poderoso quanto outros fi ltros. O
mudanças “à mão”. A versão comercial tem fi ltros especiais Privoxy é uma ferramenta madura e
para bloquear a execução de código em em desenvolvimento ativo, disponível
Javascript, que não estão disponíveis como pacote pré-compilado para muitas
na versão livre. É preciso ter privilé- distribuições. E não é difícil instalar os
gios de administrador para instalar o programas que analisamos. ■
Webwasher, e não há como contornar
isso. A empresa fornece dois formatos INFORMAÇÕES
de pacote, um RPM e um arquivo tar
[1] AdBlock: http://adblock.mozdev.org
compactado com o gzip, que contém
um script de instalação. A tarefa de ins- [2] Muffin: http://muffin.doit.org
talação é assim reduzida a um simples [3] Junkbuster:
comando executado pelo administrador. http://internet.junkbuster.com/
O software é imediatamente ini- [4] Privoxy: http://www.privoxy.org
Figura 5: Configuração do proxy no Mozilla mos- ciado, sem que lhe peçam para fazê-lo,
[5] Webwasher: http://www.webwasher.
trando as configuração do filtro web Muffin rodando e atende a pedidos na porta 9090. Os
com/client/download/private_use/linux

http://supertuxbr.blogspot.com
na porta 51966 da mesma máquina (localhost). arquivos de configuração estão em /etc/

www.linuxmagazine.com.br edição 06 85
LINUX USER Papo de Botequim

Curso de Shell Script

Papo de
Botequim VI
Blocos de código e laços (ou loops, como preferem alguns)
Dave Hamilton - www.sxc.hu

são o tema do mês em mais uma lição de nosso curso de Shell

Script. Garçom, salta uma boa redondinha, que tô a fim de

refrescar o pensamento! POR JULIO CEZAR NEVES

F ala, cara! E aí, já tá sabendo tudo


do comando for? Eu te deixei um
exercício para treinar, se não me
engano era para contar a quantidade de
palavras de um arquivo... Você fez?
Ou seja, o programa começa, como
sempre, verificando se a passagem de
parâmetros foi correta; em seguida o
comando for se incumbe de pegar cada
uma das palavras (lembre-se que o $IFS
Uma vez que chegamos neste ponto,
creio ser interessante citar que o Shell
trabalha com o conceito de “Expansão
Aritmética” (Arithmetic Expansion),
que é acionada por uma construção da
– Claro! Tô empolgadão com essa lin- padrão é branco, TAB e ENTER, que é forma $((expressão)) ou let expressão.
guagem! Eu fi z da forma que você exatamente o que desejamos para sepa- No último loop for usei a expansão
pediu, olha só... rar as palavras), incrementando a vari- aritmética das duas formas, mas não
– Êpa! Peraí que eu tô sequinho pra ável $Cont. Vamos relembrar como é o podemos seguir adiante sem saber que
tomar um chope. Aê Chico, traz dois arquivo ArqDoDOS.txt. a expressão pode ser uma das listadas
por favor. Um sem colarinho! na tabela 1.
– Como eu ia dizendo, olha como eu fi z. $ cat ArqDoDOS.txt Mas você pensa que o papo de loop
É muito fácil... Este arquivo (ou laço) se encerra no comando for?
foi gerado pelo Ledo engano, amigo, vamos a partir de
$ cat contpal.sh DOS/Rwin e foi agora ver mais dois comandos.
#!/bin/bash baixado por um
# Script meramente pedagógico ftp mal feito. O comando while
# cuja função é contar a Todos os programadores conhecem este
# quantidade de palavras de Agora vamos testar o programa pas- comando, porque é comum a todas as
# um arquivo. Supõe-se que as sando esse arquivo como parâmetro: linguagens. Nelas, o que normalmente
# palavras estão separadas ocorre é que um bloco de comandos é
# entre si por espaços, <TAB> $ contpal.sh ArqDoDOS.txt executado, enquanto (enquanto, em
# ou <ENTER>. O arquivo ArqDoDOS.txt tem 14 inglês, é “while”) uma determinada
if [ $# -ne 1 ] palavras. condição for verdadeira.
then
echo uso: $0 /caminho/do/ U Funcionou legal! Tabela 1: Expressões no Shell
arquivo Se você se lembra, Expressão Resultado
exit 2 em nossa última id++ id-- pós-incremento e pós-decremento de variáveis
fi aula mostramos o ++id --id pré-incremento e pré-decremento de variáveis
Cont=0 loop for a seguir: ** exponenciação
for Palavra in $(cat $1) */% multiplicação, divisão, resto da divisão (módulo)
do for ((; i<=9;)) +- adição, subtração

Cont=$((Cont+1)) do <= >= < > comparação


== != igualdade, desigualdade
done let i++
&& E lógico
echo O arquivo $1 tem $Cont U echo -n "$i "
|| OU lógico

http://supertuxbr.blogspot.com
palavras. done

86 edição 06 www.linuxmagazine.com.br
Papo de Botequim LINUX USER

Pois bem, isso é o que acontece nas $ logaute.sh $cat monbg.sh


linguagens caretas! Em programação xefe pts/0 Jan 4 08:46 U #!/bin/bash
Shell, o bloco de comandos é executado (10.2.4.144) # Executa e monitora um
enquanto um comando for verdadeiro. xefe pts/0 Jan 4 08:46 U # processo em background
E é claro, se quiser testar uma condi- (10.2.4.144) $1 & # Coloca em backgroud
ção, use o comando while junto com o ... while ps | grep -q $!
comando test, exatamente como você xefe pts/0 Jan 4 08:46 U do
aprendeu a fazer no if, lembra? Então a (10.2.4.144) sleep 5
sintaxe do comando fica assim: done
Isto é, a cada 30 segundos a saída do echo Fim do Processo $1
while comando comando grep seria enviada para a tela,
do o que não é legal, já que poluiria a tela Esse script é bastante similar ao ante-
cmd1 do meu micro e a mensagem tão espe- rior, mas tem uns macetes a mais, veja
cmd2 rada poderia passar despercebida. Para só: ele tem que ser executado em back-
... evitar isso, já sabemos que a saída do ground para não prender o prompt mas
cmdn pipeline tem que ser redirecionada para o $! será o do programa passado como
done o dispositivo /dev/null. parâmetro, já que ele foi colocado em
background após o monbg.sh propria-
e dessa forma, o bloco formado pelas $ cat logaute.sh mente dito. Repare também na opção -q
instruções cmd1, cmd2,... e cmdn é exe- #!/bin/bash (quiet) do grep, que serve para fazê-lo
cutado enquanto a execução da instru- # Espero que a Xuxa não tenha “trabalhar em silêncio”. O mesmo resul-
ção comando for bem sucedida. # copyright de xefe e xato :) tado poderia ser obtido com a linha:
Suponha a seguinte cena: tinha while who | grep xefe > /dev/null while ps | grep $! > /dev/null, como nos
uma tremenda gata me esperando e do exemplos que vimos até agora.
eu estava preso no trabalho sem poder sleep 30 Vamos melhorar o nosso velho
sair porque o meu chefe, que é um pé done musinc, nosso programa para incluir
no saco (aliás chefe-chato é uma redun- echo O xato se mandou, não U registros no arquivo musicas, mas
dância, né?), ainda estava na sala dele, hesite, dê exit e vá a luta antes preciso te ensinar a pegar
que fica bem na minha passagem para a um dado da tela, e já vou avisando:
rua. Ele começou a ficar cabreiro depois Agora quero montar um script que só vou dar uma pequena dica do
da quinta vez que passei pela sua porta receba o nome (e eventuais parâme- comando read (que é quem pega o
e olhei para ver se já havia ido embora. tros) de um programa que será execu- dado da tela), que seja o suficiente
Então voltei para a minha mesa e fi z, no tado em background e que me informe para resolver este nosso problema.
servidor, um script assim: do seu término. Mas, para você enten- Em uma outra rodada de chope vou
der este exemplo, primeiro tenho de te ensinar tudo sobre o assunto,
$ cat logaute.sh mostrar uma nova variável do sistema. inclusive como formatar tela, mas
#!/bin/bash Veja estes comandos executados direta- hoje estamos falando sobre loops. A
# Espero que a Xuxa não tenha mente no prompt: sintaxe do comando read que nos
# copyright de xefe e xato :) interessa por hoje é a seguinte:
while who | grep xefe $ sleep 10&
do [1] 16317 $ read -p "prompt de leitura" var
sleep 30 $ echo $!
done 16317 Onde “prompt de leitura” é o texto
echo O xato se mandou, não U [1]+ Done sleep 10 que você quer que apareça escrito na
hesite, dê exit e vá à luta $ echo $! tela. Quando o operador teclar tal dado,
16317 ele será armazenado na variável var.
Neste scriptzinho, o comando while Por exemplo:
testa o pipeline composto pelos coman- Isto é, criei um processo em back-
dos who e grep, que será verdadeiro ground que dorme por 10 segundos, $ read -p "Título do Álbum: " Tit
enquanto o grep localizar a palavra somente para mostrar que a variável $!
xefe na saída do comando who. Desta guarda o PID (Process ID) do último pro- Bem, uma vez entendido isso, vamos
forma, o script dormirá por 30 segundos cesso em background. Mas observe a à especificação do nosso problema:
enquanto o chefe estiver logado (Argh!). listagem e repare, após a linha do Done, faremos um programa que inicialmente
Assim que ele se desconectar do servi- que a variável reteve o valor mesmo lerá o nome do álbum e em seguida fará
dor, o fluxo do script sairá do loop e te após o término desse processo. um loop de leitura, pegando o nome da
mostrará a tão ansiada mensagem de Bem, sabendo isso, já fica mais fácil música e o artista. Esse loop termina
liberdade. Mas quando executei o script, monitorar qualquer processo em back- quando for informada uma música com

http://supertuxbr.blogspot.com
adivinha o que aconteceu? ground. Veja só como: nome vazio, isto é, quando o operador

www.linuxmagazine.com.br edição 06 87
LINUX USER Papo de Botequim

Dica until comando $cat chegada.sh


Leitura de arquivo significa ler um a um do #!/bin/bash
todos os registros, o que é sempre uma cmd1 until who | grep julio
operação lenta. Fique atento para não usar cmd2 do
o while quando for desnecessário. O Shell ... sleep 30
tem ferramentas como o sed e a família cmdn done
grep, que vasculham arquivos de forma done echo $(date "+ Em %d/%m às U
otimizada sem que seja necessário o uso do %H:%Mh") > relapso.log
while para fazê-lo registro a registro.
e dessa forma o bloco de comandos for-
mado pelas instruções cmd1, cmd2,... e Olha que safado! O cara estava mon-
der um simples <ENTER>. Para facili- cmdn é executado até que a execução da tando um log com os meus horários de
tar a vida do operador, vamos oferecer instrução comando seja bem sucedida. chegada, e ainda por cima chamou o
como default o mesmo nome do artista Como eu te disse, while e until funcio- arquivo de relapso.log! O que será que
da música anterior (já que é normal que nam de forma antagônica, e isso é muito ele quis dizer com isso?
o álbum seja todo do mesmo artista) até fácil de demonstrar: em uma guerra, Nesse script, o pipeline who | grep
que ele deseje alterá-lo. Veja na listagem sempre que se inventa uma arma, o julio, será bem sucedido somente
1 como ficou o programa. inimigo busca uma solução para neu- quando julio for encontrado na saída
Nosso exemplo começa com a lei- tralizá-la. Foi baseado nesse principio do comando who, isto é, quando eu
tura do título do álbum. Caso ele não belicoso que meu chefe desenvolveu, no me “logar” no servidor. Até que isso
seja informado, terminamos a execu- mesmo servidor em que eu executava o aconteça, o comando sleep, que forma
ção do programa. Em seguida um grep logaute.sh, um script para controlar o o bloco de instruções do until, colocará
procura, no início (^) de cada registro meu horário de chegada. o programa em espera por 30 segun-
de músicas, o título informado seguido Um dia tivemos um problema na rede. dos. Quando esse loop encerrar-se, será
do separador (^) (que está precedido de Ele me pediu para dar uma olhada no enviada uma mensagem para o arquivo
uma contrabarra [\] para protegê-lo da micro dele e me deixou sozinho na sala. relapso.log. Supondo que no dia 20/01
interpretação do Shell). Resolvi bisbilhotar os arquivos – guerra eu me “loguei” às 11:23 horas, a mensa-
Para ler os nomes dos artistas e as é guerra – e veja só o que descobri: gem seria a seguinte:
músicas do álbum, foi montado um loop
while simples, cujo único destaque é o Listagem 1
fato de ele armazenar o nome do intér-
$ cat musinc.sh
prete da música anterior na variável
#!/bin/bash
$oArt, que só terá o seu conteúdo alte-
# Cadastra CDs (versao 4)
rado quando algum dado for informado
#
para a variável $Art, isto é, quando não
clear
for teclado um simples ENTER para
read -p "Título do Álbum: " Tit
manter o artista anterior.
[ "$Tit" ] || exit 1 # Fim da execução se título vazio
O que foi visto até agora sobre o while
if grep "^$Tit\^" musicas > /dev/null
foi muito pouco. Esse comando é muito
then
utilizado, principalmente para leitura
echo "Este álbum já está cadastrado"
de arquivos, porém ainda nos falta
exit 1
bagagem para prosseguir. Depois que

aprendermos mais sobre isso, veremos
Reg="$Tit^"
essa instrução mais a fundo.
Cont=1

O comando until oArt=


while true
Este comando funciona de forma
do
idêntica ao while, porém ao contrário.
echo "Dados da trilha $Cont:"
Disse tudo mas não disse nada, né? É
read -p "Música: " Mus
o seguinte: ambos testam comandos;
[ "$Mus" ] || break # Sai se vazio
ambos possuem a mesma sintaxe e
read -p "Artista: $oArt // " Art
ambos atuam em loop; porém, o while
[ "$Art" ] && oArt="$Art" # Se vazio Art anterior
executa o bloco de instruções do loop
Reg="$Reg$oArt~$Mus:" # Montando registro
enquanto um comando for bem suce-
Cont=$((Cont + 1))
dido; já o until executa o bloco do loop
# A linha anterior tb poderia ser ((Cont++))
até que o comando seja bem sucedido.
done
Parece pouca coisa, mas a diferença é
echo "$Reg" >> musicas
fundamental. A sintaxe do comando é
sort musicas -o musicas

http://supertuxbr.blogspot.com
praticamente a mesma do while. Veja:

88 edição 06 www.linuxmagazine.com.br
Papo de Botequim LINUX USER

Em 20/01 às 11:23h
Atalhos no
loop �� ��

Voltando à nossa CDteca, quando Nem sempre um �������� ��������


vamos cadastrar músicas seria ideal ciclo de programa,
que pudéssemos cadastrar diversos compreendido
CDs de uma vez só. Na última versão entre um do e um ����� ����� ����� ��������
do programa isso não ocorre: a cada CD done, sai pela porta
cadastrado o programa termina. Veja na da frente. Em algu-
�������� ��������
listagem 2 como melhorá-lo. mas oportunidades,
Nesta versão, um loop maior foi adi- temos que colocar
���� ����
cionado antes da leitura do título, que um comando que
só terminará quando a variável $Para aborte de forma
deixar de ser vazia. Caso o título do c ont rolada esse �������������������� �����������������������
álbum não seja informado, a variá- loop. De maneira Figura 1: A estrutura dos comandos break e continue, usados para contro-
vel $Para receberá um valor (coloquei inversa, algumas lar o fluxo de execução em loops.
1, mas poderia ter colocado qualquer vezes desejamos
coisa) para sair desse loop, terminando que o f lu xo de pectivamente os comandos break (que
o programa. No resto, o script é idênticoexecução do programa volte antes de já vimos rapidamente nos exemplos do
à versão anterior. chegar ao done. Para isso, temos res- comando while) e continue, que funcio-
nam da forma mostrada na figura 1.
Listagem 2 O que eu não havia dito anterior-
mente é que nas suas sintaxes genéricas
$ cat musinc.sh
eles aparecem da seguinte forma:
#!/bin/bash
# Cadastra CDs (versao 5)
break [qtd loop]
#
Para=
e também:
until [ "$Para" ]
do
continue [qtd loop]
clear
read -p "Título do Álbum: " Tit
Onde qtd loop representa a quanti-
if [ ! "$Tit" ] # Se titulo vazio...
dade dos loops mais internos sobre os
then
quais os comandos irão atuar. Seu valor
Para=1 # Liguei flag de saída
por default é 1.
else
Duvido que você nunca tenha apa-
if grep "^$Tit\^" musicas > /dev/null
gado um arquivo e logo após deu um
then
tabefe na testa se xingando porque
echo "Este álbum já está cadastrado"
não devia tê-lo removido. Pois é, na
exit 1
décima vez que fi z esta besteira, criei

um script para simular uma lixeira,
Reg="$Tit^"
isto é, quando mando remover um (ou
Cont=1
vários) arquivo(s), o programa “fi nge”
oArt=
que deletou, mas no duro o que ele fez
while [ "$Tit" ]
foi mandá-lo(s) para o diretório /tmp/
do
LoginName_do_usuario. Chamei esse
echo Dados da trilha $Cont:
programa de erreeme e no arquivo /etc/
read -p "Música: " Mus
profile coloquei a seguinte linha, que
[ "$Mus" ] || break # Sai se vazio
cria um “apelido” para ele:
read -p "Artista: $oArt // " Art
[ "$Art" ] && oArt="$Art" # Se vazio Art anterior
alias rm=erreeme
Reg="$Reg$oArt~$Mus:" # Montando registro
Cont=$((Cont + 1))
Veja o programa na listagem 3. Como
# A linha anterior tb poderia ser ((Cont++))
você pode ver, a maior parte do script
done
é formada por pequenas críticas aos
echo "$Reg" >> musicas
parâmetros informados, mas como o
sort musicas -o musicas
script pode ter recebido diversos arqui-

vos a remover, a cada arquivo que não
done

http://supertuxbr.blogspot.com
se encaixa dentro do especificado há

www.linuxmagazine.com.br edição 06 89
LINUX USER Papo de Botequim

Listagem 3: erreeme.sh
$ cat erreeme.sh then
#!/bin/bash echo "$Arq nao existe."
# Erro=3
# Salvando cópia de um arquivo antes de removê-lo continue # Volta para o comando for

# Tem de ter um ou mais arquivos a remover
if [ $# -eq 0 ] # Cmd. dirname informa nome do dir de $Arq
then DirOrig=`dirname $Arq`
echo "Erro -> Uso: erreeme arq [arq] ... [arq]" # Verifica permissão de gravacao no diretório
echo "O uso de metacaracteres e’ permitido. Ex.U if [ ! -w $DirOrig ]
erreeme arq*" then
exit 1 echo "Sem permissão no diretorio de $Arq"
fi Erro=4
continue # Volta para o comando for
# Variável do sistema que contém o nome do usuário. fi
MeuDir="/tmp/$LOGNAME"
# Se não existir o meu diretório sob o /tmp... # Se estou "esvaziando a lixeira"...
if [ ! -d $MeuDir ] if [ "$DirOrig" = "$MeuDir" ]
then then
mkdir $MeuDir # Vou criá-lo echo "$Arq ficara sem copia de seguranca"
fi rm -i $Arq # Pergunta antes de remover
# Será que o usuário removeu?
# Se não posso gravar no diretório... [ -f $Arq ] || echo "$Arquivo removido"
if [ ! -w $MeuDir ] continue
then fi
echo "Impossivel salvar arquivos em $MeuDir. U
Mude as permissões..." # Guardo no fim do arquivo o seu diretório originalU
exit 2 para usá-lo em um script de undelete
fi cd $DirOrig
pwd >> $Arq
# Variável que indica o cod. de retorno do programa mv $Arq $MeuDir # Salvo e removo
Erro=0 echo "$Arq removido"
# Um for sem o in recebe os parametros passados done
for Arq
do # Passo eventual número do erro para o código
# Se este arquivo não existir... # de retorno
if [ ! -f $Arq ] exit $Erro

um continue, para que a seqüência volte faça-o em casa e me traga para dis- um email para julio.neves@gmail.
para o loop do for de forma a receber cutirmos no nosso próximo encontro com. Agora chega de papo que eu já
outros arquivos. aqui no boteco. estou de goela seca de tanto falar. Me
Quando você está no Windows (com – Poxa, mas nesse eu acho que vou dan- acompanha no próximo chope ou já
perdão da má palavra) e tenta remover çar, pois não sei nem como começar... vai sair correndo para fazer o script
aquele monte de lixo com nomes esqui- – Cara, este programa é como tudo que passei?
sitos como HD04TG.TMP, se der erro o que se faz em Shell: extrema- – Deixa eu pensar um pouco...
em um dos arquivos os outros não são mente fácil. É para ser feito em, no – Chico, traz mais um chope enquanto
removidos, não é? Então, o continue foi máximo, 10 linhas. Não se esqueça ele pensa!
usado para evitar que uma improprie- de que o arquivo está salvo em /tmp/
dade dessas ocorra, isto é, mesmo que $LOGNAME e que sua última linha é Julio Cezar Neves é Analista de
SOBRE O AUTOR

dê erro na remoção de um arquivo, o o diretório em que ele residia antes Suporte de Sistemas desde 1969 e tra-
programa continuará removendo os de ser “removido”. Também não se balha com Unix desde 1980, quando
outros que foram passados. esqueça de criticar se foi passado o participou do desenvolvimento do
– Eu acho que a esta altura você deve nome do arquivo a ser removido. SOX, um sistema operacional similar
estar curioso para ver o programa – É eu vou tentar, mas sei não... ao Unix produzido pela Cobra Com-
putadores. Pode ser contatado no
que restaura o arquivo removido, não – Tenha fé, irmão, eu tô te falando que
e-mail julio.neves@gmail.com

http://supertuxbr.blogspot.com
é? Pois então aí vai vai um desafio: é mole! Qualquer dúvida é só passar

90 edição 06 www.linuxmagazine.com.br
Fundação CTA-RJ COMUNIDADE

Inclusão digital e economia

Caminho livre para a


Administração Pública

www.sxc.com by João Estevão A. de Freitas


A Fundação Centro de Tecnologia Aplicada vem atuando junto a prefeituras e outros órgãos municipais, através do seu Núcleo

de Pesquisa e Desenvolvimento (NuPD), criando soluções em software para a administração pública. POR JOE KLIMENT

E m 2002, o NuPD iniciou um pro-


cesso de avaliação junto a muni-
cípios no Estado do Rio de Janeiro
com o objetivo de identificar a real
situação das prefeituras em estrutura
vezes era obtido através de uma linha
discada; o suporte e a manutenção dos
sistemas eram quase sempre feitos por
empresas terceirizadas, que precisavam
deslocar técnicos para prestar suporte
O projeto foi então apresentado a mim.
De posse da pesquisa realizada pela Fun-
dação, e já familiarizado com o Linux e
as realidades do software livre, o NuPD

de hardware, software, rede e conec- no local, aumentando o custo dos ser-


tividade. Essa avaliação evidenciou a viços. Sem contar o fato de que, muitas
existência de uma situação comum à vezes, havia softwares com licencia-
maioria dos municípios: por causa da mento inadequado ou inexistente.
falta de recursos para implementação de Ficou evidente que qualquer solução
um Plano Diretor de Informática apro- realmente viável para a administração
priado, as prefeituras se viam às voltas municipal deveria necessariamente
com redes de transmissão de dados ine- possuir características de custo e
ficientes, hardware inadequado ao sis- desempenho bastante diferentes das
tema operacional proprietário utilizado tradicionalmente utilizadas. De posse
e utilização de softwares e aplicativos de dessa avaliação realizada em campo, a
gerenciamento proprietários que peca- Fundação CTA foi buscar no mercado
vam pela falta de integração, devido à um profissional para dirigir o projeto de
inexistência ou inadequação da estru- remodelação da estratégia de desenvol-

http://supertuxbr.blogspot.com
tura de rede. O acesso à Internet muitas vimento de sistemas para a área pública. Figura 1: Joe Kliment – Diretor de TI da Fundação CTA.

www.linuxmagazine.com.br edição 06 91
COMUNIDADE Fundação CTA-RJ

apresentou ao CTA uma idéia inovadora: cursos de Linux,


desenvolver todos os softwares necessá- PHP e Bancos de
rios para a administração pública utili- Dados. Os cursos
zando uma plataforma web, a linguagem eram apresentados
de programação PHP, o banco de dados à comunidade a
livre PostgreSQL – e rodar tudo isso em preço de custo; os
servidores Linux. Os desktops das pre- alunos do curso de
feituras deveriam, preferencialmente, PHP, por exemplo,
utilizar o sistema operacional Linux. pagavam 20 Reais
Aplicativos de processamento de texto e ao mês para apren-
planilhas eletrônicas deveriam também der a linguagem
ser Software Livre. de programação. O
A idéia era fazer com que as prefei- resultado foi assom-
turas pudessem melhorar a capacidade broso. Como os
de utilização de seu parque de hard- alunos aprendiam
ware com um sistema operacional que rápido, os técnicos
exigisse menos recursos, evitar o paga- do NuPD – e tam-
mento desnecessário de licenças de bém professores
software básico e de banco de dados e – sugeriram que a Figura 3: Delmo Morani – Diretor de Relações Institucionais da CTA.
construir um sistema de administra- Fundação contra-
ção pública que pudesse ser aprendido tasse os formandos do curso. Os resulta- às equipes de processamento de dados
com facilidade pelo funcionalismo e dos não tardaram a aparecer. da prefeitura. Os sistemas administra-
que tivesse a possibilidade de receber A equipe de analistas de sistemas do tivos foram instalados e entraram em
suporte e manutenção remota, de forma CTA começou então a executar o pro- produção, e os funcionários aprende-
rápida, o que baixaria ainda mais os jeto. Montaram-se equipes de trabalho; ram a operá-los em um curto período.
custos operacionais. Faltava colocar o alunos da escola eram inseridos nessas Quem sabia utilizar um navegador Web
projeto em prática. equipes e trabalhavam junto com os sabia usar o sistema, o que diminuiu
Aproveitando a existência de uma técnicos do NuPD, adquirindo a expe- drasticamente a curva de aprendizado e
escola técnica gerida pela Fundação em riência necessária para o mercado de os custos de treinamento.
Padre Miguel, na Zona Oeste do Rio de trabalho. Os softwares foram desenvol- Em Maio de 2003 ocorreu o I Encon-
Janeiro, foi montado um laboratório de vidos e testados exaustivamente. Tendo tro de Governo Eletrônico, totalmente
informática a baixíssimo custo, utili- elegido a cidade de Resende, na região patrocinado pelo CTA, na cidade de
zando a tecnologia de terminais base- sul Fluminense, como palco para o lan- Resende-RJ. Com a presença de cerca
ados em Linux LTSP (www.ltsp.org). çamento do projeto, o CTA forneceu de 300 autoridades do Estado do Rio
Nesse laboratório foram ministrados treinamento em Linux e Software Livre de Janeiro, foram apresentadas as
soluções desenvolvidas. Os estandes
com sistemas de Compras e Licitações,
Protocolo, Pregão Eletrônico e Planeja-
mento e Execução Orçamentária foram
especialmente concorridos. Na ocasião,
num gesto de agradecimento e reco-
nhecimento pelo esforço dos alunos do
CTA, o prefeito da cidade os agraciou
com medalhas (ver fi gura 2). Foi um
momento inesquecível para aqueles
meninos e meninas de Padre Miguel,
uma região carente do Rio de Janeiro.
Hoje o CTA dispõe de sistemas
completos de administração pública,
incluindo contabilidade, tesouraria,
orçamento, licitações, protocolo e mui-
tos outros. Um caso de sucesso, que
demonstra a capacidade dos profi ssio-
nais de informática brasileiros para
aplicar os recursos disponíveis em
Linux e Software Livre para o benefício
de todos, gerando emprego e trazendo

http://supertuxbr.blogspot.com
Figura 2: Alunos do CTA premiados pelo prefeito da cidade de Resende. soluções para quem precisa. ■

92 edição 06 www.linuxmagazine.com.br
Planeta GNU COMUNIDADE

Poloneses salvam Europa das Patentes de Software

Obrigado, Polônia!
Não posso deixar de agradecer o ato bastante positivo e de muita cora-

gem da Polônia. Graças a ela, a Europa está livre das patentes de software.

Aproveitando que o assunto virou notícia no mundo todo, vamos falar um

pouco sobre patentes e os problemas que podem trazer se não forem bem

aplicadas ou caírem nas mãos erradas. POR CHRISTIANO ANDERSON

O Sr. Wlodzimierz Marcinski,


ministro da ciência e tecno-
logia da informação da Polô-
nia (membro da União Européia desde
2004), foi até Bruxelas, na Bélgica, tra-
tra as patentes de software, mas não
fi zeram nada para interromper o pro-
cesso – pelo contrário, votaram a favor.
O lobby sobre esse assunto é enorme.
Assim como há políticos que são contra
Vamos pensar um pouco no atual
modelo de proteção, que serve tanto
para software quanto para música, tex-
tos etc. Vamos nos concentrar no soft-
ware, que é nossa principal ferramenta.
tar de um assunto polêmico: as paten- a idéia, outros são a favor. É uma briga Quando o desenvolvedor cria um pro-
tes de software. O ministro, em um ato longa e temos que nos unir para não grama qualquer, automaticamente os
corajoso, conseguiu anular a adoção das deixar o problema chegar até nós. direitos autorais pertencem a esse autor.
patentes de software para todos os paí- É ele quem vai decidir qual licença
ses que compõem o quadro da UE [1]. Entenda melhor o assunto utilizar, se vai liberar o programa sob
Essa medida é bastante positiva, prin- O que o leitor deve estar pensando é: alguma licença livre ou se vai ceder os
cipalmente para o Software Livre. As o que nós, brasileiros, temos a ganhar direitos a algum outro autor ou empresa.
grandes corporações detêm boa parte com isso? Certamente temos muito o Essa decisão é somente dele. Ninguém
das patentes de software de todo o que comemorar e aprender com expe- mais poderá interferir nesse trabalho, a
mundo, o que prejudica o desenvolvi- riências desse tipo, nem que seja para não ser que ele permita. Se alguém fi zer
mento de programas por empresas de evitar que o mesmo aconteça no Bra- uma cópia ou uso não autorizado deste
pequeno e médio porte. Isto não quer sil. Não, não estamos totalmente livres software, o autor poderá entrar com
dizer que a Europa está livre do pro- desse problema; ele poderá acontecer recursos legais para cobrar por esse
blema das patentes, mas o assunto foi a qualquer momento. O governo bra- uso indevido. Resumindo: o autor está
adiado até uma nova reunião sobre o sileiro parece estar no rumo certo dei- protegido. O ponto mais irônico é que
tema. Enquanto isso, aqueles que são xando a ALCA em segundo plano – isso esse modelo foi criado pelas megacor-
contra as patentes terão mais tempo sim pode ser uma grande dor de cabeça porações, como Microsoft, Oracle, IBM
para pensar em uma alternativa ou se para empresas que trabalham com soft- etc. Quando essas empresas criam seus
unir e cancelar de vez o assunto. ware e desenvolvimento. softwares, o direito de uso está direta-
O mais estranho é que a maioria dos Enquanto o Brasil não aceitar a ALCA mente relacionado ao modelo de licen-
países da UE evitava comentar o tema; da maneira que foi estabelecida, estare- ciamento dessas empresas. Isso tudo é
alguns chegaram a dizer que eram con- mos livre de problemas com as paten- chamado de direitos autorais.
tes de software. Caso o Brasil entre
no grupo, estaremos incorporando as Então, o que as patentes têm
patentes já existentes nos EUA, o que a ver com isso?
pode prejudicar o desenvolvimento de As patentes são mecanismos para uma
um modelo de software nacional e inde- empresa poderosa ficar ainda mais
pendente – coisa que, diga-se de pas- poderosa. Alguns escritórios de advo-
sagem, já vem ocorrendo. Perderíamos cacia são especializados em patentes;
muito com a ALCA: nossas empresas detêm os direitos de milhares de aplica-
perderiam o poder de barganhar novos tivos registrados e o que querem é obter
mercados e seríamos afetados por toda mais dinheiro e poder. Os direitos auto-
Figura 1: A União Européia é o novo front na a política de patentes e copyrights exis- rais são incorporados automaticamente

http://supertuxbr.blogspot.com
batalha contra as patentes de software. tente na América do Norte. no momento da criação de um aplica-

www.linuxmagazine.com.br edição 06 93
COMUNIDADE Planeta GNU

tivo; o desenvolvedor não precisa se desejam desenvolver seus aplicativos. parmos com estar fazendo algo ilegal.
preocupar com registrar ou correr atrás Querem anular qualquer concorrên- Atualmente, na Europa, mais de 30 mil
de uma empresa que faça isso para ele. cia para seus clientes, que já possuem patentes de software já foram registra-
Segundo o INPI[2], os programas de inúmeras patentes registradas. Querem das e há outras milhares na fi la aguar-
computador são protegidos pelo Direito aumentar o monopólio e prejudicar pes- dando registro.
Autoral e não pelo Direito Patentário. soas honestas e trabalhadoras. A Foundation for a Free Information
Com isso, concluímos que o modelo O modelo de patentes pode ser como Infrastructure (FFII)[3] criou uma loja
válido na maioria dos países do globo é um campo minado para um programa- virtual [4] (fi gura 2) que possui mais
também válido no Brasil. dor; ele terá de seguir um rumo e tomar de 20 itens patenteados, isso só na
O que as empresas especializadas em cuidados para não pisar em bombas ou página principal. A loja possui itens
patentes querem é poder para processar encostar em cercas de arame farpado. O como a palavra “Shopping Cart” (Car-
desenvolvedores e empresas que fazem caminho das patentes é árduo, diferente rinho de Compras), patenteada pela Sun
softwares que venham a ferir alguma daquilo a que estamos acostumados: ter Microsystens e “Picture Link”, patente
patente já registrada por seus clien- uma idéia, sentar na frente do computa- da IBM, entre outras. O site é apenas
tes. Estas empresas querem extorquir dor, colocar uma boa música para tocar uma simulação, mas serve como exem-
dinheiro de pessoas inocentes, que só e fazer nosso software, sem nos preocu- plo do que poderia acontecer: e se todas
as empresas citadas entrassem com um
processo contra o autor da loja virtual?
E se o autor fosse obrigado a pagar pelos
termos utilizados em seu website?
Imagine se um desenvolvedor de
software livre tivesse que se preocupar
com cada detalhe, cada item que even-
tualmente pudesse ferir uma patente?
Esse exemplo da FFII mostra muito bem
como funciona o modelo perigoso.
Caso o modelo fosse válido no Brasil,
o desenvolvedor seria obrigado a con-
sultar uma base de dados de patentes
para se certificar de que tudo o que está
utilizando já não esteja patenteado. O
pior disso tudo é ter de criar patentes
sobre seus itens para não correr o risco
de um espertinho registrá-los antes e
depois ainda vir cobrar direitos sobre
seus próprios produtos. É um assunto
bastante complexo. ■

INFORMAÇÕES
[1] http://pt.wikipedia.org/wiki/União_Europeia
[2] http://www.inpi.gov.br
[3] http://www.ffii.org/
[4] http://webshop.ffii.org/

Christiano Anderson
(anderson@gnu.
org) é desenvol-
SOBRE O AUTOR

vedor autônomo
de Software Livre,
participa do Projeto
Software Livre Brasil
(PSL-BR) e contribui
com o Projeto GNU. Sua principal
missão é difundir o Software Livre
e sua filosofia, principalmente no
mercado educacional.

http://supertuxbr.blogspot.com
Figura 2: Infelizmente, a loja virtual patenteada criada pela FFII pode se tornar uma triste realidade.

94 edição 06 www.linuxmagazine.com.br
Mercado Linux SERVIÇOS

http://supertuxbr.blogspot.com
www.linuxmagazine.com.br edição 06 95
SERVIÇOS Calendário de Eventos / Índice de Anunciantes

Eventos em Destaque

II Fórum Maranhense de III CONISLI Telefonia IP com


Software Livre Software Livre
Data: 13 de Abril de 2005 Data: 10 de Novembro de 2005 Data: 30 de Abril de 2006
Local: Imperatriz, Maranhão Local: São Paulo, São Paulo Local: São Paulo, São Paulo
Website: - Website: Website:
www.conisli.org.br eventos.temporeal.com.br/?area=5

Calendário de Eventos
Evento Data Local Website
II Festival de Software Livre da Bahia 11 a 13 de Março Salvador, Bahia festival.softwarelivre.org
II Fórum Maranhense de Software Livre 13 de Abril Imperatriz, MA –
III CONISLI 10 de Novembro São Paulo, SP www.conisli.org.br
II Latinoware 27 de Março, 2006 Foz do Iguaçu, PR www.latinoware.org
FOSDEM 2005 26 a 27 de Fevereiro Bruxelas, BE www.fosdem.org
Gentoo UK 2005 12 de Março Manchester, UK dev.gentoo.org/~stuart/2005
LinuxCorp 05 e 06 de Julho São Paulo, SP www.rpmbrasil.com.br
TubaInstall Linux Fest 05 de Março São Caetano, SP nxpangea.no-ip.org/installfest
Telefonia IP com Software Livre 30 de Abril São Paulo, SP eventos.temporeal.com.br/?area=5

Índice de Anunciantes
Anunciante Site Página
4Linux www.4linux.com.br 95
A Casa do Linux www.casadolinux.com.br 95
AS Informática www.asinformática.com.br 95
Alternativa Linux www.alternativalinux.com.br 15
Green Treinamento e Consultoria www.green.com.br 73
Infomedia www.infomediatv.com.br 17
IBM www.ibm.com.br 99 (terceira capa)
Linux Magazine www.linuxmagazine.com.br 51, 95
Linux Professional Institute www.lpi.com.org 95
MySQL Brasil www.mysqlbrasil.com.br 02 (contra-capa)
Novatec Editora www.novateceditora.com.br 95
Revera_ www.reveralinux.com.br 9, 29
Oracle www.oracle.com.br 100 (quarta capa)
Visuelles www.visuelles.com.br 79
Unicial / LinuxPress www.unicial.com.br 47
utah www.utah.com.br 95

Escreva para a Linux Magazine

Estamos sempre à procura de novos Artigos têm em média 4.500 caracteres Uma revista passa por muitos estágios
artigos e autores. Se você acha que um por página (contando os espaços), mas durante sua produção, portanto alguns
assunto é importante, ou que precisa ser listagens de código e imagens reduzem o meses podem se passar desde que seu
melhor explicado, fale conosco. espaço disponível para o texto. Se possível, artigo seja recebido até que a revista che-
escreva páginas inteiras. Como estamos gue às bancas. Portanto, nunca envie na
Precisamos de tutoriais, análises, estudos presentes em vários países, evite o uso de última hora material ou notícias sobre
de caso e notícias. Se você é membro de gírias e expressões regionais. encontros e eventos.
um grupo de usuários, porque não nos
conta sobre os eventos que estão sendo As imagens devem estar na maior resolu- Envie suas colaborações para o endereço
planejados? Preferimos que os artigos ção possível. No caso de fotos digitais, reco- material@linuxmagazine.com.br. Evite
sejam enviados via e-mail, e screenshots mendamos que elas sejam tiradas com enviar mais de 4 MB em arquivos anexos.
são sempre bem-vindos. Para facilitar as uma câmera de 3 Megapixels e resolução Caso o material para seu artigo ultrapas-
coisas, mencione no assunto de sua men- igual ou superior a 1024x768 pixels. Prefira se esse limite, coloque-o em algum site

http://supertuxbr.blogspot.com
sagem o tema do artigo. formatos como TIF e EPS. na Internet e nos informe a URL.

96 edição 06 www.linuxmagazine.com.br
Expediente Editorial / Quadrinh0s SERVIÇOS

Expediente Editorial
Editores Anúncios: www.linuxmagazine.com.br/Advertise Apesar de todos os cuidados possíveis terem sido
Rafael Antonio Guido Peregrino da Silva: Brasil tomados durante a produção desta revista, a edi-
rperegrino@linuxmagazine.com.br Unicial – União Comercial e Editora Ltda. tora não é responsável por eventuais imprecisões
Rafael Pereira Rigues: nela contidas ou por conseqüências que advenham
A/c. Sérgio Alday
rrigues@linuxmagazine.com.br de seu uso. A utilização de qualquer material da
anuncios@linuxmagazine.com.br
Tel./Fax: +55 (0)11 3051 3159 revista bem como do CD-ROM incluso ocorre por
Cel.: +55 (0)11 9935 1368 conta e risco do leitor. O CD-ROM foi testado exten-
Centros de Competência sivamente e, até onde pudemos verificar, se encontra
Centro de Competência em Software: Todos os países (exceto Alemanha, Áustria e Suíça)
Brian Osborn, ads@linux-magazine.com livre de qualquer vírus ou outro tipo de software de
Oliver Frommel, ofrommel@linux-magazine.com conteúdo malicioso, bem como de defeitos.
Tel.: +49 (0)6509 910 495
Centro de Competência em Hardware: Fax: +49 (0)6509 910 497 Nenhum material pode ser reproduzido em qualquer
Mirko Dölle, mdoelle@linux-magazine.com
Alemanha, Áustria e Suíça meio, em parte ou no todo, sem permissão expressa
Centro de Competência em Redes e Segurança: Osmund Schmidt da editora. Assume-se que qualquer corespondência
Achim Leitner, aleitner@linux-magazine.com anzeigen@linux-magazine.com recebida, tal como cartas, emails, faxes, fotografias,
Tel.: +49 (0)6335 9110 artigos e desenhos, são fornecidos para publicação
Correspondentes & Colaboradores Fax: +49 (0)6335 7779 ou licenciamento a terceiros de forma mundial não
Achim Leitner, Alexandre Barbosa, Andrea Mueller, Diretoria exclusiva pela Linux New Media do Brasil, a menos
Augusto Campos, Christian Ney, Christiano Ander- Rafael Antonio Guido Peregrino da Silva, que explicitamente indicado.
son, Fabrizio Ciacchi, Hagen Höpfner, Holger Junge, rperegrino@linuxmagazine.com.br Linux é uma marca registrada de Linus Torvalds.
James Mohr, Jason Walsh, Joe Casad, Joe Kliment,
Julio Cezar Neves, Oliver Frommel, Peter Busser, Linux Magazine Linux Magazine é publicada mensalmente por:
Rafael Rigues, Rafael Peregrino da Silva, Ralf Spen- Av. Engº. Luís Carlos Berrini, 1500 Linux New Media do Brasil Editora Ltda.,
neberg, Sulamita Garcia, Zack Brown. Conj. 103 – Brooklin Novo São Paulo/SP, Brasil.
04571-000 – São Paulo – SP – Brasil
Distribuído por Fernando Chinaglia Distribuidora.
Tel.: +55 (0)11 3345 1002
Confecção do CD-ROM
Ricardo D. Dalceno Fax: +55 (0)11 3345 1081 Direitos Autorais e Marcas Registradas © 2004:
rdalceno@linuxmagazine.com.br Linux New Media do Brasil Editora Ltda.
Assinaturas: www.linuxmagazine.com.br/Subs
Preço: (12 edições incluindo CD mensal): R$143,00 Impressão e Acabamento: Editora Gráficos Burti LTDA
Email: assinaturas@linuxmagazine.com.br
Tradução e Revisão ISSN 1806-9428 Impresso no Brasil
Henrique Cesar Ulbrich: henrique.cesar@ermida.com Preço Unitário: R$14,90
Julia Vidili: julia.vidili@ermida.com Na Internet:
www.linuxmagazine.com.br – Brasil
Direção de Arte www.linux-magazin.de – Alemanha
Luciano Hagge Dias: www.linux-magazine.com – Portal Mundial
lhagge@linuxmagazine.com.br www.linuxmagazine.com.au – Austrália
www.linux-magazine.ca – Canadá
www.linux-magazine.co.uk – Reino Unido INSTITUTO VERIFICADOR DE CIRCULAÇÃO

Design da Capa www.linux-magazine.pl – Polônia em processo de filiação


Pinball: info@pinball-werbeagentur.de www.linux-magazin.ro – Romênia

http://supertuxbr.blogspot.com
www.linuxmagazine.com.br edição 06 97
PREVIEW Destaques da próxima edição

Sétima edição

Na próxima edição…
Ubuntu Gimp 2.2
Ubuntu é uma palavra do idioma
Nguni, falado na África do Sul, Depois da avalanche de mudanças na
que significa “tratar humana- versão 2.0 (apresentadas ao leitor em
mente ao próximo” ou “sou o nossa quinta edição), chegou a hora de
que sou por aquilo que todos nós conhecer os ajustes e novidades do Gimp
somos”. É também o nome de 2.2. Interface refinada, previews em
uma distribuição Linux recém- tempo real para vários fi ltros, um edi-
chegada que tem chamado tor de atalhos de teclado e fi ltros novos
muita atenção por sua ênfase como Cartoon e Photocopy são algumas
na usabilidade e integração de das mudanças que vale a pena conhecer.
tecnologias que facilitam a vida
do usuário, como o Gnome 2.8,
excelente detecção de hardware
e montagem automática de mídia
removível, como cartões de memória e máquinas fotográficas digitais. Veja em nosso
artigo como é o processo de instalação, como funciona o suporte a hardware mais
antigo, a quantas anda o suporte ao idioma Português do Brasil e muito mais.

Syslog, a próxima geração


Por mais útil e onipresente que o syslog seja, já começa a mostrar sua idade. Sis-
temas Unix modernos (e assemelhados) são consideravelmente mais complexos
do que eram quando ele foi inventado. Os limitados recursos de rede e registro do
syslog já não são mais suficientes para atender às exigências de rebustez, flexibili-
dade e velocidade atuais – sem falar na segurança.
O Syslog-ng (“Syslog, a nova geração”), criado e mantido por Balazs Scheidler, é uma tentativa de aumentar a flexibilidade do
syslog, com a adição de melhor fi ltragem de mensagens, melhores recursos de rede e, por fi m, melhor criptografia e verificação
de integridade das mensagens. No artigo em nossa próxima edição você aprenderá a instalar e configurar um servidor de logs
baseado nesta poderosa ferramenta.

Redes sem fio
Redes sem fio são muito práticas – depois de terem sido cor-
retamente confi guradas. Mas a variedade de dispositivos,
além dos problemas para integrar o hardware wireless com
seu software ou sistema operacional, pode intimidar até
mesmo os mais experientes administradores. Vamos mos-
trar a você algumas estratégias de confi guração de uma
máquina Linux para se conectar a redes wireless.
Os artigos de nossa matéria de capa sobre redes sem fio
abrangem um grande conjunto de tópicos sobre sistemas
wireless no Linux. Começamos com uma olhada nos fun-
damentos dessas redes. Os artigos seguintes discutem rotea-
dores DSL WLAN e adaptadores wireless USB. Terminamos
mostrando como configurar uma rede privada usando Open-
VPN em uma rede wireless, mas o tema continua. Apresen-
tamos o KWiFiManager, um utilitário para o KDE que ajuda
a monitorar e gerenciar suas conexões à redes WiFi; ensi-

http://supertuxbr.blogspot.com
namos também a montar um sistema de autenticação via
Radius para suas redes locais, inclusive redes wireless.

98 edição 06 www.linuxmagazine.com.br
100

95

O banco de dados mais 75

consumido no mundo 25

30 mil downloads por dia!


0

5 milhões de instalações!
O MySQL é um banco de dados voltado para aplicações de missão crítica, com altos
volumes, disponibilizado gratuitamente para aplicações GPL e com baixo
custo de licenciamento para aplicação não GPL (sem limite de usuários, processadores e
upgrades).

Atualmente o MySQL é o banco de dados de código aberto mais popular e fácil de


administrar do mundo, com mais de 5 milhões de instalações entre websites,
datawarehouse, aplicações comerciais e outras tantas. Usuários como Yahoo!Finance,
MP3.com, Motorola, NASA, Silicon Graphics e Texas Instruments já usam o MySQL.

Segundo pesquisas realizadas em sites como Slashdot.org e Linux.com, o MySQL possui


mais de 40% do market share para bancos de dados voltados à web.

Além disso, o MySQL possui:


• suporte, treinamento e consultoria oficial no Brasil;
• suporte a integridade referencial, transações e views;
• ferramentas gráficas de administração e extração de dados;
• atualizações constantes através de equipe própria;
• cluster, stored procedure e subselects.

www.mysqlbrasil.com.br TECHNOLOGY

www.mysql.com
(31) 3273 4415 GLOBAL PARTNER 100

95

75

http://supertuxbr.blogspot.com
www.elaborata.com.br www.hitec.com.br www.nethouse.com.br www.opentec.com.br 25
(41) 324-0015 (51) 3395-4777 (31) 3225-3005 (21) 2242-3464
5

0
Scribus AdBlock
Editoração eletrônica no Linux O fim da propaganda na Internet

NÚMERO 6

não contém CD
exemplar de cortesia
LINUX MAGAZINE
NÚMERO 6

SuSE 9.2 BR
Mantenha-se a salvo!

SEGURANÇA
Fluxbox
Linux de bolso
Implemente uma bridge

PaX
Gerencie regras de firewall

Firefox
Firewall fácil com

Shorewall
Guarddog e Shorewall
Guarddog
Firefox
Saiba mais sobre o navegador
Firewall GUIs

que está agitando a Internet


Veja também:
Bridgewall

GUIs para Firewalls


Proteja a memória com PaX
Linux em um “chaveiro” USB
Segurança

Brasil R$14,90
Europa € 6,50

Fluxbox: leve, rápido, prático


http://supertuxbr.blogspot.com
Edição Número 6 Ano II

Tutorial de compilação cruzada


00006

9 771806 942009

W W W. L I N U X M A G A Z I N E . C O M . B R