30

Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 2: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

4

ED

ITO

RIA

L

www.linuxmagazine.com.br

2012 chegou e o Software Livre e de Código Aberto (SL/CA) é tec-nologia onipresente nas mãos de todo mundo, embora pouca gente se aperceba. Mais do que isso: o conceito está disseminado em um sem-número de outras iniciativas, e pouca gente remonta à fonte da ideia original. As vantagens são imensas e o autor dessas mal-digitadas linhas topou recentemente com uma delas: o livre acesso à informa-ção acelerou até mesmo o processo de preparação desta revista que você está lendo – mais especifi camente do artigo que inaugura a nos-sa nova seção sobre Android, doravante presente em todas as edições da Linux Magazine. Como o original do artigo está em alemão, para traduzi-lo é necessário refazer todos os screenshots do sistema de que trata o artigo, o que implica na instalação completa desse sistema em língua portuguesa. Esse é um processo moroso, como se pode imaginar, mas o fato de o código fonte estar disponível para consulta, permitiu que a tradução fosse feita em paralelo à instalação, já que foi possível checar o nome de cada string em alemão e encontrar o nome correspondente em português, sem precisar ter o sistema ins-talado. A instalação levou mais dois dias, mas quando isso aconteceu, o artigo já estava traduzido e revisado.

Da mesma forma que esse benefício oculto afeta diretamente a vida das pessoas (nesse caso, dos nossos leitores, editores etc.), o ganho de agilidade, a redução de custos, a facilidade de acesso ao código e a possibilidade de realizar alterações nele, de modo a criar soluções para as mais diferentes demandas, transformaram esse tipo de tecnologia em padrão para sistemas de todo tipo. E tudo isso teve seu início na possibilidade de compartilhar conhecimento – no caso do SL/CA, o conhecimento de tecnologia. Como os desenvolvedores tiveram acesso à Internet muito mais cedo, eles começaram a com-partilhar esse tipo de conhecimento com antecedência. A partir do momento em que a tecnologia passou a incluir mais pessoas, o com-partilhamento começou a abranger áreas diferentes, e novas licenças passaram a existir para regular a distribuição de textos, músicas etc. A Wikipedia é um exemplo desse desenvolvimento. O movimento Creative Commons criou uma série de licenças para praticamente todas as áreas do conhecimento.

Voltando ao campo da tecnologia, a base de praticamente tudo o que vemos hoje em dia é SL/CA. A “computação em nuvem” é livre e a computação móvel também. A conclusão a que chegamos é que, quando a plataforma permite a socialização do conhecimen-to, as mais ricas criações podem fl orescer. O ser humano é um ser social em todos os aspectos e a busca por compartilhamento é uma atividade inerente à nossa espécie. O advento e o sucesso das redes sociais referendam essa urgência em compartilhar – nem que seja compartilhar “abobrinhas”.

O mundo mudou, a tecnologia avançou, mas o ser humano con-tinua mais humano do que nunca. ■

Rafael Peregrino da SilvaDiretor de Redação

CompartilhamentoExpediente editorialDiretor Geral Rafael Peregrino da Silva [email protected]

Editores Flávia Jobstraibizer [email protected]

Kemel Zaidan [email protected]

Editora de Arte Larissa Lima Zanini [email protected]

Estagiário Felipe Brumatti Sentelhas [email protected]

ColaboradoresAlessandra Toninelli, Alexandre Borges, Alexandre Santos, Augusto Campos, Charly Kühnast, Christoph Baudson, David Dodd, Erik Bärwaldt, Florian Effenberger, Grazia Cazzin, Jens Michelsons, Jon ‘maddog’ Hall, Klaus Knopper, Kurt Seifried, Markus Feilner, Martin Loschwitz, Peter Stamm, Thomas Leichtenstern, Tim Schürmann, Ygor Bittencourt, Zack Brown.

Tradução Elias Praciano, Gabriela Edel Mei, Joice

Käfer, Raquel Lucas, Rodrigo Garcia.

Revisão Ana Carolina Hunger, Cristiana Ferraz Coimbra, Gabriela Edel Mei.

Editores internacionais Uli Bantle, Andreas Bohle, Jens-Christoph Brendel, Hans-Georg Eßer, Markus Feilner, Oliver Frommel, Marcel Hilzinger, Mathias Huber, Anika Kehrer, Kristian Kißling, Jan Kleinert, Daniel Kottmair, Thomas Leichtenstern, Jörg Luther, Nils Magnus.

Anúncios: Rafael Peregrino da Silva (Brasil) [email protected] Tel.: +55 (0)11 3675-2600

Penny Wilby (Reino Unido e Irlanda) [email protected]

Amy Phalen (América do Norte) [email protected]

Hubert Wiest (Outros países) [email protected]

Diretor de operações Claudio Bazzoli [email protected]

Na Internet: www.linuxmagazine.com.br – Brasil www.linux-magazin.de – Alemanha www.linux-magazine.com – Portal Mundial www.linuxmagazine.com.au – Austrália www.linux-magazine.es – Espanha www.linux-magazine.pl – Polônia www.linux-magazine.co.uk – Reino Unido www.linuxpromagazine.com – América do Norte

Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta revista, a editora não é responsável por eventuais imprecisões nela contidas ou por consequências que advenham de seu uso. A utilização de qualquer material da revista ocorre por conta e risco do leitor.

Nenhum material pode ser reproduzido em qualquer meio, em parte ou no todo, sem permissão expressa da editora. Assu-me-se que qualquer correspondência recebida, tal como car-tas, emails, faxes, fotografi as, artigos e desenhos, sejam for-necidos para publicação ou licenciamento a terceiros de forma mundial não-exclusiva pela Linux New Media do Brasil, a me-nos que explicitamente indicado.

Linux é uma marca registrada de Linus Torvalds.

Linux Magazine é publicada mensalmente por:

Linux New Media do Brasil Editora Ltda. Rua São Bento, 500 Conj. 802 – Sé 01010-001 – São Paulo – SP – Brasil Tel.: +55 (0)11 3675-2600

Direitos Autorais e Marcas Registradas © 2004 - 2011–:Linux New Media do Brasil Editora Ltda.Impressão e Acabamento: RR Donnelley Distribuída em todo o país pela Dinap S.A., Distribuidora Nacional de Publicações, São Paulo.

Atendimento Assinante

www.linuxnewmedia.com.br/atendimentoSão Paulo: +55 (0)11 3675-2600 Rio de Janeiro: +55 (0)21 3512 0888 Belo Horizonte: +55 (0)31 3516 1280

ISSN 1806-9428 Impresso no Brasil

Page 3: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

Em 2012chega ao Brasil

a maior revista alemãde informática e tecnologia

Em fevereiro nas bancas!

Teste | iPhone 4S

12

iPhone S

Testamos o novo hardware e o Siri na prática

Por fora, o S é praticamente igual ao seu antecessor. Mas suas entranhas foram

muito melhoradas: novo processador Dual-Core, gráficos mais rápidos, melhor câ-

mera, iOS e o novo software de reconhecimento de fala Siri.

por Stephan Ehrmann

Teste | iPhone 4S

13

O iPhone S foi o primeiro a sair

das fábricas da Apple com o

iOS , mas os donos de modelos

mais antigos a partir do iPhone GS,

iPod touch de terceira geração ou do

iPad também podem ser atualizados

gratuitamente. O novo sistema libera

as amarras com o iTunes e permite

que futuras atualizações sejam feitas

“pelo ar”, via Wi-Fi.

O novo sistema traz, de acordo

com a Apple, mais de melhorias,

incluindo um novo sistema de noti-

ficações, um app Câmera renovado,

uma lista de lembretes (tarefas) e uma

banca virtual. Ele está agora integra-

do ao Twitter, substitui o antigo app

de SMS pelo iMessage e faz espelha-

mento com o AirPlay, permitindo que

se veja, em uma TV conectada a um

Apple TV, exatamente o que está na

tela do seu telefone. Entramos em de-

talhes sobre essas novidades em nossa

matéria especial sobre iOS . A outra

grande novidade do lado do software

é o iCloud, um serviço web para usuá-

rios de qualquer iGadget, Macs ou PCs,

para o qual também dedicamos maté-

rias completas nessa edição.

Tal e qual

Nem mesmo pelo texto em suas cos-

tas pode-se determinar a diferença

entre o iPhone S e se antecessor.

Apenas uma comparação minuciosa

pode revelar detalhes como o fato de

os botões de volume estarem alguns

milímetros mais para baixo, o que faz

com que algumas capinhas de pro-

teção não se encaixem mais perfeita-

mente. A diferença mesmo está nas

duas novas linhas pretas na carcaça

de alumínio, dos lados esquerdo e di-

reito superiores, dividindo a estrutura

em quatro partes, contra três do mo-

delo anterior. Isso foi necessário para

acomodar a construção de mais uma

antena, que corrige um defeito que

levou o iPhone a um pequeno de-

sastre de relações públicas: ao segu-

rar o telefone de uma certa maneira,

tampando a antena, o sinal da rede

celular ia para o ralo. Com o iPhone

S isso não acontece mais, graças à re-

dundância de antenas. Não importa

como se segure o aparelho, a recep-

ção permanece intacta.

A qualidade da recepção, porém,

parece não ter aumentado com a

De imediato reconhece-se o iPhone S (à esquerda)

apenas pela linha preta acima dos botões de volume.

O iPhone S está disponível nas cores preta e branca.

nova antena. Testamos o nível de si-

nal em várias situações diferentes e

ele permaneceu exatamente o mes-

mo no e no S.

Pela primeira vez é possível fa-

zer downloads no iPhone S a ,

Mbit/s, o dobro do iPhone , mas a

velocidade de upload permanece

Teste | iPhone 4S

76

c’t especial 02/2012

c’t especial 02/2012

Cinco vezes melhor

As novidades do iOS 5 e o iCloud

Segundo a Apple, mais de novas funções estariam

presentes no iOS , nova atualização gratuita – e ansiosamete

aguardada – para o iPhone, o iPad e o iPod touch

por Leonhard Becker

Teste | iPhone 4S

77

c’t especial 02/2012

c’t especial 02/2012

Assim como acontece com o

Mac OS X, a Apple lança uma

versão atualizada do seu siste-

ma operacional móvel todos os anos

desde , juntamente com um

novo modelo de iPhone. Esse ano,

porém, a empresa apresentou o sis-

tema completo aos desenvolvedores

três meses antes do lançamento.

Mas na quinta versão, a empresa

resolveu ir um passo além: além das

inúmeras melhorias e novas funcio-

nalidades, que vão desde a concep-

ção do novo sistema de notificações

até pequenos detalhes de interface, o

iOS corta seu cordão umbilical com

o iTunes. A partir de agora não é mais

necessário um computador com

Mac OS X ou Windows para configu-

rar seu iGadget. Basta tirar da caixa e

usar. Até mesmo atualizações do sis-

tema, backups e envio de fotos para

o computador são feitos “pelo ar” – o

que era impossível com o iOS .

Cordão umbilical

Com o iOS não é mais necessário

usar o iTunes para a ativação ou res-

tauração de um iPhone, iPad ou iPod

touch. Ao invés do irrecusável convite

para conectar o dispositivo ao iTunes,

você é recebido por um educado as-

sistente de configuração, que ajuda

a escolher o idioma, o país, ativar os

serviços de localização e a sua pri-

meira conexão sem fio. A ativação

requer uma conexão à internet. A

seguir, pode-se escolher uma confi-

guração completamente nova ou a

recuperação de dados a partir de um

backup, que pode estar no iTunes ou

no iCloud. Para isso é preciso digitar

seu Apple-ID.

Por último, o usuário é questiona-

do se estaria disposto a enviar “dados

de uso e diagnóstico anônimos“ au-

tomaticamente para a Apple. Segun-

da a empresa, esses dados anônimos

incluem, entre outras coisas, informa-

ções de hardware e especificações do

sistema, métricas de desempenho e

dados sobre o uso dos equipamen-

tos e de aplicativos. Essa opção pode

ser alterada a qualquer momento no

Ajustes, em Geral > Sobre > Diagnós-

tico e uso. Depois disso o seu iGadget

estará pronto para usar!

Parcialmente nublado

A troca de dados e conteúdo tam-

bém vêm gradualmente migrando da

conexão via USB com o iTunes para a

internet – caso se queira. Há anos já

é possível obter emails, contatos, ca-

lendários e notas através de contas

MobileMe, Exchange ou IMAP. Servi-

ços adicionais como o Buscar iPhone,

a possibilidade de apagar todos os

seus dados remotamente e a sincro-

nização dos favoritos do Safari fazem

parte, desde outubro deste ano, do

novo iCloud.

O iCloud consiste em uma conta

de email (com endereço @me.com)

e sincronização de contatos, calen-

dários, lembretes, favoritos e notas

entre todos os seus iGadgets e seus

Macs com OS X Lion, Windows Vista

ou . Emails, contatos e calendários

também são acessíveis via web. Os

calendários incluem também listas

de tarefas, acessíveis no novo app

Lembretes do iOS e podem ser

compartilhados com outras pessoas

para uso em grupo.

No site do iCloud.com também

oferece o acesso ao Buscar meu iPho-

ne, assim como aos documentos do

Pages, Numers ou Keynote criados

no iOS e enviados automaticamen-

te para a nuvem. Pelo navegador é

possível duplicar, apagar ou baixar

qualquer documento disponível em

vários formatos. Um documento de

Keynote, por exemplo, pode ser bai-

xado em seu formato riginal, PDF ou

PowerPoint. Também é possível subir

arquivos compatíveis com esses pro-

gramas para o iCloud pelo navegador.

Os desenvolvedores podem, da mes-

ma maneira, integrar seus apps à nu-

vem, sincronizando documentos en-

tre todos os dispositivos do usuários

mas sem o acesso via web.

Outra parte bacana do serviço é o

Compartilhar Fotos. Se ativado pelo

usuário, o recurso faz com que todas

as fotos dos últimos dias captura-

das pela câmera do seu iPhone ou

adicionadas à Sequência de Fotos

sejam enviados e armazenados nos

servidores da Apple. Os diposistivos

com iOS armazenam até fotos,

mas os Macs ou PCs não tem limite

algum. O recurso faz juz ao nome até

o momento, ou seja, nada de enviar

vídeos para o rolo de fotos.

Uma cópia de todas as fotos cap-

turadas com o iOS é enviada direta-

mente para a nuvem, mas apenas

com uma conexão Wi-Fi, assim como

para receber novas fotos. As fotos

adicionadas à Sequência de Fotos no

iPhoto também aparecem automá-

ticamente em todos os dispositivos

conectados a essa conta. O recurso

não vem ativado por padrão e deve

ser explicitamente autorizado pelo

usuário. As fotos aparecem em um

álbum especial, dentro do app Fotos.

O Apple TV também recebeu uma

atualização para poder receber a Se-

quência de Fotos e mostrar todas as

suas fotografias direto na sua TV LED

de ” automágicamente.

iTunes nas nuvens

A partir do iOS .. os usuários já

podem baixar músicas, séries de TV,

livros e apps comprados na iTunes

Store em qualquer dispositivo autori-

zado pela conta respectiva.

O iTunes na nuvem vai além. Com

ele, você tem a opção de baixar auto-

máticamente qualquer compra feita

na iTunes Store para todos os seus

disositivos cadastrados com a mes-

ma conta, eliminando a necessidade

de sincronização. Há, porém, uma li-

mitação: ao ativar a opção de descar-

regamento automático de suas com-

pras no iOS, o Apple-ID fica ligado a

ele por no mínimo dias. É possível

mudar o Apple-ID na loja da Apple a

qualquer momento para baixar con-

teúdo manualmente, mas o descar-

iCloud

112

c’t especial 02/2012

c’t especial 02/2012

De volta para o futuroiCloud em equipamentos antigos

O novo serviço online da Apple traz novos pré-requisitos:

apenas os dispositivos equipados com iOS ou Mac OS

X . podem brincar nas nuvens. O que a empresa não

deixa claro para o usuário é que algumas partes do iCloud

funcionam até mesmo com o iOS ou com o Mac OS X ..

por Markus Stöbe

O iCloud já está disponível gra-

tuitamente para quem quiser.

Usuários do MobileMe têm

então a oportunidade de escolher

entre continuar usando o serviço an-

tigo até a data de vencimento de sua

assinatura anual ou pular de vez para

dentro da Maria-Fumaça do iCloud.

A favor do MobileMe está o fato de

que ele funciona com praticamente

todos os equipamentos antigos da

Apple. Quem ainda não atualizou seus

iGadgets para o iOS ou seus Macs

para o OS X Lion está de fora do iCloud,

segundo a Apple. Isso é um tanto irri-

tante para aqueles que, por exemplo,

possuem um Mac novo com o Lion

mas não podem ou não querem atua-

Com o auxílio do compartilhamento público de calendários pode-se acessar os compromissos do

iCloud até mesmo no iCal do OS X .. Já mudanças em eventos existentes são tão impossíveis

quanto a criação de novos.

iCloud

113

c’t especial 02/2012

c’t especial 02/2012

lizar seus iPhones para o iOS .Mas para uma parte do serviço existe uma entrada pelos fundos. A Apple utiliza para o e-mail, calendá-rios e contatos os padrões IMAP, Cal-DAV e CardDAV, respectivamente. O endereço de acesso aos servidores estão até mesmo em um documento de suporte oficial no site da empre-sa. Para receber e-mails o endereço é imap.mail.me.com e para enviar e--mails endereço é smtp.mail.me.com. O nome de usuário e a senha são os mesmos usados do seu Apple ID, in-clusive o que vier depois do @, já que é preciso um e-mail válido para poder se registrar no iCloud. Pode ser um endereço @me.com ou outro endere-ço de e-mail qualquer.Tanto no iOS quanto no Mac OS X . podemos entrar esses dados manualmente em uma nova conta IMPA no Mail e usar nossa conta de e-mails normalmente. Até mesmo as notas são movidas para uma pasta própria – o que não é de se admirar, já que são apenas rascunhos marca-dos com uma etiqueta especial. A partir do iOS , as notas aparecem

corretamente no app Notas e, no OS X ., como uma subpasta da seção Lembretes. Se você já estiver com esses últimos sistemas, é possível até mesmo editar o texto das notas, mas nos mais antigos apenas a leitura é permitida, sendo impossível criar no-vas notas ou editá-las.

Contatos e compromissosCom os endereços dos servidores para compromissos e contatos a Apple infelizmente não é assim tão generosa. Mas quem já criou uma conta no iCloud, seja uma nova ou uma migração do MobileMe, pode facilmente encontrar sozinho os en-dereços desses servidores. O ende-reço para o servidor de calendários encontra-se em ˜/Library/Calendars, em um arquivo .plist que fica dentro do diretório que começa com uma sequência bizarra de letras e números e termina com a extensão .caldav.O endereço para o servidor Card-DAV fica escondido ainda mais fun-do nas entranhas do sistema em ˜/Library/Application Suport/Address-Book/Sources. Também aqui é possí-vel achar um arquivo Configuration.plist dentro de uma pasta nomeada com uma sequência de letras e nú-meros.Ambos os arquivos podem ser aber-tos em editores de texto simples, como o TextWrangler (gratuito na App Sto-re). Procure pelo termo iCloud e Bum! Lá está o nosso endereço. No geral, o nome desses servidores deve ser algo como p-caldav.icloud.com para os

A conta de e-mail do iCloud pode ser visualizada basicamente em qualquer cliente com suporte a

IMAP, como o Mail do OS X .. Apenas as notas ficam separadas em uma pasta normal de mesmo

nome no servidor.

Ao assinar o URL apropriado de um servidor CalDAV no iCal, os dados do calendário são atualizados

pela internet mesmo sem o Lion.

iCloud

100

c’t especial 02/2012

c’t especial 02/2012

Entre o céu e a TerraiCloud para todos os gostos

Outrora um problema apenas dos executivos, agora um velho conhecido

de todos os donos de um Mac, iPhone, iPad ou iPod touch: ter seus

e-mails, compromissos, endereços e notas em todos os seus dispositivos

pessoais atualizados instantaneamente. O novo serviço gratuito da Apple

promete isso e muito mais, mas também não deixa de ter suas manhas.

por Leonhard Becker e Ole Meiners

iCloud

101

c’t especial 02/2012

c’t especial 02/2012

R ecentemente, na redação: “Minha

agenda está finalmente igualzinha

no PC casa, no meu iPhone e no

MacBook da editora. O iCloud é supim-

pa!” O time da c’t entrou em silêncio ab-

soluto. O que podemos dizer ao nosso

colega representante de vendas? Teria

ele tentado ironicamente dizer que

serviços de sincronização já eram um

truque velho e que o iCloud não era

nenhuma novidade de abalar o mun-

do? Afinal, o MobileMe e até mesmo o

antigo .Mac já permitiam e equiparação

de endereços, compromissos, favoritos

e muitas outras coisas. Mas não, ele fa-

lava sério. “Nunca achei que valesse a

pena pagar cem dólares por isso.” Aha!

O iCloud é então supimpa, apenas por-

que é gratuito em sua versão básica

com GB de capacidade de armazena-

mento nas nuvens. Mas para os sincro-

nizadores mais experientes vão achar

diversas novidades no iCloud.Por dentro da nuvemO iCloud é basicamente um serviço

de e-mail IMAP com notificações de

envio via push e sincronização de e-

-mails, compromissos, agenda, notas,

favoritos e tarefas, esse último uma

novidade em relação ao MobileMe.

Por si só esse conjunto de recursos

não seriam lá essas coisas, já que Goo-

gle, Yahoo e tantos outros oferecem

mais ou menos a mesma coisa. Mas a

Apple mantém o iCloud livre de pro-

paganda, inclusive no acesso via web

no endereço www.icloud.com.

Entretanto, nem todo mundo

pode entrar para a festa. O registro

requer um Mac rodando o OS X ..

ou um dispositivo rodando o iOS .

Com a turma dos PCs a Apple é me-

nos exigente, suportando inclusive

o Windows Vista. Mas nós mostrare-

mos a você como usar os serviços do

iCloud em máquinas velhinhas ainda

nessa edição.O recurso De Volta ao Meu Mac,

que até aqui era sozinho considerado

por muitos como motivo para pagar

a assinatura anual do MobileMe, tam-

bém foi incorporado na versão gratui-

ta do iCloud. Ele permite o acesso se-

guro a arquivos e pastas que estão no

Mac da sua casa a partir do compu-

tador do escritório, sem a complica-

ção de se criar um túnel VPN ou usar

soluções com domínios dinâmicos. A

propósito, isso não funciona mais no

Snow Leopard.A Apple trouxe ao iCloud também

o recurso Buscar meu iPhone (ou iPad,

ou iPod touch). O serviço de localiza-

ção foi inclusive estendido aos Macs,

permitindo que computadores es-

quecidos ou roubados tenham maio-

res chances de serem encontrados.

Assim como no iOS, os donos dessas

máquinas podem enviar uma mensa-

gem, bloquear ou apagar completa-

mente seus dados à distância.

Um outro recurso baseado em

localização, desta vez para localizar

seres humanos, chega na forma do

app Amigos, disponibilizado gratuita-

mente na App Store. Além da locali-

zar o seu marido ou seus filhos – lo-

gicamente apenas a aprovação dos

mesmos – é possível obter acesso

temporário à localização de qualquer

membro do iCloud que concordar

com o acesso, algo muito útil de ser

usado quando um grupo de amigos

pretende se encontrar em um festi-

val de música em campo aberto, por

exemplo, sem a necessidade de se

telefonarem dezenas de vezes. Caso

o objetivo seja o oposto, basta usar o

controle Ocultar dos Seguidores.

Inovação importante é o novo

backup online de dispositivos com

iOS. Até então o responsável pelo

backup, que precisava ser feito na

máquina do usuário, conectado com

um cabo USB, era o iTunes. Apesar da

sincronização sem fio não ser um dos

serviços do iCloud, ela se encaixa per-

feitamente na estratégia da Apple de

libertar seus dispositivos móveis das

amarras com Macs e PCs. A transfe-

rência de fotos capturadas pela câ-

mera dos iGadgets fica a cargo do

Compartilhar Fotos. Para todos os ou-

tros tipos de arquivos deve-se usar o

Documentos na Nuvem.Todos a bordo!Ninguém está forçando você a mi-

grar para o iCloud. É possível conec-

tar seu novo iPhone S ou seu novo

Mac como da maneira tradicional,

via USB. O processo é até mais rápi-

do. Mas para usar o iCloud é preciso

O iCloud faz a sincronização de menos itens em comparação ao MobileMe, como as regras de

e-mail, por exemplo. Em compensação, agora pode-se configurar regras de e-mail na versão web,

em iCloud.com.

iCloud

100

c’t especial 02/2012

c’t especial 02/2012

Dança da Chuva

Completando o iCloud com outros serviços

O iCloud chegou com muitas novidades para os usuários de

Mac ou iOS e custa menos (de graça!) que o MobileMe, seu

antecessor, mas alguns serviços foram removidos. Para quem já

está com saudades, alternativas não faltam no mercado.

Por Markus Stöbe

iCloud

101

c’t especial 02/2012

c’t especial 02/2012

Q uem está começando do zero

com o iCloud não tem do que

reclamar. O pacote de entrada

é gratuito e serve para a maioria dos

casos, nem que seja apenas para testar

o serviço. Caso os GB sejam insufi-

cientes para você depois de um tem-

po, pode-se aumentar o espaço dispo-

nível para até GB e o preço continua

mais barato que o do MobileMe.

Para os que já usavam o serviço

antigo, é preciso aceitar algumas per-

das durante essa mudança. Os que

migraram de contas ainda ativas do

MobileMe podem manter, até mea-

dos de , o seu iDisk, Galeria e

hospedagem de sites, paralelamente

ao iCloud. No entanto, o compartilha-

mento de contatos com outros mem-

bros do MobileMe, a sincronização de

chaves, senhas, preferências de apli-

cativos e itens do Dashboard serão

instantaneamente parte do passado.

Alternativamente pode-se criar

uma conta separada para usar o

iCloud até o vencimento de sua

conta anual do MobileMe e poste-

riormente migrar a sua conta antiga

ou mudar de vez para a nova. Como

não é possível mesclar duas contas,

é preciso ser cuidadoso com a esco-

lha da conta com a qual serão feitas

compras nas lojas de app e música da

Apple, caso contrário a despedida de

uma das contas será traumática.

Mas para muitos dos serviços ex-

cluídos existe substitutos à altura. Eles

não são da Apple e muitas vezes não

são gratuitos, mas por isso mesmo

alguns são até melhores que o Mo-

bileMe. Romper com o ecossistema

da empresa da maçã e contar com

outros fornecedores tem algumas

vantagens concretas. Se um dos ser-

vidores em Cupertino cair, por exem-

plo, têm-se ainda parte dos recursos

funcionando. Além disso, é possível

personalizar as ofertas de serviços

exatamente às suas necessidades.

Quem não precisa do iDisk pode

simplesmente esquecê-lo e contratar

uma empresa de hospedagem de si-

tes, podendo inclusive escolher onde

esse servidor estará. Se for no Brasil, o

acesso poderá ser até mais rápido.

Chaveiro para viagem

Uma das partes mais complicadas de

serem substituídas é a sincronização

de chaves, ou seja, das suas senhas

pessoais. O sistema da Apple é tão

profundamente integrado ao OS X

e ao iOS que ferramentas que traba-

lham de forma transparente raramen-

te conseguem ser tão confortáveis.

Elas até conseguem integrar-se aos

navegadores e armazenar as senhas

usadas na internet, mas as chaves

usadas no Finder não são suportadas

automaticamente, por exemplo.

O Password é um desses que con-

segue sincronizar sua base de dados

automaticamente. O programa pode

importar, se for preciso, o seu molho

de chaves e senhas do Acesso às Cha-

ves do OS X, para que você não preci-

se redigitar todos os seus registros em

sites acumulados ao longo dos anos.

Posteriormente é possível salvar a co-

leção em um arquivo local, transferí-lo

para outros dispositivos em uma rede

sem fio ou armazená-la na nuvem

com o Dropbox. A partir daqui, tudo

funciona no modo automático, inclu-

sive com apps disponíveis para iOS e

para Windows. Uma desvantagem é

que seus dados mais sigilosos estarão

sob guarda do serviço online norte-

-americano Dropbox, que no passado

já foi notícia mais de uma vez sobre

problemas com segurança. O Pass-

word para mac custa US na App

Store e a versão para iOS sai por US .

O KeychainGo custa apenas US

tanto na versão para OS X quanto

para iOS, mas ainda está em fase beta.

Este programa tem uma abordagem

um pouco diferente do Password:

ele roda em plano de fundo no Mac

O Password sincroniza as senhas coletadas diretamente entre os dispositivos conectados em uma

mesma rede sem fio ou pela internet, usando o Dropbox.

O KeychainGo sincroniza seu banco de dados

com o programa Acesso às Chaves do Mac OS X e

com iGadgets.

Page 4: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

6 www.linuxmagazine.com.br

CAPA

É guerra! 31

O universo da tecnologia está sempre em guerra. Ataques, defesas,

proteções e barricadas fazem parte do dia a dia do administrador

de sistemas. Mais parece um fi lme, mas é a mais pura realidade.

Operação controle total 32

Se você tem absoluta certeza de que seus servidores Linux são à prova

de invasão e que somente você tem o controle deles, pense de novo.

Tropa de elite 36

Os hackers usam vários tipos de ferramentas para atacar uma rede

ou site. Você também deve munir-se de ferramentas para garantir

a segurança dos seus dados. Vamos mostrar neste artigo algumas

ferramentas utilizadas por hackers para capturar informações.

Monitoramento fl exível 42

A ferramenta de monitoramento OpenNMS é uma arma útil e que pode

fornecer uma gama de informações importantes para os administradores.

Triturador de senhas 46

Como os aplicativos da web memorizam senhas? Eles não memorizam.

Eles fazem picadinho delas. E o Phpass, que criptografa senhas

nos aplicativos mais populares da web, os ajuda a fazer isso.

ÍND

ICE

Page 5: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

7

TUTORIALRoteador de cara nova 58

O fi rmware de código aberto OpenWrt permite que você estenda os recursos de diversos roteadores e pontos de acesso sem fi o .

Mapas na rede 64

Construa mapas e serviços de geolocalização em seu site com o OpenLayers, MapFish e Mapbende

ANÁLISEBaixo consumo 68

Ao invés de gastar energia, o TLP permite que você

desligue componentes específi cos do seu computador – dos quais você não necessita –, estendendo a duração de bateria e consequentemente sua vida útil.

Organizador de correspondência 72

O Sieve é uma solução de servidor, fácil de usar, que ajuda os administradores a fi ltrar o fl uxo de email de forma inteligente.

SERVIÇOSEditorial 04Emails 08Linux.local 78Preview 82

Linux Magazine #86 | Janeiro de 2012

| ÍNDICELinux Magazine 86

COLUNASKlaus Knopper 10

Charly Kühnast 12

Augusto Campos 14

Zack Brown 15

Alexandre Borges 16

Kurt Seifried 18

NOTÍCIASGeral 22

➧ Aulas de Android

➧ Chromium OS pronto para usar

➧ 10 bilhões de aplicativos baixados no Android Market

➧ Um prêmio para a física aberta

CORPORATENotícias 24

➧ Univention Corporate Server 3

➧ Inteligência empresarial com Jaspersoft 4.5

➧ Gartner anuncia previsões de TI para 2012

Entrevista com David Mair 26

Coluna: Jon “maddog” Hall 28

Coluna: Alexandre Santos 30 z

ANDROIDCoração turbinado 50

Não é apenas a tímida política de atualizações de muitos fabricantes de dispositivos móveis que torna atraente o uso de fi rmwares alternativos em smartphones equipados com Android: frequentemente, eles também oferecem muito mais recursos que o fi rmware original.

PROGRAMAÇÃOUma mão para o Pascal 54

O Lazarus é um ambiente de desenvolvimento para o Free Pascal compatível com diversas plataformas, e que permite aos desenvolvedores criar interfaces gráfi cas com alguns cliques e um pouco de lógica de programação.

Page 6: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

14

CO

LU

NA

www.linuxmagazine.com.br

Coluna do Augusto

40 anos de ShellO que houve nesses 40 anos de existência do Shell?

Estamos na segunda década do século XXI, e hoje já é plenamente possível instalar e usar o Linux no desktop sem jamais olhar para

um terminal de texto ou para o prompt Shell. Mas o Shell, ou mais especifi camente o /bin/bash , é um elemento importante dos bastidores de qualquer dis-tribuição popular moderna, e continua sendo um elemento essencial para usuários avançados, além de um recurso à disposição quando a interface grá-fi ca é insufi ciente.

O Bash, Shell que tipicamente vem como padrão em distribuições Linux (e também em alguns sistemas Unix, como o OS X), surgiu em 1989 no âmbito do projeto GNU para substituir o clássico Bourne Shell. Além de ser o responsável por processar comandos como ls , cat e

for i in IMG*.jpg; do mv $i ferias-recife-$i; done

que você digita diretamente no terminal, o Shell tam-bém é capaz de processar scripts, que são sequências estruturadas de comandos que permitem automatizar diversas operações, inclusive boa parte do que ocorre na inicialização do sistema operacional.

O Bash se sai bem nisso, mas suceder o clássico Bourne Shell (ou simplesmente sh ) não é tarefa para qualquer um. Além de precisar manter a compatibi-lidade com padrões como o POSIX, que permitem a interoperabilidade de scripts e comandos de adminis-tração em diversas plataformas Unix e Unix-like, há uma tradição a ser mantida, já que o Bourne Shell surgiu em 1977 (no Unix version 7 dos laboratórios Bell), ainda hoje pode ser encontrado (em versões atualizadas ou em clones baseados em modos de com-patibilidade) como o Shell padrão de administração de determinados sistemas, e foi o objeto do primeiro livro que apresentou ao público a programação de

scripts Shell – formando assim o conceito geral de desenvolvimento neste ambiente.

E o Bash não é a única alternativa ao Bourne Shell. Outro Shell clássico e que tem seus fãs é o C Shell ( csh ou tcsh ), criado no âmbito do BSD por Bill Joy em 1978, com características de desenvolvimento de scripts que lembram as estruturas da linguagem C. Historicamente, ela tinha como diferencial também a interatividade: foi nela que surgiram conceitos hoje familiares, como o completamento automatizado de comandos e de nomes de arquivo.

O Korn Shell ( ksh ) também é clássico e ainda per-manece em uso. Criado em 1983 nos laboratórios Bell, ele mantinha a compatibilidade de scripts com o Bour-ne Shell, e incluía recursos de interatividade (como o histórico de comandos) do C Shell.

Todos eles, entretanto, podem traçar sua origem conceitual a um ancestral comum: a Thompson Shell (também chamado de sh , como o Bourne Shell), criada por Ken Thompson (um dos criadores do Unix) em 1971. Programado em menos de 900 linhas de código. 

Este Shell ancestral não executava scripts – era ex-clusivamente interativo, e boa parte dos comandos que fazem parte hoje dele (como builtins ) do próprio interpretador Shell – como if e echo – na época eram arquivos externos. Mas recursos como pipes ( | ou, na época, ̂ ) e redirecionamentos de entrada e saída ( < , > , >> etc.) já estavam presentes.

A Thompson Shell inaugurou esta maneira de intera-gir com o sistema, e recentemente completou 40 anos. Parabéns a ele, e longa vida aos seus descendentes! ■

Augusto César Campos é administrador de TI e, desde 1996, man-

tém o site BR-linux.org, que cobre a cena do Software Livre no Brasil

e no mundo.

Page 7: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

31Linux Magazine #86 | Janeiro de 2012

CA

PA

31Linux Magazine #86 | Janeiro de 2012

Guerra

É guerra! O universo da tecnologia está sempre em guerra. Ataques, defesas, proteções e barricadas fazem

parte do dia a dia do administrador de sistemas. Mais parece um fi lme, mas é a mais pura realidade.

por Flávia Jobstraibizer

A rotina diária do admistrador de sistemas, do ana-lista e do especialista em segurança é sempre a mesma: evitar que alguém mal intencionado

roube informações, invada um servidor, danifi que--o, use as informações coletadas para fi ns diversos ou malevolências relacionadas. Estes profi ssionais vivem entre a cruz e a espada, e são, geralmente, especialis-tas somente em defesa. Mas todo bom defensor, tem de saber como atacar, pois um dia você pode estar do outro lado do cano do revólver – e esperamos que suas intenções sejam boas caso necessite invadir um sistema. É descobrindo uma defi ciência e a atacando que se pode aprender como evitá-la.

É grande a variedade de armas no arsenal de um cracker (o invasor, conhecido erroneamente como hacker ). O cracker, como o próprio nome diz, quebra ( crack ) sistemas, e tais indivíduos geralmente são os responsáveis pela maioria das manchetes que tratam de crimes digitais: desvio de somas de contas bancárias, invasão à sistemas governamentais, roubo (e posterior divulgação) de informação sigilosa e confi dencial e tantos outros riscos à segurança da informação.

Da mesma forma, o administrador de sistemas ne-cessita conhecer, aprender a utilizar e se aprimorar nos recursos de defesa (e até mesmo de ataque) à sua rede e aos seus sistemas.

Nesta edição da Linux Magazine , trazemos um interessante artigo sobre como invadir e tomar o controle ( takeover ) de um ambiente Linux. Se você pensa que seu Linux está totalmente seguro contra invasões, não deixe de ler.

No quesito autenticação, conheça o Phpass, ferramenta essencial para a criptografi a de senhas na web.

Se você fi cou preocupado com o início deste ar-tigo, e quer monitorar melhor o seu sistema, conhe-ça o OpenNMS, que pode fornecer uma gama de informações versáteis aos administradores, desde o hardware até instâncias de software.

E para fi nalizar, o artigo Tropa de elite irá apresen-tar um arsenal de armas contra a guerra das invasões e a captura de informações.

Vista sua camiseta camufl ada e aproveite as pró-ximas páginas! ■

Matérias de capaOperação controle total 32

Tropa de elite 36

Monitoramento fl exível 42

Triturador de senhas 46

CA

PA

Page 8: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

54 www.linuxmagazine.com.br

PROGRAMAÇÃO | Criação de interfaces com Lazarus

IDE para Pascal e Object Pascal

Uma mão para o Pascal O Lazarus é um ambiente de desenvolvimento para o Free Pascal compatível

com diversas plataformas, e que permite aos desenvolvedores criar interfaces

gráfi cas com alguns cliques e um pouco de lógica de programação.

por Tim Schürmann

Adicionar uma interface de usuá-rio simples aos seus programas em Object Pascal é entediante

e leva muito tempo. Para simplifi car a tarefa repetitiva de derivar os resul-tados de inúmeras classes, a Borland desenvolveu o Delphi em meados dos anos 1990. No ambiente de desenvol-vimento Delphi, os programadores podem, com cliques, criar uma in-terface rapidamente. Infelizmente, o Delphi é um programa caro e só está disponível para Windows.

No entanto, um ambiente total-mente gratuito que responde pelo nome de Lazarus [1] é uma alter-

nativa para seu análogo comercial: sua base é o compilador Free Pascal, incluído na maioria das distribuições e cujo grande escopo de funções é comparável ao bom e velho Delphi em muitas áreas. Além disso, funcio-na em Windows e em Mac Os X.

Início Ao ser iniciado pela primeira vez, o La-zarus bombardeia o desenvolvedor com diversas janelas, mas os programadores de Delphi se sentirão imediatamente em casa com elas ( fi gura 1 ). Para iniciar, selecione o elemento gráfi co necessário na paleta do topo da tela e coloque-o na caixa de diálogo Form (nome dado pelo Lazarus a todas as caixas de diálo-gos e janelas no programa resultante). Após soltar o elemento, você pode usar as bordas para redimensioná-lo, como se fosse uma ferramenta de desenho, e arrastá-lo para a posição correta. Os ajustes mais fi nos e as modifi cações de propriedades, como os rótulos de bo-tões, são o domínio do object inspector .

No plano de fundo, o Lazarus gera automaticamente o código fonte, ao qual é necessário adicionar lógica de programação em um editor de janelas. O Object Inspector o ajudará com isso:

ele não somente lista todos os possíveis eventos que a interface gráfi ca enten-de, mas deixa que você aponte e clique para atribuir-lhes métodos existentes ou criar um método em branco.

Fundamentos O Lazarus oferece o conjunto de re-cursos típico de qualquer ambiente de desenvolvimento. O gerenciador de projetos ajuda a manter o contro-le de projetos complexos, e a janela Project Inspector lhe permite controlar os arquivos e pacotes envolvidos. Para compilar um aplicativo, tudo o que se precisa fazer é apertar o botão ver-de de play . Caso necessário, pode-se atribuir confi gurações individuais de compilação para cada projeto.

Os erros são listados em uma janela separada. Clicar em um alerta o leva diretamente até a parte correspondente do código ( fi gura 2 ). O debugger inte-grado o ajuda a investigar problemas e interrupções no programa nos pontos de quebra previamente defi nidos na janela do editor. Também é possível ter uma visão passo-a-passo de seus progra-mas, visualizando valores e variáveis.

O editor oferece o tipo de escopo que se espera de um IDE profi ssional,

PR

OG

RA

MA

ÇÃ

O

Quadro 1: Comércio livre O Lazarus liga estaticamente a LCL

ao aplicativo Object Pascal. Para su-

portar o desenvolvimento de progra-

mas comerciais, apesar dessa carac-

terística, a biblioteca de classes está

disponível sob uma licença LGPL

modifi cada. Infelizmente isso não se

aplica a todas as unidades que ele

contém. Antes de usar o componen-

te em um aplicativo comercial, é uma

boa ideia conferir a licença, que está

embarcada no código fonte para o

componente. O Lazarus, em si, não

é licenciado sob GPL.

Page 9: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

55

| PROGRAMAÇÃOCriação de interfaces com Lazarus

Linux Magazine #86 | Janeiro de 2012

incluindo destaques de sintaxe e em-pacotamento do código. O recurso de autocompletar sugere possíveis méto-dos e nomes de classe, ajudando-o ao preencher os parâmetros. Inclusive, adiciona automaticamente o begin e o end obrigatórios ao código ( fi gura 3 ).

Um atalho de teclado lhe permite adicionar componentes para as linhas selecionadas ou indentá-las. Você pode armazenar os blocos de código em templates. Para usar o código, pressio-ne um atalho seguido por [ Ctlr ]+[ J ], para dizer ao Lazarus que ele deve substituir todo o template. O ambiente de desenvolvimento inclui templates de códigos para construções comuns, como loops for e blocos begin / end .

Para declarar uma classe, é possí-vel simplesmente defi nir os métodos e propriedades e pressionar um atalho de teclado para criar, automaticamen-te, um método básico vazio com os métodos get e set correspondentes. O recurso Quick Syntax Check desco-bre erros de digitação antes que você inicie a construção do bloco, e outros assistentes apontam blocos abertos de código fonte ou IFDEF / ENDIF s.

Orientação O Lazarus tem uma boa seleção de ferramentas que ajudam os desenvolve-dores a navegar pelo código fonte. Você pode, por exemplo, realizar buscas e substituições de forma fl exível com o uso de expressões regulares. Além de buscar em todo o texto, o navegador do código também permite buscar so-mente pacotes, nomes de unidade e designadores para um termo específi co.

A janela CodeExplorer ajuda a manter o controle sobre programas de códigos mais longos. Ela cria um delineador de todos os tipos, variáveis, interfaces, implementações e unidades usadas para pular para a posição cor-respondente no código com um único clique. O Code Observer , incluído no CodeExplorer , aponta para estilos po-bres de programação, como indentação incorreta ou procedimentos excessiva-

mente longos ou vazios. Outras jane-las mostram as dependências entre as unidades e os formulários criados até o momento. Um editor FPDoc ajuda a documentar o código fonte de acordo com o padrão FPDoc.

O Lazarus também suporta refa-toração por meio da renomeação de designadores no projeto, extraindo o código fonte selecionado em um novo procedimento ou invertendo atribuições

(convertendo A := B em B := A ). Além disso, o editor rastreia automaticamente os métodos abstratos ainda não imple-mentados e cria um método vazio. A única coisa que falta é um link para um sistema de atribuição de versões.

Clássico moderno Se você arrastar um botão em um for-mulário no Lazarus, o ambiente de de-senvolvimento gera automaticamente

Figura 2 O debugger integrado permite que os desenvolvedores investiguem

erros no código, como problemas de digitação.

Figura 1 O Lazarus dá as boas vindas ao desenvolvedor com diversas

janelas, que parecem desordenadas. O formulário vazio no centro é

o aplicativo resultante.

Page 10: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

56 www.linuxmagazine.com.br

PROGRAMAÇÃO | Criação de interfaces com Lazarus

um objeto de tipo Tbutton no plano de fundo. A classe correspondente vem como cortesia da Biblioteca de Compo-nentes Lazarus (LCL, na abreviação em inglês). Esta consiste de uma biblioteca de classes normal que pode ser usada independentemente do Lazarus, com unidades e classes que criam a interface para seu programa em Object Pascal.

A LCL não desenha sozinha os elementos gráfi cos individuais na tela, mas depende de uma biblio-teca legada do sistemas para isso. Os desenvolvedores podem esco-lher essa biblioteca no momento de construir o código. Os usuários Linux podem escolher entre Qt, Gtk+ ou Gtk2. O suporte para a o Pascal Gui Toolkit [2] está atual-mente em desenvolvimento.

Além disso, a LCL está disponível para outros sistemas operacionais, suportando funções de sistemas dire-tamente no Windows e no Windows CE, e em Cocoa e Carbon no Mac OS X. A fi gura 4 mostra a estrutura da LCL e como ela interage com os componentes individuais.

Transferência de conhecimento Graças à LCL, você pode escrever apli-cativos compatíveis com várias plata-formas facilmente, tendo somente que recompilá-las no sistema operacional alvo em um momento posterior (es-creva uma vez, compile em todos os lugares). O Lazarus mostra como isso funciona em termos práticos: o ambien-te de desenvolvimento foi programa-do inteiramente em LCL e pode ser reconstruído rapidamente. Também é possível usar uma biblioteca de in-terface gráfi ca diferente ao selecionar o item do menu em tempo real.

Os desenvolvedores precisam to-mar cuidado com duas armadilhas: uma delas é que algumas interfaces (como o Qt) estão ofi cialmente em beta, embora sejam estáveis e os desenvolvedores já as utilizem para

produção. Outra diz respeito à LCL tentar seguir as linhas guias do sistema operacional alvo. Isso pode levar os componentes a agir de maneira diversa em várias plataformas. Por exemplo, com o Windows não será possível mudar a escala de caixas de diálogo com o mouse, embora se possa fazê-lo no X11. Sem contar que os sistemas operacionais lidam com atalhos de várias maneiras. O wiki do Lazarus [3] inclui dicas sobre programação para plataformas cruzadas.

A LCL faz mais do que desenhar janelas coloridas na tela. Ela inclui, por exemplo, classes para acesso simples e rápido a banco de dados, incluindo

PostgreSQL, dBase e MySQL. No La-zarus, é possível colocar componentes de conexão em banco de dados den-tro de um formulário como se fosse qualquer elemento de interface, onde aparecerão como ícones. No aplica-tivo fi nalizado, eles fi cam no plano de fundo e executam suas tarefas de modo transparente ( fi gura 5 ).

Dois oráculos A biblioteca de componentes visuais do Delphi (VCL) foi o modelo para a LCL. O Tbutton é um lembrete intencional para os desenvolvedo-res que tinham familiaridade com o Delphi. Apesar disso, a LCL não

Figura 3 O editor faz sugestões enquanto você escreve.

Figura 4 A LCL atua como uma interface entre o programa Object Pascal e as

bibliotecas de interface para o sistema operacional suportado.

Page 11: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

57

| PROGRAMAÇÃOCriação de interfaces com Lazarus

Linux Magazine #86 | Janeiro de 2012

é totalmente compatível com VCL. Algumas vezes, isso ocorre por conta da independência de plataforma e é intencional. Em outras, os compo-nentes simplesmente estão faltando.

Isso é particularmente verdadei-ro no caso de classes de aplicativos multimídia, como Tanimate ; com-ponentes específi cos do Windows, como TmediaPlayer ; e acesso a rede, como o ADO. Assim, é impossível transferir programas Delphi e Kylix para o Lazarus sem alguma modifi ca-ção. Embora o Lazarus ofereça uma série de assistentes para ajudar nessa conversão, o processo fatalmente envolverá algum trabalho manual. A wiki do Lazarus [3] oferece uma lista das diferenças e várias páginas com dicas e guias para conversões.

Conclusão Uma vez que você se familiariza com a aparência do programa – que inicial-mente parece um ambiente desorde-nado – o Lazarus o ajudará a criar um programa simples, independente de plataforma, em apenas alguns minu-

tos. Uma calculadora, por exemplo. Ao mesmo tempo, o desenvolvedor com um ambiente legado de desen-volvimento teria tempo apenas de trabalhar com a derivação de classes para os botões. O wiki abrangente do programa [3] ajuda os desenvolvedo-res na curva inicial de aprendizado.

As conversões do Delphi cons-tituem um processo relativamente indolor, embora algum trabalho ma-nual seja necessário. A recompensa é um aplicativo Object Pascal que poderá ser compilado em todos os grandes sistemas operacionais.

Apesar de mais de dez anos de desenvolvimento, o trabalho ainda está em andamento no Lazarus e na LCL, sendo que o processo se encontra no ponto zero (a versão atual é 0.9.30). No entanto, não dei-xe que isso o afaste do Lazarus: ele é estável e compete com o Delphi em igualdade de condições quando combinado ao Free Pascal. ■

Quadro 2: Uma jornada ao passado Baseado no Algol 60, Niklaus Wirth desenvolveu a linguagem de programa-

ção estruturada Pascal no início dos anos 1970, principalmente com propó-

sitos educacionais. O programa se tornou extremamente popular nos anos

1980 graças ao Turbo Pascal, da Borland. Com o sucesso, a Borland esten-

deu o escopo de recursos do pacote e a linguagem em si. No fi nal dos anos

1980, a Borland adicionou o conceito de orientação a objetos e colocou os

resultados no Object Pascal.

Em meados dos anos 1990, a Borland introduziu um ambiente totalmente

novo com o nome de Delphi, que permitia aos programadores desenvolver

de maneira conveniente e rápida ao mesmo tempo em que criavam a inter-

face gráfi ca. A biblioteca de interface era a Visual Component Library (VCL),

completamente desenhada para Windows. A Borland tentou entrar no mer-

cado de Linux em 2001 com o Kylix. Tratava-se de uma interface Delphi emu-

lada via Wine, capaz de criar programas gráfi cos para Linux com recursos

nativos do sistema operacional, usando a biblioteca de interface CLX, uma

variante do VLC. Hoje, o Delphi é desenvolvido e comercializado pela Embar-

cadero Technologies. O Kylix foi tirado do mercado devido à falta de sucesso.

Insatisfeito com a abordagem da Borland, o estudante Paul Klämpfl come-

çou a trabalhar em um compilador gratuito nos anos 1990. A compatibilidade

com o Turbo Pascal e Delphi, além da portabilidade fácil, rapidamente fi ze-

ram do Free Pascal um dos compiladores Pascal mais populares. O que lhe

faltava era um ambiente de programação visual no estilo do Delphi. O projeto

Megido tentou remediar essa situação, mas fracassou em 1999. O Lazarus

surgiu dessa fraqueza – daí seu nome bíblico.

Mais informações [1] Lazarus: http://www.

lazarus.freepascal.org/ [2] fpGUI: http://fpgui.

sourceforge.net/ [3] Wiki do Lazarus: http://wiki.

lazarus.freepascal.org/

Gostou do artigo?Queremos ouvir sua opinião.

Fale conosco em

[email protected]

Este artigo no nosso site:

http://lnm.com.br/article/6271

osso

br/art

m

zine.com

e:

/627

rtigo?pinião.

r

Figura 5 O Lazarus inclui diversos programas de amostra, como este geren-

ciador de endereços, que exemplifi ca a programação com banco de

dados. Os ícones na área branca da janela principal são os objetos

conectores ao banco de dados.

Page 12: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

58 www.linuxmagazine.com.br

TUTORIAL | Roteadores WLAN com o OpenWrt

Roteadores WLAN com o OpenWrt

Roteador deRoteador decara novacara nova

O fi rmware de código aberto OpenWrt permite

que você estenda os recursos de diversos

roteadores e pontos de acesso sem fi o .

por Martin Loschwitz

Os entusiastas do Linux gos-tam de executar seu sistema operacional favorito em cada

dispositivo ou aparelho que utilizam, incluindo até mesmo torradeiras e máquinas de café. Nos últimos 15 anos, o Linux começou a fazer parte de uma quantidade muito grande de categorias de aparelhos. O Dbox2 [1] é um caso famoso no exterior, mas desconhecido por aqui. Há, até mes-mo, Linux em iPods. A chegada do Android é outro ponto signifi cativo: agora todo mundo pode levar o Linux para onde bem entender.

Já existe no mercado uma grande quantidade de pontos de acesso sem fi o baseadas em fi rmwares para Li-nux. E como você poderia esperar, alguns desenvolvedores voltaram seus esforços para estender a gama de fi rmwares existentes para esses aparelhos. Esse esforço deu origem ao projeto OpenWrt, que oferece uma alternativa de fi rmware para diversos equipamentos WLAN.

De acordo com o site do projeto [2] , a ferramenta oferece um sistema de arquivos completamente editá-vel com gerenciamento de pacotes.

Desta forma, você evitaria a seleção de aplicativos e confi gurações ofe-recidas pelo fabricante, permitindo ao usuário personalizar o dispositivo por meio do uso de pacotes que se enquadram em qualquer aplicativo. Para o desenvolvedor, o OpenWrt é um framework para a criação de um aplicativo sem se lançar a uma tarefa demasiadamente complexa de desenvolvimento de uma estrutura. Para o usuário, é a possibilidade de personalização, para usar o disposi-tivo de formas jamais imaginadas.

O nome OpenWrt pode ser ex-plicado por uma questão ocorrida há 8 anos: a Linksys, que ainda não era de propriedade da Cisco, ven-dia o roteador WLAN WRT54G com um fi rmware Linux, mas não oferecia seu respectivo código fon-te, uma infração óbvia da licença GPL. Quando alguns desenvolve-dores descobriram isso, lançaram um apelo público para a empresa Figura 1 A interface web do OpenWrt, LuCI, após o primeiro login.

TU

TO

RIA

L

Page 13: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

59

| TUTORIALRoteadores WLAN com o OpenWrt

Linux Magazine #86 | Janeiro de 2012

e seus desejos foram atendidos. A companhia publicou o código fonte para o fi rmware do roteador e ainda criou uma fundação para seu traba-lho de desenvolvimento. O projeto é ofi cial desde 2004 e o fi rmware já passou por diversas transformações em termos de recursos e qualidade.

O título “OpenWrt” é apenas parcialmente apropriado, uma vez que ele pode ser instalado em mui-tos outros dispositivos, de diversas marcas. Muitos roteadores e pontos de acesso sem fi o usam os mesmos componentes embaixo da carcaça. Os dispositivos da Cisco e da Asus, por exemplo, têm visuais comple-mente diferentes, mas têm a mesma tecnologia por dentro.

Para descobrir se o OpenWrt é compatível com seu dispositivo, uma boa ideia é visitar o site do projeto [2] . Quando chegar lá, você encontrará uma lista gigantesca de dispositivos, junto com outras informações de suporte. Se você procura comprar um roteador ou ponto de acesso su-portado pelo OpenWrt, outra opção é acessar à loja pela Internet com o

seu smartphone, por exemplo, para comparar preços e recursos.

Algumas precauções são aconse-lháveis: O Linksys WRT54G (e mo-delos WRT54GS relacionados) teve mais de vinte e quatro revisões de hardware e algumas delas não fun-cionam com o OpenWrt. A dica é: leia a etiqueta na caixa para conferir se o modelo e revisão são adequados para o fi rmware.

Neste artigo, vou mostrar como confi gurar um Asus WL500G com o OpenWrt. O dispositivo tem portas LAN e duas portas USB que fi carão ainda mais úteis com o fi rmware.

Instalação do OpenWrt Caso você decida dar uma chance ao OpenWrt, primeiro é necessário escolher sua versão. A versão atual é a 10.03, também conhecida como Backfi re, mas os desenvolvedores re-comendam fortemente que se utilize a próxima versão RC 10.03.1.

A área de download no site do OpenWrt oferece aos usuários duas variações: uma com o nome brmc-2.4 e a outra brmc47xx . A maior diferença é que a brmc-2.4 utiliza a versão 2.4 do kernel Linux enquanto a segun-

Figura 2 Confi guração das propriedades da interface LAN do OpenWrt.

Figura 3 Instalar o plugin OpenVPN para o LuCI permite a confi guração de um serviço VPN direto na interface.

Page 14: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

60 www.linuxmagazine.com.br

TUTORIAL | Roteadores WLAN com o OpenWrt

da utiliza a versão 2.6. Uma visita rápida à página wiki do dispositivo [3] revela que os desenvolvedores recomendam a versão com o kernel 2.4 para os WL500GP com versão de hardware v2. Para os aparelhos com revisão v1, é recomendada a versão com o kernel mais recente.

A maneira mais fácil de descobrir o fi rmware mais adequado para seu

dispositivo é visitar o wiki do OpenWrt e conferir a página de dispositivo. Os desenvolvedores geralmente dão recomendações corretas sobre a me-lhor versão, embora as páginas de dispositivos tenham somente o link para a versão estável.

Se você quiser utilizar a versão RC, será necessário de um pequeno truque para encontrar o arquivo cor-

reto. Primeiro, você precisa de um link para a versão estável presente na wiki do seu próprio dispositivo. O link para o WL500GP é o:

http://downloads.openwrt.org/ backfire/10.03/brcm47xx/ openwrt-brcm47xx-squashfs.trx

depois, visite o site de download do Backfi re [4] para visualizar todas as versões existentes para o OpenWrt. Finalmente, você precisa encontrar a versão atual do 10.03.1 – que era 10.03.1-rc5 em outubro de 2010. No link da versão estável, simplesmente substitua o número da versão, que é 10.03 , para o novo número, que seria 10.03.1-rc5 . O link completo para o equipamento Asus WL500GP fi caria assim: http://downloads.openwrt.org/ backfire/10.03.1-rc5/brcm47xx/ openwrt-brcm47xx-squashfs.trx

Após identifi car a versão correta do fi rmware e fazer o download do arquivo correspondente – o fi rmware utiliza um sufi xo .trx – você pode continuar com a instalação. Nova-mente, algumas diferenças existem entre roteadores de diferentes for-necedores. Você pode se considerar sortudo se instalar o OpenWrt da forma mais fácil – usando a função de atualização na interface web for-necida pelo fabricante. Esta aborda-gem costuma funcionar melhor com aparelhos mais antigos.

Por outro lado, os modelos mais novos ou roteadores com o fi rmware mais recente do fornecedor, não são fáceis. Os desenvolvedores de hard-ware tendem a equipar seus apare-lhos com um fi rmware que evita a troca por uma versão “incorreta”. Já aconteceu de usuários coloca-rem imagens em dispositivos que eram de outros aparelhos, fazendo o dispositivo fi car “bricado” (termo que vem do inglês bricked e é usado pela comunidade de desenvolvedores para defi nir um aparelho eletrônico caro que se tornou inutilizável). Para

Figura 4 O opkg , derivado gerenciador de pacotes do Debian dpkg , permite a

instalação de pacotes através da linha de comando.

Figura 5 A lista de dispositivos de armazenamento prova que a função extroot

está funcionando no roteador; o sistema usa um drive USB como disco.

Page 15: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

61

| TUTORIALRoteadores WLAN com o OpenWrt

Linux Magazine #86 | Janeiro de 2012

evitar o desgosto da “bricagem”, os fabricantes modifi caram suas atua-lizações, o que acaba, infelizmente, bloqueando o OpenWrt.

Método TFTP O Asus WL500GP é um exemplo de dispositivo à prova de bricagem. A interface web original de geren-ciamento se recusa a permitir que você instale o fi rmware OpenWrt. Se você está enfrentando esse pro-blema, não desista: o TFTP pro-porciona um método seguro para a instalação do OpenWrt.

A abordagem básica funciona assim: os pontos de acesso e rotea-dores têm um modo especial para a instalação de sistemas operacio-nais conhecido como modo diag. Um dispositivo em modo diag res-ponderá a comandos TFTP (TFTP – ou Trivial FTP – é um parente simplifi cado do protocolo FTP co-mumente usado para fazer o boot de estações de trabalho sem disco e outros dispositivos simples).

Para prosseguir, primeiro você precisa instalar o tftp , o cliente de linha de comando para o TFTP, que você encontrará no pacote tftp . Faz sentido iniciar o programa na pasta onde você armazenou a imagem OpenWrt para o dispositivo.

O próximo passo é colocar o ro-teador ou ponto de acesso para o modo diag, o que envolve etapas diferentes, dependendo do dispo-sitivo. Nesse ponto, vá à página do seu dispositivo no wiki do OpenWrt para obter respostas [5] . Para mudar o WL500GP para o modo diag, você precisa desligar o aparelho da toma-da e ligá-lo novamente segurando o botão reiniciar (na parte de trás do dispositivo). Quando o LED que indica que o aparelho está ligado começar a piscar lentamente, você está no modo diag.

Para abrir uma conexão TFTP para o dispositivo, escreva tftp endereço de IP – caso você não tenha

mudado o IP do seu roteador, ele será 192.168.1.1 . Os comandos binary , trace e put arquivo_de_firwmare lidam com o resto do processo. Substitua arquivo_de_firmware com o nome do seu próprio arquivo de fi rmware.

Primeiro boot Não importa qual fi rmware seu ponto de acesso WLAN utilizava antes que você tenha instalado o novo fi rmware. Ela agora responderá pelo IP 192.168.1.1 . Para confi gurar o dispositivo, você provavelmente vai precisar atribuir um endereço IP na rede para seu computador. Após fazer isso, nada poderá impedi-lo de fazer login no dispositivo.

A maior desvantagem surge nesse ponto: o OpenWrt não possui uma interface web, mas imediatamente após a instalação, você pode utilizar o Telnet para logar. A senha para o root não está confi gurada e você precisa de uma senha para logar

por uma interface web. Após logar pela primeira vez usando o Telnet, tendo a certeza de que uma senha para o usuário root foi confi gurada, e lembrando que somente acesso SSH é permitido para conexões remotas. Mas agora você também terá a interface web LuCI em suas mãos ( fi gura 1 ).

O Telnet está incluído nas dis-tribuições Linux, mas talvez você precise instalá-lo. O comando telnet 192.168.1.1 abre a conexão e inicia um terminal Shell. Então, você pre-cisa executar o comando passwd para confi gurar uma nova senha para o usuário root . O OpenWrt desabili-ta o Telnet e inicia o daemon SSH no lugar para sessões criptografadas.

De agora em diante, você poderá acessar a interface web no endereço http:192.168.1.1 . Seu nome de usuário é root e a senha é a confi gurada via Telnet. Após logar, você é levado a uma página de boas vindas.

Figura 6 A DD-WRT, alternativa para o OpenWrt, se promove com uma

interface web mais fácil

Page 16: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

62 www.linuxmagazine.com.br

TUTORIAL | Roteadores WLAN com o OpenWrt

Interface web Os desenvolvedores trabalharam muito para criar uma interface web do OpenWrt na versão RC ( release candidate ) 10.03.1. Dois menus dão acesso a um conjunto de recursos muito importantes. O menu superior descreve as várias categorias de con-fi guração. Logo abaixo, o segundo menu dá acesso aos detalhes.

Ao clicar em Network/Interfaces , o usuário abre a confi guração de rede ( fi gura 2 ). Se sua rede não usa o espaço de endereço 192.160.1.0/24 , você precisará alterar o endereço IP do dispositivo. Para isso, clique no ícone com um papel e uma caneta e escreva os valores para IPv4 Address , IPv4 Netmask e IPv4 Gateway .

Se você deseja que o roteador abra uma conexão para a rede, você ainda precisa confi gurar a conexão PPoE nessa página. Para tanto, modifi que a entrada wan ; é uma boa ideia ter as credenciais do seu provedor de acesso à mão

nesse ponto. Ao clicar em Save & Apply , tudo fi ca armazenado e as mudanças tomam efeito.

Se você deseja que o dispositivo OpenWrt aja como um servidor DHCP na sua rede local, você ago-ra tem que confi gurar o dhcpd . Para isso, desmarque Disable DHCP for this Interface nas confi gurações de rede para a interface lan .

O menu Network/Wifi também permite que você confi gure as pro-priedades WLAN para o aparelho. Essas propriedades incluem o nome WLAN (ESSID) e o método de crip-tografi a. Se você quer usar um canal específi co para a conexão sem fi o, o menu WiFi é o lugar certo para confi gurar isso.

O menu System permite que você mude o nome do host. Sempre lembre de pressionar Save no canto direito ao fazer mudanças. Após confi gurar o roteador para corresponder ao seu ambiente local, faça um novo boot para aplicar as confi gurações.

Conexões VPN Um recurso realmente prático do OpenWrt é a possibilidade de supor-tar VPNs diretamente no roteador. Se você precisa de uma VPN, nor-malmente poderá confi gurá-la em sua área de trabalho e abrir uma conexão entre o servidor de VPN e seu próprio cliente. A desvantagem é que a conexão VPN tem que via-jar por uma rede que utiliza NAT.

O NAT pode ser um problema em conexões cliente/cliente, o que é driblado ao se confi gurar o VPN diretamente no roteador. Um efei-to positivo disso é que você pode acessar o servidor VPN com cada máquina de sua rede e não somente um único PC.

O OpenWrt suporta tanto o Open-VPN quanto o IPsec no lado do cliente. No entanto, o OpenVPN é a única opção que pode ser con-venientemente confi gurada na in-terface web ( fi gura 3 ). Isso porque a interface não entende IPsec, o que signifi ca que você precisaria confi -gurar na linha de comando. Se você nunca fez uma confi guração manual de IPsec, o desafi o é grande, mas se você estiver disposto a encarar, vá em frente.

OpenVPN e OpenSwan Os desenvolvedores do OpenWrt ofe-recem pacotes pré-elaborados para ajudar na confi guração do Open-VPN. Para instalar os componentes necessários, você primeiro precisa fazer login no roteador via SSH. Seu nome de usuário será root de novo.

Já com aceso ao Shell, escreva opkg update ( fi gura 4 ), seguido por opkg install openvpn , o que diz ao OpenWrt para instalar os pacotes necessários. Então, proceda com a instalação do plugin do LuCI para OpenVPN. O comando

opkg install luci-app-openvpn

Quadro 1: DD-WRT – alternativa ao OpenWrt

Embora esse artigo esteja focado em OpenWrt, outras alternativas es-

tão disponíveis para substituir o firmware original do fabricante em rote-

adores caseiros. Uma que vem a mente imediatamente é a DD-WRT, um

projeto que foca na combinação de diversos recursos em uma interface

simples e intuitiva ( figura 6 ). O firmware DD-WRT está disponível no site

do projeto relacionado [7] .

O DD-WRT se difere do OpenWrt no que diz respeito ao público-alvo.

Enquanto o OpenWrt se tornou amigável para usuários não muito técni-

cos apenas recentemente, o DD-WRT foi criado para não especialistas.

No tocante ao hardware suportado, o DD-WRT não está muito atrás do

projeto análogo. Você poderia tê-lo instalado facilmente no WL500GP da

Asus, por exemplo.

Apesar disso, maiores mudanças no DD-WRT ainda exigem visitas à linha

de comando, como no caso de promover o roteador a servidores de im-

pressão, por exemplo. No fi nal das contas, sua escolha do fi rmware é só

uma questão de preferência pessoal. No entanto, cada um tem seu pró-

prio roadmap de desenvolvimento, então alternar nos experimentos entre

os dois pode ser divertido no mundo do código aberto, no qual muitos

caminhos levam à Roma.

Listagem 1: Montagem do dispositivo USB 01 # mkdir /mnt/sda1 02 # mount /dev/sda1 /mnt/sda103 # tar -C /overlay -cvf - . | tar -C /mnt/sda1 -xf -

Page 17: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

63

| TUTORIALRoteadores WLAN com o OpenWrt

Linux Magazine #86 | Janeiro de 2012

faz isso. Nesse ponto, você deve reiniciar o OpenWrt e, após fazer login na interface web, conferir o novo menu de confi gurações Services/OpenVPN .

Você pode confi gurar um Open-VPN como servidor ou cliente. Dois exemplos, sample_client e sample_ser-ver , estão prontos. Clique no ícone com a caneta para ir às confi gura-ções do item. Você pode clicar em Switch to advanced confi guration para alterar qualquer aspecto da conexão OpenVPN. Feita a confi guração, pressione Save .

O procedimento para a instalação do OpenSwan, uma implementação de IPSec disponível no OpenWrt é simi-lar. Após fazer login como root, digite:

opkg install openswan

para instalar o pacote com suas de-pendências. O arquivo de confi gu-ração é /etc/ipsec.conf e os arquivos adicionais de confi guração se encon-tram em /etc/ipsec.d . A confi gura-ção é muito parecida com qualquer confi guração de OpenSwan em um PC com Linux.

Solução para falta de espaço O OpenWrt tem muito mais recursos do que eu poderia descrever nesse artigo, sendo que é muito difícil usar todos eles em um sistema OpenWrt típico. O roteador médio tem 8MB de memória fl ash, o que faz com que não haja espaço sufi ciente para programas como Asterisk, CUPS ou Samba.

Se você possui um roteador com uma porta USB, considere-se sortu-do: ela permite que você se conecte a uma memória fl ash, dando uma solução inteligente para a falta de espaço. O princípio básico é que todo o sistema seja jogado no arma-zenamento externo; o bootloader que inicia o OpenWrt originalmente utiliza o drive USB como seu prin-cipal dispositivo.

Para usar a solução, você primeiro precisa formatar o drive USB nos sistemas de arquivos ext3 ou ext4. Você pode usar qualquer sistema Linux para fazer essa formatação. Para confi gurar um drive com uma partição ext3 única e um nome de dispositivo /dev/sdb , use mfks.ext3 /dev/sdb1 nesse caso. Eu presu-mo que você já tenha um dri-ve com um sistema ext3 para ospróximos passos.

Agora, será necessário preparar a instalação de OpenWrt. Para tanto, insira o seguinte comando opkg para instalar os programas e ferramentas requisitados:

opkg update & & opkg install block-mount block-hotplug block-extroot kmod-usb-storage kmod-fs-ext3 tar nano

Em seguida, você precisa montar o disco USB no sistema de arquivos OpenWrt para copiar todo o sistema para o armazenamento externo. Nes-se caso, a partição principal no drive USB é /dev/sda1 – os três comandos mostrados na listagem 1 usam esse ponto de montagem para montar o drive USB e copiar os dados.

Para terminar, você precisará confi gurar o extroot no arquivo /etc/config/fstab . O comando nano /etc/config/fstab abre o arquivo no editor Nano. A seção com nome config mount é que nos interessa: mude a entrada na linha option target de /home para /mnt . Então, na linha option device , digite o nome do dispositivo que você utilizou para a etapa prévia; no nosso exemplo, /dev/sda1 . Para a linha option ena-bled , mude o valor 0 para 1 . No fi nal, adicione a linha:

option is_rootfs 1

Então pressione [Ctrl] + [X] para sair do editor e [Y] para dizer ao Nano para salvar as mudanças.

Após emitir um comando reboot , o retorno para o comando df -h (na

linha de comando) deve estar pa-recido com o da fi gura 5 . A linha com /dev/sda1 é a mais importante: se ela existe, você pode ter a cer-teza de que o mecanismo extroot está funcionando.

Conclusão O fi rmware alternativo OpenWrt estende substancialmente o esco-po funcional de muitos roteadores WLAN. Os recursos adicionais in-cluem ferramentas para comunicação segura e outros recursos de ponta. Tudo sem investimento fi nanceiro, com o único custo de tempo e cui-dado para se selecionar o fi rmware correto e usar cuidadosamente a linha de comando. Os resultados valem o esforço. ■

Mais informações

[1] DBox2: http://en.wikipedia.org/wiki/DBox2

[2] OpenWrt: http://www.openwrt.org/

[3] Wiki do OpenWrt; página

do Asus WL500GP:

http://wiki.openwrt.org/toh/asus/wl500gp?s

[4] Download do OpenWrt

“Backfi re”: http://downloads.openwrt.org/backfire/

[5] Página wiki do dispositivo

OpenWrt: http://wiki.openwrt.org/toh/start

[6] OpenSwan: http://www.openswan.org/

[7] DD-WRT: http://www.dd -wrt.org/

Gostou do artigo?Queremos ouvir sua opinião.

Fale conosco em

[email protected]

Este artigo no nosso site:

http://lnm.com.br/article/6248

so sit

artic

.com.b

248

go?pinião.

Page 18: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

68 www.linuxmagazine.com.br

ANÁLISE | Gerenciamento de energia

TLP: Gerenciamento de energia

Baixo consumoBaixo consumo Ao invés de gastar energia, o TLP permite que você desligue componentes

específi cos do seu computador – dos quais você não necessita –, estendendo

a duração de bateria e consequentemente sua vida útil.

por Erik Bärwaldt

Computadores portáteis estão cada vez mais poderosos, mas isso implica também

em um aumento no consumo de energia. Ciclos frequentes de carga podem sobrecarregar a bateria, mas graças à ferramenta TLP, quem usa notebooks com Linux na bateria por longas horas, agora consegue usar o computador com menos pausas para carregamento. O ponto fraco de qualquer computador móvel é o suprimento de energia. Quanto mais poderosa forem as telas, CPUs e chips gráfi cos, maior é o consumo de energia, gastando mais a bateria. Discos rígidos legados também afe-tam a duração da bateria. O projeto TLP, que se originou em um fórum alemão sobre o laptop ThinkPad [1] , declarou guerra ao desperdício de energia.

O TLP está disponível atualmente sob a forma de pacotes para Ubuntu, Debian [2] e openSUSE [3] . O pa-cote para Debian e Ubuntu (PPA)contém um arquivo com o código fonte, do qual você precisará caso use uma distribuição sem suporte a pacotes binários. Após descompac-tar o arquivo, você pode compilar o software com a linha de comando make install .

Graças ao forte compromisso dos membros do Forum ThinkPad,

devem aparecer pacotes para mais distribuições no futuro. Você encon-trará um guia para a instalação dos binários na web [4] e em um FAQ [5] que responde a várias questões relacionadas ao programa.

Economias potenciais O TLP tem uma abordagem holís-tica, em vez de se restringir às ope-rações já abrangidas pelos sistemas de economia de energia já residentes nos sistemas. Por exemplo, o soft-ware permite que você gerencie o consumo de energia do hardware WLAN, de armazenamento, entre outros sistemas que são específi cos de determinados fabricantes.

O TLP oferece modos de econo-mia de energia de USB para todos os notebooks IBM e Lenovo, além de opções de economia para placas de som. Dependendo do hardware, pode-se até gerenciar dispositivos Bluetooth, PCI Express e SATA.

Um benefício adicional: algumas CPUs são executadas em voltagem abaixo do normal sem qualquer mu-dança de desempenho que possa ser notada, presumindo que você tenha suporte de kernel para esse recurso. O TLP dá total controle sobre essa opção, o que pode causar um efeito bastante interessante ao combinar várias oportunidades de economia.

Requisitos Para se aproveitar totalmente do es-copo de recursos do TLP, você preci-sa atender a algumas condições. Por exemplo, independentemente da versão de Debian ou Ubuntu utilizada, você precisará dos pacotes smartmontools , tp-smapi-dkms e eth-tool no sistema para poder buscar dados no HD e status de operação da bateria.

Adicionando-se à confusão, esses pacotes têm diferentes nomes depen-dendo da sua distribuição. Por exemplo, o que o Debian e o Ubuntu chamam de tp-smapi-dkms é conhecido como tp_smapi-kmp-default no openSUSE. Diferentemente do arquivo smartmon-tools , que usa o mesmo nome em todos os três sistemas, assim como o pacote ethtool , que é necessário para desabilitar o serviço Wake-on-LAN.

Independentemente do TLP, ge-ralmente é uma boa ideia instalar o pacote powertop . Esse é outro aplica-tivo na linha de comando que lista todas as informações críticas sobre o consumo atual de energia e dá alguns detalhes sobre a economia de energia alcançada pelo TLP. O PowerTOP está disponível nos repositórios da maioria das grandes distribuições; você pode instalá-lo convenientemente ao pressionar um unico botão.

O PowerTOP, que foi desenvolvi-do pela Intel, suporta algumas mo-

AN

ÁLIS

E

Page 19: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

69

| ANÁLISEGerenciamento de energia

Linux Magazine #86 | Janeiro de 2012

difi cações em seus componentes, presumindo que você tem hardware Intel. No entanto, você encontrará algumas opções que entram em con-fl ito com o TLP. Nesse caso, ignore as sugestões feitas pelo PowerTOP e modifi car o TLP em vez disso.

Primeiro contato O TLP normalmente se inicia automa-ticamente com todas as confi gurações padrão no momento do boot. Uma vez que é independente do ambiente do desktop e não tem uma interface gráfi ca, você precisa gerenciar o TLP em uma janela do terminal. Para uma visualização geral inicial dos recursos do programa, torne-se root e inicie o tlp-stat ; você terá como resultado uma longa lista dos componentes de hardware do seu sistema e seus respectivos detalhes ( fi gura 1 ).

O TLP não dá a você essa lista de hardware com seus status, mas mergu-lha mais profundamente no sistema. Por exemplo, se você olhar na seção /proc/acpi/ibm/thermal = temperatu-res: , voltada para a exibição da tem-peratura, o programa dará uma longa lista de detalhes relativos aos sensores de temperatura, mecanismo que está presente em todos os laptops recentes. Se aparecer o valor -128 , signifi ca que não existe sensor. Na seção de arma-zenamento que segue à lista, você encontrará detalhes do HD instalado no computador e os valores SMART essenciais, que se relacionam com opções de economia de energia con-fi gurados para o disco rígido.

Outro aspecto importante é o status de operação dos componentes de co-municação feitos no laptop: se você não está usando WWAN (GSM/UMTS) ou WLAN, o hardware não precisa estar em modo standby. A entrada de siste-ma /sys/module/pcie_aspm/parameters/policy permite que você explore se os componentes que estão habilitados em seu sistema e usando a energia.

No fi nal da lista, você verá detalhes para as baterias no computador, o estado

das portas USB e componentes especiais, como webcams ou sensores biométricos. Os dados da bateria frequentemente dão algumas dicas iniciais para resolver problemas de suprimento de energia. Como os resultados são reportados em unidades mWh, você perceberá logo de início se vale a pena calibrar a bateria ou fazer uma substituição.

Confi guração O TLP armazena seus parâmetros de confi guração no arquivo /etc/default/tlp , criado pelo programa quando instalado. As confi gurações padrão são úteis como um ponto de início básico para a maioria dos sistemas ThinkPad. Dito isso, o software não entrega todo o potencial de economia.

Com isso, é uma boa ideia investigar esse arquivo e modifi cá-lo para refl etir seu hardware. Para encontrar grupos individuais de opções, abra o arquivo de confi guração como root em seu editor favorito. Se você quer habilitar quaisquer opções comentadas com um sinal de cerquilha ( # ), apenas remova-as.

O TLP separa as confi gurações para operar na bateria e na grade. Os parâmetros relacionados à bateria são identifi cáveis com o sufi xo _ON_BAT , enquanto a opção da grade usa _ON_AC

( fi gura 2 ). Muitas opções são bem signi-fi cativas, como os intervalos de escrita no buffer do sistema kernel ou opções para desabilitar núcleos individuais ou CPUs de núcleos múltiplos. No en-tanto, há outras opções importantes, como as seções de operação de disco rígido e de componentes de comuni-cação, além do Ultrabay: esses vetores geralmente oferecem um espaço bom para otimização. Se você executar um segundo disco rígido ou um drive óptico no Ultrabay, o TLP permite que você desligue esses drives, independente-mente do armazenamento principal, para o caso de você não utilizá-los por um extenso período. As confi gurações de WLAN, Bluetooth e USB também podem ser editadas aqui.

Problemas de disco rígido Além de displays, CPUs e processado-res gráfi cos, HDs antigos costumam ser alguns dos maiores consumidores de energia, razão pela qual os fabri-cantes estão sempre tentando conter a sede que esses equipamentos têm por energia. Para que isso aconteça, o disco estaciona a cabeça de leitura e desliga o motor quando está inativo. No

Figura 1 Toneladas de informações de status estão em tlp-stat .

Page 20: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

70 www.linuxmagazine.com.br

ANÁLISE | Gerenciamento de energia

entanto, é necessário encontrar a me-lhor relação desempenho/consumo de energia: quando o motor se desliga por inatividade, muita energia é necessária para voltar à ativa, o que pode provocar ainda problemas de desempenho, des-gaste adicional em outras partes ou até perda de dados no pior cenário.

Para mudar isso, o TLP permite mo-difi cações no nível de APM (gerencia-mento avançado de energia) do disco. Para isso, veja a seção DISK_DEVICES no arquivo de confi guração e confi ra se o software identifi ca o disco corretamente. Se sim, vá para a seção DISK_APM_LEVEL : você verá uma integral de três dígitos entre aspas para cada disco.

O valor normalmente será de 254 durante operações enquanto o com-putador estiver plugado na energia e 128 quando estiver funcionando na

bateria. Você pode mudar esse valor. O valor válido para a integral varia de 1 a 254, sendo que valores abaixo de 128 podem causar uma interrupção frequente no motor e na cabeça de leitura. Valores acima de 128 reduzem o número de ciclos de interrupção.

Dependendo do modelo de seu computador, o valor 254 desabilita o mecanismo de interrupção da cabeça de leitura completamente, de forma que o mecanismo nunca se desliga. Se você tem um disco que precisa de uma quantidade substancial de energia para ser executado depois de uma interrupção, a economia é mínima, comparada com operações permanentes. O valor de 254, nesse caso, seria a sua melhor escolha.

Os chips gráfi cos precisam de uma grande quantidade de energia e geram

uma grande quantidade de calor. Para reduzir o consumo e a temperatura, a maioria dos processadores mais moder-nos suportam a operação com clock em menor velocidade. O TLP usa a opção dos processadores gráfi cos ATI Radeon para a criação de cinco perfi s de mudança de clock. No entanto, isso funciona somente com o driver livre para Radeon e com uma versão de kernel 2.6.35 ou mais recente. Procure a seção RADEON_POWER-PROFILE no arqui-vo de confi guração do TLP e escolha uma das opções – low , mid , high, auto ou default – para essa confi guração.

A opção default usa o valor espe-cifi cado pelo hardware, enquanto a opção auto ajusta a velocidade do clo-ck em um ponto mais baixo quando você liga o computador na bateria. Ao conectar na energia, o processa-dor gráfi co volta para sua capacidade máxima. Vale a pena experimentar com cada opção, de acordo com o uso realizado do computador, para chegar na melhor confi guração.

WLAN: devorador de energia Se você não precisa de acesso à rede WLAN, você defi nitivamente precisa desabilitar o componente completamente. O TLP funciona com a maioria dos chips Intel, mas nenhum Atheros. Se seu computa-dor não tem cartão WLAN, você pode modifi car o estado operacio-nal na seção WIFI_PWR no arquivo de confi guração. O valor 1 habilita o gerenciador de energia do cartão, enquanto o 5 desabilita. A função requer kernel 2.6.32 ou mais novo.

Se você notar que a conexão WLAN se torna instável em um modo de economia de energia, será necessário desabilitar o gerenciador de energia. O consumo mais baixo reduz a trans-missão do adaptador e desempenho da recepção. Assim, a conexão com o roteador poderia ser interrompida em condições pouco favoráveis.

Figura 2 Você pode modifi car os parâmetros para TLP editando o arquivo

de confi guração.

Figura 3 Lista de IDs de dispositivo USB com lsusb .

Page 21: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

71

| ANÁLISEGerenciamento de energia

Linux Magazine #86 | Janeiro de 2012

O sistema do ThinkPad conhecido como Ultrabay permite uma troca conveniente de componentes sem ferramentas. Graças ao TLP, você pode fazer com que o HD instala-do no Ultrabay fi que em repouso se você não o utilizá-lo por um tempo. A confi guração para isso ocorre na seção DISK_APM_LEVEL .

Se você executa um drive ótico no Ultrabay, pode desabilitar completa-mente o drive quando estiver usando bateria. Para tanto, vá à seção BAY_PO-WEROFF no arquivo de confi guração TLP, mude o valor padrão de 0 para 1 e adicione o nome de dispositivo para o drive (o valor padrão, sr0 , normalmente está correto). Se você usa o modelo de ThinkPad com dois dispositivos Ultrabay, poderá gerenciá-los de forma indepen-dente através do nome de dispositivo.

Comunicação e manutenção Como todos os laptops atuais, os dis-positivos IBM/Lenovo tem diversas interfaces para comunicação com ou-tros componentes. Uma vez que você não precisa de todas elas, é possível encontrar diversas oportunidades de economia de energia nessa área. Para desabilitar dispositivos que usam USB, procure por USB_AUTOSUSPEND no arquivo /etc/default/tlp . O valor deve ser 1 .

Como a função de auto suspensão causa interrupções indesejáveis nos dispositivos USB, como em modems de Internet 3G, você pode defi nir exceções para certos dispositivos por meio de números de ID, adicionan-do o ID do dispositivo na lista USB_BLACKLIST . Você pode descobrir o ID como root ao digitar lsusb em uma janela de terminal ( fi gura 3 ).

Na próxima seção, DEVICES_TO_DI-SABLE , você pode defi nir quais outras interfaces de sistema são desabilitadas no boot e durante o desligamento do computador, evitando que tais inter-faces impeçam o desligamento do computador, colocando-o em modo

de espera. Os padrões são as inter-faces WLAN, Bluetooth e WWAN.

Embora o TLP possa ser executa-do em todos os laptops, você só pode confi gurar os limites da carga de bate-ria em ThinkPads. As confi gurações START_CHARGE_THRESH e STOP_CHARGE_THRESH permitem acertar as confi gurações da melhor forma para as baterias de íons de lítio instaladas nos modelos de ThinkPad mais populares. Isso signifi ca que o sistema não carregará totalmente a bateria, mas interromperá o carrega-mento quando a carga chegar a 80%, reduzindo o desgaste das células.

Se você notar que a capacidade da bateria está diminuindo, o TLP pode ajudar a recalibrar a bateria ao fazer uma descarga completa e recarregar de novo até 100%. Para tanto, entre no sistema como root e digite tlp discharge em uma janela de terminal. Após des-carregar totalmente, você pode recarre-gar a bateria ao digitar tlp fullcharge .

Para manter a carga dos eletrônicos balanceada com o estado atual das cé-lulas da bateria, é uma boa ideia repetir essa operação a cada dois ou três meses.

Opções de linha de comando Se você iniciar o TLP manualmente, o software dá uma série de parâmetros de linhas de comando adicionais às opões confi guradas para modifi cações de curto prazo. Para ver as opções possíveis, entre como usuário root e digite somente tlp .

Os comandos bluetooth , wifi e wwan , cada um seguido pelos parâmetros on e off , habilitam ou desabilitam serviços. Os comandos tlp discharge e tlp full-charge também estão nessa categoria e foram explicados no tópico anterior.

Para eliminar o risco de confusão com discos múltiplos em seu laptop, use o ID do disco em vez do nome do dispositivo no arquivo de confi -guração do TLP. Para descobrir o ID do disco rígido, o TLP conta com o comando tlp diskid .

Conclusão Sob condições de produção, o TLP impressiona. Em nossos laborató-rios, a duração da bateria de um ThinkPad X200t caiu em 20%, embora eu não tenha usado alguns recursos, como o de mudar a velo-cidade da placa gráfi ca, pela falta de um adaptador Radeon.

A placa Intel WLAN acabou se tornando o principal consumidor de energia, consumindo cerca de 2.5 watts. Graças ao TLP, eu conse-gui reduzir o consumo de energia do sistema para menos de 2 watts, estendendo o tempo de bateria em 20 minutos.

O TLP é bem projetado e uma ferramenta altamente funcional da qual nenhum dono de ThinkPad, ou outro laptop, deveria prescindir. Graças a sua excelente documenta-ção e FAQ, novos usuários sem co-nhecimento profundo de hardware não terão problemas em usá-lo. ■

Gostou do artigo?Queremos ouvir sua opinião.

Fale conosco em

[email protected]

Este artigo no nosso site:

http://lnm.com.br/article/6277

osso

br/art

m

zine.com

e:

/627

rtigo?pinião.

r

Mais informações [1] Projeto no fórum do

Thinkpad (em Alemão):

http://bit.ly/t7otyj

[2] Arquivos para Ubuntu e

Debian: https://launchpad.net/~linrunner/+archive/tlp/+packages

[3] Repositório para openSUSE:

http://download.opensuse.org/repositories/home:/cdersch:/TLP/openSUSE_11.3/

[4] Guia: https://github.com/linrunner/TLP/wiki/TLP-Linux-Advanced-Power-Management

[5] FAQ: https://github.com/linrunner/TLP/wiki/TLP-FAQ

Page 22: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

72 www.linuxmagazine.com.br

ANÁLISE | Filtro de email com o Sieve

Filtro de email com Sieve

Organizador de correspondência O Sieve é uma solução de

servidor, fácil de usar, que

ajuda os administradores

a fi ltrar o fl uxo de email

de forma inteligente.

por Florian Effenberger

O imenso volume de tráfe-go de email, nos dias de hoje, causa problemas

tanto aos administradores como aos usuários.

Dentro da sua caixa de entrada vão parar, não somente as mensa-gens pessoais, mas também a corres-pondência do trabalho e, inclusive, notificações das autoridades. Listas de discussão e periódicos também dão sua contribuição para encher sua caixa postal.

Para evitar se afogar nesta en-xurrada de correspondência, você necessita de um sistema inteligente de filtragem que automaticamente

organize seus emails, distribuindo--os nas pastas corretas.

Normalmente, os usuários irão configurar estes itens diretamen-te no cliente de email, uma vez que tanto os aplicativos desktop, como os servidores web de email oferecem uma razoavelmente ex-tensa e variada gama de opções de filtragem. E esta abordagem é a mais simples – desde que você receba suas mensagens em um único sistema.

Mas se você usa múltiplos apa-relhos, as coisas podem começar a ficar difíceis. Ainda que o proto-colo IMAP mantenha os seus re-

positórios de email idênticos, ele não suporta regras de filtragem.

Teoricamente, você poderia co-piar as configurações de um clien-te para outro, mas isto consome algum tempo. Além disso, quan-do você começar a usar também smartphones e tablets, as coisas vão realmente ficar complicadas.

Mais comodidade com o Sieve Se você gerencia um servidor IMAP e deseja fazer um favor aos seus usuários, pense na possibilidade de lhes oferecer um fi ltro Sieve. Esta

AN

ÁLIS

E

Page 23: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

73

| ANÁLISEFiltro de email com o Sieve

Linux Magazine #86 | Janeiro de 2012

ferramenta lhes permite defi nir re-gras de fi ltragem para as mensagens que chegam, tal como no Procmail, para citar um exemplo. A maior vantagem aqui, é que a fi ltragem ocorre diretamente no servidor e, portanto, acontece automaticamente para todos os clientes, independen-temente do sistema operacional. As regras são aplicadas do mesmo jeito no desktop, com o Thunderbird, no celular com Android e no seu tablet. O Sieve é a quintessência do “estilo IMAP” de fi ltrar email.

Do ponto de vista do adminis-trador, é uma coisa boa que o Sie-ve se integra diretamente, como plugin, ao Mail Delivery Agent (MDA) e, por conseguinte, ofe-rece excelente desempenho. Um exemplo contrastante com esta situação é do Procmail que é ti-picamente executado como script separado e, portanto, aumenta a carga sobre o sistema. Sua sinta-xe é um pouco mais simples do que a antiga, e um tanto quanto complicada, sintaxe do Procmail.

O Sieve está disponível em vários servidores IMAP e, além de ter a capacidade de mover mensagens para subpastas, pode também:

➧ Encaminhar mensagens para terceiros

➧ Remover mensagens identi-ficadas como spam ou infectadas por vírus

➧ Fazer devoluções (é preciso ser cuidadoso com isto)

➧ Rotular e criar etiquetas IMAP➧ Enviar mensagens automá-

ticas de férias ou de ausência do escritório

Tanto as ações quanto os me-canismos de decisão , podem ser combinados arbitrariamente. Por exemplo, você pode rotular, en-caminhar e, automaticamente, responder uma determinada men-sagem, dependendo do seu reme-tente e do assunto, com apenas algumas linhas de código. Todos

os elementos levam a uma sintaxe de fácil aprendizagem.

Por questões de segurança, o Sieve não suporta execução de scripts externos, diferentemente do Procmail, mas aceita plugins que acrescentam recursos adicionais.

O correto posicionamento no Postfix Nosso laboratório de teste compre-ende a atual versão LTS do Ubun-tu, a 10.04 (Lucid Lynx), que vem com o Postfi x 2.7 e o Dovecot 1.2. No exemplo que se segue, ambos os componentes devem estar instalados e funcionais, e as contas individuais de usuários devem vir do arquivo /etc/passwd – o que quer dizer que você não deve utilizar LDAP ou MySQL. Para instalar o Postfi x e o Dovecot, você pode, simplesmente, dar os seguintes comandos:

apt-get install postfixapt-get install dovecot-imapd

A questão sobre onde o Sieve está instalado, comumente causa confusão. Uma vez que ele filtra as mensagens que chegam, você pode vir a pensar que se trata de um componente do servidor SMTP

– o Postfix, neste caso – o que não é verdade. Ainda que o Sieve seja chamado pelo Postfix, a implemen-tação é parte do servidor IMAP.

O princípio por trás disso é simples. O Postfix recebe novas mensagens, como servidor SMTP e processa sua configuração: re-solução do endereço, scanner de vírus, filtros antispam, graylisting (combate ao spam) e muitas ou-tras coisas.

Depois de o Postfix ter aceitado a mensagem, de tê-la feito passar pelos seus próprios filtros e estar pronto para entregá-la na caixa de entrada do usuário, um componen-te chamado Mail Delivery Agent (Agente de Entrega de Correspon-dência, ou apenas MDA) entra em campo. É o MDA quem realmente entrega a mensagem. Esta tarefa é feita por um componente do Do-vecot, compatível com o Sieve [1] .

Esta abordagem tem duas van-tagens decisivas: por um lado, o filtro se expõe apenas para as men-sagens, que ainda não tenham sido descartadas. Em outras palavras, as mensagens que são rejeitadas diretamente por serem classifica-das como spam, nunca chegam ao Sieve, o que economiza recur-sos do servidor. Por outro lado, o

Listagem 1: Confi guração do Postfi x 01 mailbox_delivery_lock = dotlock, fcntl02 virtual_mailbox_lock = dotlock, fcntl03 home_mailbox = Maildir/04 mailbox_command = /usr/lib/dovecot/deliver

Listagem 2: Exemplo do Sieve

01 # -- load plug-ins -0203 # -- Move messages into another folder -04 require "fileinto";0506 # -- Filter rules -07 #08 if header :contains "X-Spam-Flag" "YES" {09 fileinto "Junk";10 }

Page 24: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

74 www.linuxmagazine.com.br

ANÁLISE | Filtro de email com o Sieve

Sieve tem acesso aos cabeçalhos, que são adicionados pelas entra-das da configuração do Postfix, com SpamAssassin, ClamAV ou o Policy Daemon.

O MDA é configurado para usar a opção mailbox_command no arquivo /etc/postfix/main.cf . Em nosso la-boratório, a conexão correta entre o Sieve e o Postfix parece tal como é descrito na listagem 1 .

Após fazer as mudanças, você precisa mandar o Postfix recar-regar a configurações através do comando postfix reload .

Configuração do Dovecot Usar o deliver como o seu MDA, não implica na habilitação au-tomática do Sieve, porque, pri-meiro, você precisa configurar o protocolo. Novamente, eu vou partir do pressuposto de que a instalação básica do Dovecot está funcionando corretamente e que

as mensagens estão sendo ade-quadamente distribuídas para as caixas postais IMAP.

No Ubuntu, o servidor de configuração está localizado em /etc/dovecot/dovecot.conf . Você vai precisar habilitar duas importan-tes opções na seção lda . A opção postmaster_address dá nome a um contato técnico para o servidor de email e é exibido nas mensagens que retornam ( bounces ) e as do sistema. Uma vez que o Dovecot só carrega a extensão quando o administrador manifesta expressa-mente seu desejo de que isso seja feito, faz sentido fornecer um alias dedicado aqui.

Uma seção completa lda , terá a seguinte aparência:

protocol lda{postmaster_address = [email protected]

mail_plugins = sieve}

O comando /etc/init.d/dovecot restart manda o servidor recarre-

gar a configuração, o que conclui a instalação do Dovecot

E agora, para os usuários... Uma vez concluído o trabalho do administrador do sistema, de im-plementação de todos os requisi-tos para tornar o Sieve disponível e funcional para cada usuário no servidor IMAP, vou direcionar o foco para os passos a serem segui-dos pelos usuários para que possam gerenciar seus próprios fi ltros e ex-plorar a sintaxe do Sieve.

Como regra geral, cada servi-dor IMAP inclui sua própria im-plementação Sieve e os detalhes, como nomes dos arquivos para os comandos de filtragem ou nomes dos plugins, podem variar de um pra outro. Dito isso, os fundamentos da linguagem são especificados e, mesmo que você mude seu servidor de email, será capaz de portar a maior parte das regras que definiu.

Figura 1 Se desejado, o Sieve também pode enviar aviso de que o destinatário está de férias.

Page 25: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

75

| ANÁLISEFiltro de email com o Sieve

Linux Magazine #86 | Janeiro de 2012

A seguinte seção usa uma im-plementação Sieve no Dovecot 1.2.1, que o Ubuntu 10.04 provê como pacote instalável a partir de seus repositórios.

Como padrão, todos os arquivos de controle do Sieve residem no diretório home do usuário. Em um teste inicial, você pode querer criar um usuário dedicado para evitar impactar no seu uso regular de emails, ao apagar ou mover men-sagens acidentalmente.

O Sieve é bastante simples de usar; uma regra de filtragem in-correta não impedirá que uma mensagem seja entregue. Em vez disso, as regras do filtro não são carregadas e a mensagem é dei-xada sem filtragem alguma. Ainda assim, esta ação pode ter efeitos indesejados, caso você receba um grande número de emails.

Alguns arquivos vão merecer sua atenção durante a implementação do Dovecot. O arquivo principal é o .dovecot.sieve (note o ponto no início do nome), no qual são ar-mazenadas todas as regras de fi ltra-gem. Quando ocorrem mudanças,

o .dovecot.svbin é automaticamen-te pré-compilado para acelerar o processamento quando a próxima mensagem chegar. Outro arquivo importante é o .dovecot.sieve.log , que é usado pelo sistema de fi ltra-gem para guardar as mensagens de erro, caso ocorram incidentes.

Se houver mensagens de férias, o .dovecot.lda-dupes também vai estar presente. Ele acompanha as respostas automáticas que são enviadas. A listagem 2 , dá uma visão geral inicial da estrutura de arquivos.

Este processo começa com o carregamento de todas as extensões requeridas, neste caso, fileinto , que é responsável por mover mensagens para outras pastas. As regras indivi-duais seguem na segunda parte; o Sieve vai processá-las, uma após a outra, ignorando comentários que comecem com # . No exemplo, as mensagens que contenham a palavra YES em seus cabeçalhos X-Spam-Flag são movidas para a pas-ta de spam – o que será útil para mover automaticamente qualquer email não solicitado identificado

pelo SpamAssassin. Para testar a configuração, tudo que você pre-cisa é de uma mensagem com o padrão GTUBE [2] . As filtragens bem-sucedidas são imediatamen-te exibidas em /var/log/mail.log :

Aug 2 10:15:51 mail dovecot: deliver

(sieve): sieve: msgid=<4E37B272.2060705@ meinefirma.tld>: stored mail into mailbox ' Junk'

Na linguagem do Sieve, você começa enunciando a condição, que leva à ação a ser executada. Ambas, condições e ações, podem ser combinadas tal como pode ser observado no exemplo na listagem 3 .

No exemplo, pré-condições são definidas entre parênteses; a opção anyof significa que cada um é válido por si só. Em outras palavras, se apenas um dos três cabeçalhos ( header ) satisfizer a condição a que se refere, a regra ainda se aplica. As ações a serem executadas, são listadas abaixo do texto entre parênteses.

No exemplo, toda mensagem identifi cada como spam, será mo-vida para a pasta Junk e, adicional-mente, marcada como “Seen” (lida).

O comando setflag , requerido para executar esta ação, é dispo-nibilizado pela extensão, já car-regada, imap4flags . Por fim, o comando stop também é útil, por sinalizar que não há mais ações a serem tomadas para a mensagem em questão – assumindo que a re-gra correspondente já foi aplicada. Isso é interessante, por exemplo, no caso de mensagens de listas de discussão ou periódicos e cujos re-metentes você não deseja enviar mensagens respondendo que está de férias (vamos descrever isto mais tarde).

O Sieve, verdadeiramente bri-lha, quando é preciso ordenar lis-tas de discussão. Ainda que muitos clientes de email e sistemas de

Listagem 3: Condições e ações

01 require ["fileinto", "imap4flags"];02 if anyof (header :contains "X-Spam-Flag" "YES",03 header :contains "Subject" "<ADV>",04 header :contains "Subject" "[SPAM]") {05 setflag "\\Seen";06 fileinto "Junk";07 stop;08 }

Listagem 4: Filtrando correspondências de lista

01 require "fileinto";02 if header :matches "List-Id" "<announce.de.libreoffice.org>" {03 fileinto "INBOX.announce@de-libo";04 stop;05 }06 if allof (header :matches "From" "*+owner@*",07 header :matches "Subject" "Moderation for*used") {08 fileinto "INBOX.Moderation";09 stop;10 }

Page 26: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

76 www.linuxmagazine.com.br

ANÁLISE | Filtro de email com o Sieve

webmail, em particular, façam suas filtragem tendo como referência o campo de assunto ou o destino, o Sieve suporta a detecção de listas de discussão através da List-ID ou os cabeçalhos List-Post ( lista-gem 4 ), que são padrões usados pelo Mailman. Esta abordagem te dá um método confiável para detectar quando uma mensagem é oriunda de uma lista de discus-são ou foi diretamente enviada por um destinatário.

A primeira regra move as men-sagens da lista de anúncios em alemão do LibreOffice para uma pasta abaixo da caixa de entrada. A segunda regra, aceita correspon-dência das listas em questão.

Pastas e subpastas são separadas por um ponto, seguindo a forma-tação típica do IMAP.

A diferença entre os modos de busca :contains e :matches , tam-bém se torna clara aqui. Enquan-to o primeiro apenas espera que

o texto ocorra em algum lugar no cabeçalho, o outro dá a opção de realizar uma busca mais detalha-da – o texto deve ser exato e você pode usar o asterisco como curinga. Outra coisa nova, neste exemplo, é a opção allof , que determina que todas as condições devem ser satis-feitas e não apenas algumas. Em outras palavras, tanto o remetente quanto o assunto têm que estar de acordo com a regra a ser aplicada.

Busca de termos, com o uso de aspas, são indicadas no Sieve, através de barra invertida, tal como mostrado na listagem 5 .

Incidentalmente, este filtro cui-da da tarefa de mover mensagens enviadas por dispositivos legados Symbian para dentro da pasta de itens enviados. Muitos destes aparelhos só têm a capacidade de enviar uma cópia para si mesmos. Portanto, o filtro primeiro consulta o remetente e o cliente de email. Depois, move as mensagens.

Em férias Muitas pessoas estarão voltando das férias quando este artigo esti-ver pronto, mas o Sieve pode lhe ser útil, quando você for entrar de férias novamente. Embora já tenha havido muito debate sobre o sentido de se enviar mensagens de férias, há quem não queira abrir mão delas. O grande desafio, aqui, é que a resposta seja enviada apenas para endereços de email pessoais – autorrespostas enviadas para listas de discussão ou periódicos são mais do que inconvenientes.

Respostas automáticas podem realmente ser problemáticas se seu destinatário também usa respostas automáticas: sistemas de email incorretamente configurados, em uma situação desta, ficarão envian-do mensagens automaticamente, sem parar, o que pode acabar por derrubar o sistema.

Implementações enxutas, como o Sieve, contudo, verificam diver-sos critérios, tais como informações do remetente, cabeçalhos de lista e muito mais, antes de ousar en-viar uma mensagem. Ao mesmo tempo, estas ferramentas guardam registros de quaisquer mensagens que já foram enviadas, assegurando que o destinatário só receba uma mensagem, dentro de certo perí-odo de tempo.

Faz sentido configurar o arquivo de filtragem para mover qualquer mensagem de lista de email, perió-dicos para outro diretório e depois chamar o comando stop para fina-lizar o processo. Uma autorrespos-ta é enviada para mensagens que não atendem as condições dos filtros. Criar uma mensagem de autorresposta para o período das férias, pode ser feito em poucas linhas ( listagem 6 ).

Este exemplo “de férias” começa com o carregamento do módulo requerido, vacation . A opção days , define quão frequente a mensagem

Listagem 6: Em férias

01 require "vacation";02 vacation03 :days 1404 # in case of multiple addresses used to format ["address1", "address2", "address3"]05 :addresses " [email protected] "06 :subject "Fora do escritório"07 "Essa é uma mensagem gerada automaticamente.0809 Estarei fora do escritório até 5 de setembro de 2011. Seu10 email não será encaminhado, mas respondido até o meu11 retorno. Em caso de emergência, favor ligar para nosso12 escritório. Esta mensagem será enviada apenas uma vez.";

Listagem 5: Busca

01 require ["fileinto", "imap4flags"];02 if allof (header :matches "From" "\"Florian Effenberger\"< [email protected] >",03 header :matches "X-Mailer" "EPOC Email Version 2.10") {04 setflag "\\Seen";05 fileinto "Sent";06 stop;07 }

Page 27: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

77

| ANÁLISEFiltro de email com o Sieve

Linux Magazine #86 | Janeiro de 2012

irá ser enviada – de acordo com o exemplo, 14 dias. Os endereços dos destinatários precisam ser forneci-dos, por que o Sieve só vai enviar a mensagem se um destes endereços estiver listado no campo Para ou Cc ( figura 1 ). Só o campo Assunto é opcional.

O Sieve pode fazer mais Ao lado das funções que eu expli-quei aqui, o Sieve tem muitos ou-tros truques sob a manga. Mas estes vão além do objetivo deste artigo introdutório. Se você entende o básico da linguagem, pode rapida-mente defi nir regras abrangentes de fi ltragem, com alguma ajuda dos variados exemplos de scripts [3] e tutoriais [4] disponíveis na web.

Para evitar a necessidade de testar todos os seus scripts localmente, você pode querer usar um validador web [5] . É recomendável também ler a documentação do produto, no que tange ao servidor IMAP e conhecer algumas dicas de uso.

Uma pergunta que fi cou sem resposta: como os meus scripts vão chegar até o servidor? Ainda que pequenas instalações permi-tam aos usuários acessarem seus diretórios pessoais via FTP (in-seguro!), WebDAV, ou mesmo SSH, o serviço ManageSieve [6] é recomendado para ambientes delarga escala.

Esta ferramenta permitem aos clientes de email e aos sistemas de webmail instalar fi ltros através do uso de um protocolo separado, sem acesso direto ao sistema. ■

Gostou do artigo?Queremos ouvir sua opinião. Fale conosco em

[email protected]

Este artigo no nosso site:

http://lnm.com.br/article/6312

Mais informações

[1] Plugin Sieve Dovecot: http://wiki.dovecot.org/LDA/sieve

[2] Teste genérico para email em massa não solicitado:

http://spamassassin.apache.org/gtube/

[3] Exemplos Sieve: http://en.wikipedia.org/wiki/Sieve_ (mail_filtering_language)#Example

[4] Tutorial do Sieve: http://www.tty1.net/blog/2011-07-16-sieve-tutorial_en.html

[5] Libsieve PHP: http://libsieve-php.sourceforge.net/

[6] ManageSieve: http://wiki.dovecot.org/ManageSieve

O autorFlorian Effenberger é promotor do Software Livre há muito anos. Ele é

o co-líder de marketing internacional do projeto OpenOffice.org e mem-

bro da diretoria do OpenOffice.org Alemanha. Seu trabalho se concentra

principalmente em projetar redes corporativas e educacionais com base

em Software Livre.

AGUARDE!

OLIMPÍADASDE LONDRES

FIM DOMUNDO

QUAL SERÁ

O PRINCIPAL

ACONTECIMENTO

DE 2012?

LANÇAMENTODO NOVO

2012GUIAdeTI

Page 28: Em fevereiro nas bancas!docshare01.docshare.tips/files/8161/81614990.pdf – América do Norte Apesar de todos os cuidados possíveis terem sido tomados durante a produção desta

82 www.linuxmagazine.com.br

Linux Magazine #87

PR

EVIE

W

Admin Magazine #05

ResgateTodo mundo já passou pela inevitável situação de perder emails, músicas, fotos ou outros arquivos igualmente importantes por alguma pane ou fa-lha do computador. Sem lembrar que uma vez ou outra, você certamente já deletou alguma informação ou arquivo sem querer e desesperou-se para saber como recuperá-lo.Na Linux Magazine de fevereiro, você vai descobrir diversas maneiras de resga-tar informações perdidas, seja em panes de backup ou por exclusão indevida. Aprenderá como criar backups efi cazes e de recuperação garantida.Tudo isso e muito mais no mês que vem. Até lá! ■

MonitoramentoNa Admin Magazine #05, você irá conhecer as melhores opçoes em softwares para monitoramento de sistemas.

Seja em redes Linux, Windows ou mesmo em redes mistas, o moni-toramento de redes e sistemas está presente no dia a dia de nove entre dez administradores de sistemas.

Se você é um deles, não perca nossa próxima edição!