Fonte: Paul Meller, IDG Now!, 28/11/06
A Comissão Européia lançou aos países membros da comunidade européia o desafio de combater a disseminação spams, spywares e softwares maliciosos, que geraram perda de 39 bilhões de euros ao mundo em 2005 (segundo a Ferris Research) e representam entre 54% e 85% do total de mensagens enviadas, segundo consultorias como Symantec e MessageLabs.
A comissária para Sociedade da Informação e Mídia Viviane Reding ressaltou que a Holanda conseguiu reduzir em 85% o envio de spam no país com uma unidade formada por cinco funcionários trabalhando em tempo integral e 570 mil euros em equipamentos e afirmou que gostaria de ver outras nações assumindo a mesma postura.
A Finlândia é outro exemplo no combate às mensagens indevidas. Um filtro implementado pelo país permitiu reduzir o percentual de spam de 80% para 30%.
Segundo Reding, se no prazo de um ano os países não conseguirem reduzir a emissão de spam, a Comissão vai considerar a criação de novas medidas legislativas para coibir a prática.
A comissária ressaltou, no entanto, que a colaboração de países de fora da União Européia também é necessária para combater as mensagens indesejadas.
Segundo dados da Sophos, do início de novembro, os principais emissores de spams do mundo são os Estados Unidos, com 21,6% de participação. O Brasil aparece na sétima posição, enviando 4,7% das mensagens indesejadas do mundo.
terça-feira, 28 de novembro de 2006
terça-feira, 21 de novembro de 2006
Substituição de String em Vários Arquivos
Você já precisou alguma vez substituir uma string por outra em diversos arquivos ao mesmo tempo? Caso utilize Linux, uma forma de fazer isso é utilizando os comandos find e sed em conjunto.
Por exemplo, para trocar a string xyz pela string abc em todos os arquivos com a extensão txt neste diretório e abaixo, o seguinte comando (de uma linha) pode ser utilizado:
find . -name "*.txt" -exec sh -c "cp -a {} {}.tmp; sed 's/xyz/abc/g' {}.tmp > {}; rm {}.tmp" \;
O que ocorre?
O find busca, neste diretório e abaixo, por todos os arquivos terminados em '.txt'. Para cada arquivo encontrado, chama um shell (sh) e neste: copia o arquivo para um arquivo temporário; executa, contra o arquivo temporário, o comando sed - com o parâmetro 's/xyz/abc/g', que serve para ler o arquivo e jogá-lo na saída padrão, com todas as ocorrências da string xyz substituídas por abc; direciona a saída padrão para o arquivo original; e exclui o arquivo temporário. E assim por diante, para cada arquivo que o find encontrar.
Em caso de dúvidas quanto ao find, consulte sua página de manual (man find). Quanto ao sed, por ser um comand muito abrangente e flexível, sua página de manual não é tão útil quanto algumas outras documentações encontradas na internet. Uma boa: http://aurelio.net/sed/sed-HOWTO.
Por exemplo, para trocar a string xyz pela string abc em todos os arquivos com a extensão txt neste diretório e abaixo, o seguinte comando (de uma linha) pode ser utilizado:
find . -name "*.txt" -exec sh -c "cp -a {} {}.tmp; sed 's/xyz/abc/g' {}.tmp > {}; rm {}.tmp" \;
O que ocorre?
O find busca, neste diretório e abaixo, por todos os arquivos terminados em '.txt'. Para cada arquivo encontrado, chama um shell (sh) e neste: copia o arquivo para um arquivo temporário; executa, contra o arquivo temporário, o comando sed - com o parâmetro 's/xyz/abc/g', que serve para ler o arquivo e jogá-lo na saída padrão, com todas as ocorrências da string xyz substituídas por abc; direciona a saída padrão para o arquivo original; e exclui o arquivo temporário. E assim por diante, para cada arquivo que o find encontrar.
Em caso de dúvidas quanto ao find, consulte sua página de manual (man find). Quanto ao sed, por ser um comand muito abrangente e flexível, sua página de manual não é tão útil quanto algumas outras documentações encontradas na internet. Uma boa: http://aurelio.net/sed/sed-HOWTO.
segunda-feira, 20 de novembro de 2006
Ubuntu & Pentium 4 HT
Se você utiliza Ubuntu e seu micro possui processador Pentium 4 HT, e você deseja fazer uso da tecnologia Hyper-Threading, deverá ter instalado um kernel com suporte a SMP – Symmetric Multi-processing, além de obviamente ter o HT habilitado na BIOS.
Caso seu micro possua 1 processador HT, o Ubuntu deverá reconhecer como sendo 2 processadores. Para verificar qual a situação atual abra uma janela de terminal e execute o comando cat /proc/cpuinfo. Verifique quantos processadores foram encontrados, o primeiro terá a identificação 'processor : 0' e assim por diante.
Se aparecer apenas um processador, execute o comando uname -v e verifique a ocorrência da string SMP. Caso encontrada, você já está utilizando um kernel com suporte a SMP, e o HT pode estar desativado na BIOS. Caso não apareça a string SMP, você não está utilizando um kernel com suporte a SMP.
Para instalar um kernel com suporte ao SMP do Pentium 4 HT, abra o Gerenciador de Pacotes Synaptic, procure por 'linux-686-smp' e instale este pacote. Será necessário reiniciar o micro.
Após reiniciar verifique novamente quantos processadores foram reconhecidos, executando o comando cat /proc/cpuinfo em uma janela de terminal.
Qualquer dúvida entre em contato.
Caso seu micro possua 1 processador HT, o Ubuntu deverá reconhecer como sendo 2 processadores. Para verificar qual a situação atual abra uma janela de terminal e execute o comando cat /proc/cpuinfo. Verifique quantos processadores foram encontrados, o primeiro terá a identificação 'processor : 0' e assim por diante.
Se aparecer apenas um processador, execute o comando uname -v e verifique a ocorrência da string SMP. Caso encontrada, você já está utilizando um kernel com suporte a SMP, e o HT pode estar desativado na BIOS. Caso não apareça a string SMP, você não está utilizando um kernel com suporte a SMP.
Para instalar um kernel com suporte ao SMP do Pentium 4 HT, abra o Gerenciador de Pacotes Synaptic, procure por 'linux-686-smp' e instale este pacote. Será necessário reiniciar o micro.
Após reiniciar verifique novamente quantos processadores foram reconhecidos, executando o comando cat /proc/cpuinfo em uma janela de terminal.
Qualquer dúvida entre em contato.
domingo, 19 de novembro de 2006
Security is Broken
Interessante palestra de Rik Farrow falando sobre segurança de computadores na atualidade. Rik Farrow é consultor de segurança, instrutor e escritor, tendo publicado livros como Unix Administration Guide to System V (Prentice-Hall, 1989) e Unix System Security (Addison-Wesley, 1991).
A palestra foi ministrada no Google Tech Talks em 11 de outubro de 2006.
Resumo (tradução do original de Rik Farrow):
Nosso modelo de segurança de computadores está quebrado. Pior ainda, ele nunca funcionou de fato bem, e é ainda menos apropriado aos usos de hoje. Nesta apresentação, eu exploro a história por trás do design da segurança atual, tanto em hardware quanto em sistemas operacionais. Ao invés de criar um modelo mais seguro com o passar do tempo, projetistas de sistemas têm tornado as coisas piores, criando insegurança em profundidade. A maioria dos sistemas de hoje são máquinas monousuário: certamente desktops e laptops, mas também a maioria dos servidores. O modelo de segurança atual não foi projetado para protejer os usuários deles mesmos, e segue-se um longo caminho em direção à compreensão de porque a segurança é tão difícil. Eu finalizo vendo estratégias para melhorar a segurança - mas sem solução real. O ponto é começar a pensar diferente, enquanto adota-se hoje as melhores práticas. O que nós fizemos no passado não funcionou, e não pode funcionar. Nós precisamos olhar para o modelo de segurança de um jeito novo, e este é o ponto real desta apresentação.
Link para o vídeo (em inglês)
sábado, 18 de novembro de 2006
Synaptic & Conexão Ruim
Dica para utilização do Gerenciador de Pacotes Synaptic no Ubuntu com conexão instável a Internet
Aqui no Brasil possuimos hoje diversos problemas relacionados à qualidade das conexões ADSL domésticas, em alguns locais muito instáveis e com perdas. Em conexões assim pode se tornar difícil instalar softwares no Ubuntu utilizando o Gerenciador de Pacotes Synaptic, pois ocorre timeout no download dos pacotes .deb e a instalação falha, principalmente com pacotes grandes. O Synaptic exibe um erro parecido com este:
W: Falha ao obter (pacote .deb)
Conexão expirou
E com isso o Synaptic simplesmente desiste de baixar o pacote e você precisa novamente clicar em 'Aplicar' e torcer para que o pacote seja baixado.
Uma maneira de contornar esta tarefa é automatizar esta repetição de tentativas de download, preferencialmente utilizando um timeout pequeno e um número ilimitado de tentativas – assim que ocorre o timeout, tenta novamente – para conexões instáveis, é o jeito.
Isto pode ser feito da seguinte forma:
1. No Gerenciador de Pacotes Synaptic, após selecionar os pacotes que deseja instalar, abra o menu Arquivo -> 'Gerar script de pacotes baixados'; (A tradução do menu tá meio ruim...)
2. Insira um nome para o script, por exemplo download.sh, e clique em Salvar;
3. Abra uma janela de terminal (menu Aplicações -> Acessórios -> Terminal);
4. Abra como super-usuário o script para edição:
sudo gedit download.sh
5. Logo após o comando wget, em todas as linhas que o possuirem, insira os seguintes parâmetros:
-t 0 -c -T 30
6. Salve o documento e feche o editor;
7. Na janela de terminal, vá até o diretório /var/cache/apt:
cd /var/cache/apt/archives
8. Execute como super-usuário o script recém-editado:
sudo ~/download.sh
9. Após a conclusão do download dos pacotes, feche a janela do Terminal;
10. Retornando ao Gerenciador de Pacotes Synaptic, clique agora novamente em Aplicar. Como os pacotes já estarão baixados, ele irá rapidamente instalar.
Parâmetros utilizados no wget:
-t 0 Torna o número de tentativas ilimitado. Sem a especificação do parâmetro '-t' o número de tentativas é 20.
-c Continua o download de um arquivo já parcialmente baixado. Útil caso você queira executar novamente o script de download.
-T 30 Configura o timeout geral para 30 segundos. Ou seja, se alguma consulta DNS demorar mais de 30 segundos, ou se uma conexão TCP demorar mais de 30 segundos para ser estabelecida, ou se em algum ponto do download não forem recebidos dados por mais de 30 segundos, o Wget irá abortar a operação.
É isso. Qualquer dúvida estamos aí.
Aqui no Brasil possuimos hoje diversos problemas relacionados à qualidade das conexões ADSL domésticas, em alguns locais muito instáveis e com perdas. Em conexões assim pode se tornar difícil instalar softwares no Ubuntu utilizando o Gerenciador de Pacotes Synaptic, pois ocorre timeout no download dos pacotes .deb e a instalação falha, principalmente com pacotes grandes. O Synaptic exibe um erro parecido com este:
W: Falha ao obter (pacote .deb)
Conexão expirou
E com isso o Synaptic simplesmente desiste de baixar o pacote e você precisa novamente clicar em 'Aplicar' e torcer para que o pacote seja baixado.
Uma maneira de contornar esta tarefa é automatizar esta repetição de tentativas de download, preferencialmente utilizando um timeout pequeno e um número ilimitado de tentativas – assim que ocorre o timeout, tenta novamente – para conexões instáveis, é o jeito.
Isto pode ser feito da seguinte forma:
1. No Gerenciador de Pacotes Synaptic, após selecionar os pacotes que deseja instalar, abra o menu Arquivo -> 'Gerar script de pacotes baixados'; (A tradução do menu tá meio ruim...)
2. Insira um nome para o script, por exemplo download.sh, e clique em Salvar;
3. Abra uma janela de terminal (menu Aplicações -> Acessórios -> Terminal);
4. Abra como super-usuário o script para edição:
sudo gedit download.sh
5. Logo após o comando wget, em todas as linhas que o possuirem, insira os seguintes parâmetros:
-t 0 -c -T 30
6. Salve o documento e feche o editor;
7. Na janela de terminal, vá até o diretório /var/cache/apt:
cd /var/cache/apt/archives
8. Execute como super-usuário o script recém-editado:
sudo ~/download.sh
9. Após a conclusão do download dos pacotes, feche a janela do Terminal;
10. Retornando ao Gerenciador de Pacotes Synaptic, clique agora novamente em Aplicar. Como os pacotes já estarão baixados, ele irá rapidamente instalar.
Parâmetros utilizados no wget:
-t 0 Torna o número de tentativas ilimitado. Sem a especificação do parâmetro '-t' o número de tentativas é 20.
-c Continua o download de um arquivo já parcialmente baixado. Útil caso você queira executar novamente o script de download.
-T 30 Configura o timeout geral para 30 segundos. Ou seja, se alguma consulta DNS demorar mais de 30 segundos, ou se uma conexão TCP demorar mais de 30 segundos para ser estabelecida, ou se em algum ponto do download não forem recebidos dados por mais de 30 segundos, o Wget irá abortar a operação.
É isso. Qualquer dúvida estamos aí.
Assinar:
Postagens (Atom)