Latest Publications

Nasceu: Comunidade brasileira de Endian Firewall

Gostaria de anunciar à todos os visitantes deste blog, que hoje está sendo inaugurada a “Comunidade Brasileira de Endian Firewall.
O objetivo desta comunidade é oferecer um espaço aberto para debates, troca de experiências e também ajuda mutua na resolução de problemas relacionados ao efw.

Da mesma forma que eu estou presente nos comentários deste blog, também estarei presente nos forums da comunidade interagindo com os integrantes e ajudando na solução de problemas.

O endereço da comunidade é: http://endian.eth0.com.br

Vejo vocês por lá ;)

Tópico de Boas Vindas

HyperVM e Kloxo viram Open Source

Após a trágica morte de K. T. Ligesh (fundador da lxlabs e desenvolvedor do HyperVM e LxAdmin/Kloxo), formou-se o consórcio “LxCenter” para dar continuidade a estes produtos no formato Open Source.

Hoje a “LxCenter” finalmente liberou o código fonte dos dois produtos sob a licença AGPL3.0.

O post com a notícia completa do lançamento pode ser conferido aqui.

Sobre o HyperVM:
O HyperVM é um sistema completo de gerenciamento de máquinas virtuais(OpenVZ/Xen) e reais. Você pode ter controle total do seu datacenter em um painel centralizado.

Sobre o Kloxo:
Sistema de webhosting seguindo a mesma linha do ISPConfig, DirectAdmin e cPanel.
Observar que este ainda não deve ser utilizado em ambiente de produção pois possuí falhas na segurança.

Links Relacionados:
The Times Of India – Techie hangs himself in HSR Layout
Platonic – LxLabs Ligesh commits suicide
lowendbox – HyperVM and Kloxo Now Open Sourced, Hosted at LxCenter
The Register – Webhost hack wipes out data for 100,000 sites
Whatever Compliance – Hackers to VAServ: “it was ur own stupidity and excessive passwd reuse”
Forum LxCenter – Opensource Release Date

Lançado Endian Firewall 2.3

Hoje a equipe do Endian anunciou o lançamento da versão 2.3 dos Appliances e do Endian Firewall Community. Esta nova versão incluí vários recursos novos e recursos que antes estavam disponíveis apenas para usuários Enterprise.

Endian 2.3 Lançado

Endian 2.3 Lançado

Os principais recursos novos são:

* Dashboard
A página principal foi substituída por um dashboard com estatísticas sobre o sistema e serviços, também foram adicionados gráficos de tráfego em tempo real.
* HTTP proxy com controle de conteúdo por usuário ou grupo
O proxy HTTP agora tem uma nova interface que adiciona a possibilidade de criar controle de conteúdo por usuário ou grupo.
* Intrusion Prevention
As regras do snort agora podem ser configuradas, também é possível bloquear pacotes e logar tentativas de invasão.
* Remodelagem do “Port Forwarding”
Ná versão 2.3 agora é possível redirecionar portas a partir de qualquer zona.
Redirecionamento de portas sem NAT agora também é suportado
* Quality of Service
O módulo de Traffic Shapping foi substituído por um módulo completo de QoS.
* Notificações por email
É possível enviar notificações por email automaticamente para eventos pré-definidos.
* SNMP
Adicionado suporte ao protocolo SNMP.

Traduzido na integra de: http://blog.endian.com/2009/10/27/171/

Download em: http://www.endian.com/en/community/download/

Atualização do Zimbra para a versão 6

A alguns dias atrás, foi lançada a versão 6 do Zimbra, para atualizar da versão 5 para a 6, o processo é relativamente simples.
Dando continuidade ao howto que escrevi anteriormente, vou descrever os passos necessários para atualizar o zimbra.

Dependências:
O “Zimbra 6″ requer a instalação um pacote novo: sysstat
# yum install sysstat

Download:
Entre em http://www.zimbra.com/community/downloads.html e baixe versão mais atual do zimbra.

Atualização:
# tar xvfz zcs-6
# cd zcs-6
(No CentOS 5.x ou outra distro não listada)
# ./install --plataform-override
(Outra distro suportada oficialmente)
# ./install

Responda as perguntas que aparecem na tela, caso encontre algum erro, corrija-o antes de prosseguir.

HOWTO: ISPConfig 3.x no CentOS 5.x

O ISPConfig é uma ótima ferramenta Open Source para gerenciamento completo de um servidor de Web Hosting. Ele possui ferramentas que abrangem todos os itens indispensáveis para este tipo de serviço, como emails, web, ftp, dns, mysql, revendedores (reseller), painel administrativo para o usuário gerenciar o seu domínio, etc.. é sem dúvidas, uma ótima alternativa ao cPanel WHM.

Instale o repositório rpmforge de acordo com este guia: Adicionando o repositório rpmforge no CentOS 5.X

Pré ajustes

  • Desabilite o Selinux
  • Desabilite o firewall do CentOS
  • Ambos podem ser desabilitados através do menu “setup” – no item “firewall”.

    Preparando o servidor e instalando as dependências:
    # yum remove sendmail
    # yum update
    # yum install amavisd-new bzip2 clamav clamav-data clamav-server clamav-update clamd curl curl-devel cyrus-sasl-devel expect gamin-devel gcc gcc-c++ gdbm-devel getmail httpd imagemagick libtool libtool-ltdl-devel libxml2 libxml2-devel mysql-devel mysql-server ntp openldap-devel openldap-servers openssl-devel pam-devel pcre-devel perl-datetime-format-builder perl-datetime-format-http perl-dbd-mysql perl-libwww-perl php php-bcmath php-common php-devel php-eaccelerator php-gd php-imap php-ldap php-magickwand php-magpierss php-mapserver php-mbstring php-mcrypt php-mhash php-mssql phpmyadmin php-mysql php-odbc php-pear php-shout php-snmp php-soap php-tidy php-xml php-xmlrpc pkgconfig postfix postgresql-devel pure-ftpd quota redhat-rpm-config rpm-build spamassassin squirrelmail subversion unrar unzip webalizer zlib-devel -y

    Para facilitar a sua vida, reuni a instalação de todos os pacotes necessários em apenas um “yum install”, assim você pode ir tomar um café e fumar um cigarro tranquilamente enquanto o yum trabalha ;)

    Instalando serviços que não estão disponíveis nos repositórios:
    # cd /usr/src
    mydns:
    # wget http://mydns.bboy.net/download/mydns-mysql-1.1.0-1.i386.rpm
    # rpm -ivh mydns-mysql-1.1.0-1.i386.rpm

    vlogger:
    # wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
    # tar xvfz vlogger-1.3.tar.gz
    # mv vlogger-1.3/vlogger /usr/sbin/

    Courier
    Por uma exigência do courier-imap, este não pode ser compilado utilizando o usuário root, portanto, iremos criar um usuário apenas para criar os pacotes rpm, não esqueça de remove-lo no final.

    # useradd -m -s /bin/bash rpmbuilduser
    # passwd rpmbuilduser

    Edite o arquivo /etc/sudoers e adicione na última linha:
    rpmbuilduser ALL=(ALL) ALL

    Faça o download dos pacotes do courier:
    # wget http://sourceforge.net/projects/courier/files/courier-authlib/courier-authlib-0.62.4.tar.bz2
    # wget http://sourceforge.net/projects/courier/files/courier-imap/courier-imap-4.5.1.tar.bz2
    # wget http://prdownloads.sourceforge.net/courier/maildrop-2.0.4.tar.bz2

    Alterne para o usuário “rpmbuilder” e prepare o ambiente para gerar os arquivos rpm
    # su rpmbuilduser

    # mkdir $HOME/rpm
    # mkdir $HOME/rpm/SOURCES
    # mkdir $HOME/rpm/SPECS
    # mkdir $HOME/rpm/BUILD
    # mkdir $HOME/rpm/SRPMS
    # mkdir $HOME/rpm/RPMS
    # mkdir $HOME/rpm/RPMS/i386
    # mkdir $HOME/rpm/RPMS/x86_64

    # echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros

    Crie os rpms do courier-authlib e instale os pacotes requeridos pelo ISPConfig
    # rpmbuild -ta courier-authlib-0.62.4.tar.bz2
    # sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-authlib-0.62.4-1.i386.rpm
    # sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-authlib-mysql-0.62.4-1.i386.rpm
    # sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-authlib-devel-0.62.4-1.i386.rpm

    Mesmo procedimento com o courier-imap
    # rpmbuild -ta courier-imap-4.5.1.tar.bz2
    # sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-imap-4.5.1-1.i386.rpm

    E finalmente o maildrop…
    # rpmbuild -ta maildrop-2.0.4.tar.bz2
    # sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/maildrop-2.0.4-1.i386.rpm

    Opcionalmente, volte para o usuário root, copie os rpms para /usr/src e delete o usuário rpmbuilder
    # exit
    # mv /home/rpmbuilduser/rpm/ /usr/src/
    # userdel -r rpmbuilduser

    Edite novamente o arquivo /etc/sudoers e remova a linha adicionada anteriormente.

    Atualize o clam
    /usr/bin/freshclam

    Ative o sistema de quotas
    Edite o arquivo /etc/fstab e na linha referente a partição em que as quotas devem ser acionadas, adicione as opções “,usrquota,grpquota“:
    Exemplo:
    /dev/sda3 / ext3 defaults,usrquota,grpquota 1 1
    Para ativar o sistema de quota (assumindo que você está utilizando quota na /)
    # touch /aquota.user /aquota.group
    # chmod 600 /aquota*
    # mount -o remount /
    # quotacheck -avugm
    # quotaon -avug

    Agora que todos os serviços estão instalados, inicialize eles e verifique se todos subiram corretamente.
    # service amavisd start
    # service clamd start
    # service courier-authlib start
    # service courier-imap restart
    # service httpd start
    # service mydns start
    # service mysqld start
    # service postfix start
    # service pure-ftpd start
    # service saslauthd start

    Altere o runlevel dos serviços utilizados para que estes inicializem durante o boot:
    # chkconfig --level 345 amavisd on
    # chkconfig --level 345 clamd on
    # chkconfig --level 345 courier-authlib on
    # chkconfig --level 345 courier-imap on
    # chkconfig --level 345 httpd on
    # chkconfig --level 345 mydns on
    # chkconfig --level 345 mysqld on
    # chkconfig --level 345 postfix on
    # chkconfig --level 345 pure-ftpd on
    # chkconfig --level 345 saslauthd on

    Defina uma senha de root para o banco mysql:
    # mysqladmin -u root password senhacomplexa (mas é complexa mesmo viu?)

    Nesta altura, todas as dependências e serviços que o ISPConfig estão instalados e rodando corretamente, então podemos inicializar a instalação.

    Download do ISPConfig
    # cd /usr/src
    # wget http://www.ispconfig.org/downloads/ISPConfig-3.0.1.x.tar.gz

    Descompacte e rode o script de instalação
    # tar xvfz ISPConfig-3.0.1.x.tar.gz
    # cd ispconfig3_install/install/
    # php -q install.php

    Quando você executar o install.php, você precisará responder algumas perguntas específicas do seu servidor, para a maioria delas, uma resposta satisfatória já vem definida.
    Durante a execução deste script, todos os serviços serão configurados automagicamente de acordo com as especificações do ISPConfig. Não será necessário editar nenhum arquivo manualmente.

    Após rodar o script de instalação, acesse o painel do ISPConfig em http://ipdoservidor:8080 e entre com o usuário admin senha admin (mude imediatamente esta senha)

    Observação: Durante o yum inicial, você realizou a instalação do squirrel e este encontra-se disponível em http://ipdoservidor/webmail ;)

    Pronto, seu ISPConfig deve estar completamente instalado, agora basta dedicar um pouco de tempo para configurar de acordo com as suas necessidades.

    Se você chegou neste post procurando uma alternativa para o cPanel e por algum motivo não gostou do ISPConfig, cito algumas outras opções que podem agradar:

    Domain Technologie Control
    ispCPOmega – (Fork do VHCS) – Demo – admin / admin123
    RavenCoreDemo – Login: admin / ravencore
    GNUPanel
    Virtualmin GPL

    Adicionando o repositório rpmforge no CentOS 5.X

    Muitos pacotes não estão disponíveis nos repositórios oficiais do CentOS, entretanto existem diversos repositórios de terceiros que cobrem esta lacuna, um dos repositórios mais famosos é o rpmforge. Neste post explico como realizar a instalação deste repositório no CentOS 5.x.

    Instale o pacote yum priorities com o comando:
    # yum install yum-priorities
    O objetivo do priorities é priorizar pacotes dos repositórios oficiais do CentOS, ou seja, se um pacote existir no rpmforge e no repositório oficial será instalada a versão do repositório com maior prioridade (normalmente os oficiais), desta forma minimizando problemas gerados por pacotes externos substituindo pacotes oficiais.
    Você pode instalar o rpmforge sem esta proteção, mas para a sua saúde e pela estabilidade do seu servidor, recomendo seriamente a instalação deste plugin.

    Instalando o rpmforge:
    # wget rpmforge-i386 ou rpmforge-x86_64
    # rpm -ivh rpmforge*
    # rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

    Configurando o priorities:
    Edite o arquivo /etc/yum/pluginconf.d/priorities.conf, e verifique se o plugin priorities está habilitado
    Agora edite os seus repositórios dentro de /etc/yum.repos.d/ e ajuste a prioridade de cada um deles.
    É recomendável utilizar:
    [base], [addons], [updates], [extras] -> priority=1
    [centosplus],[contrib] -> priority=2
    Outros repositórios (ex: rpmforge) -> priority=10 (ou maior)

    Rode o yum e verifique se o plugin “priorities” foi carregado corretamente. ex:
    # yum check-update
    Loaded plugins: fastestmirror, priorities
    Loading mirror speeds from cached hostfile
    * rpmforge: apt.sw.be
    * base: ftp.cica.es
    * updates: ftp.cica.es
    * contrib: ftp.cica.es
    * centosplus: ftp.cica.es
    * addons: ftp.cica.es
    * extras: ftp.cica.es
    540 packages excluded due to repository priority protections

    Fonte: http://wiki.centos.org

    Howto: Filtro de emails usando Spamassassin + Postfix + ClamAV + MailScanner + MailWatch

    O MailWatch é uma interface Web para o gerenciamento do MailScanner + ClamAV + SpamAssassin + Postfix, existem diversas formas de implementar uma solução para filtragem de emails, mas a minha preferência é configurar um servidor (virtual ou não) separado para esta função, principalmente devido ao fato do processo de filtragem consumir uma boa parte de recursos do hardware em servidores mais movimentados. Outra grande vantagem deste método, é que ele é compatível com qualquer serviço de email (zimbra, exchange, groupwise, etc….).

    Neste post vou explicar como montar um servidor para filtrar todo o seu tráfego de emails, realizando a remoção do “lixo eletrônico” antes de entregar as mensagens para o seu servidor principal de emails.

    Partindo de uma instalação mínima do CentOS 5.3, remova o “sendmail”
    # yum remove sendmail
    Instale o postfix + serviços necessários
    # yum install postfix mysql-server php-mysql php-gd  httpd gcc spamassassin patch rpm-build

    Instalando o clamAV:
    Baixe os pacotes RPM do clamav em: http://packages.sw.be/clamav/ e instale com o comando:
    # rpm -ivh clam*
    Preparing...       ############ [100%]
    1:clamav-db        ############ [100%]
    2:clamav           ############ [100%]
    3:clamav-devel     ############ [100%]
    4:clamd            ############ [100%]

    Instalando o Mailscanner:
    Faça o download do tar.gz contendo os pacotes RPM
    # wget http://www.mailscanner.info/files/4/rpm/MailScanner-4.XX.XX-X.rpm.tar.gz
    # tar xvfz MailScanner-4.XX.XX-X.rpm.tar.gz
    # cd MailScanner-4.XX.XX-X
    # ./install.sh

    Agora edite o arquivo /etc/MailScanner/MailScanner.conf
    %org-name% = Nome da Empresa
    %org-long-name% = Nome completo da empresa
    Run As User = postfix
    Run As Group = postfix
    Incoming Queue Dir = /var/spool/postfix/hold
    Outgoing Queue Dir = /var/spool/postfix/incoming
    MTA = postfix
    Virus Scanners = clamd
    Clamd Socket = /tmp/clamd.socket
    Use SpamAssassin = yes
    SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin

    Instalando o Mailwatch:
    Faça o download da última versão “stable” do mailwatch em http://mailwatch.sourceforge.net
    Descompacte o pacote de instalação e entre no diretório mailwatch-1.0.X
    # mysql -u root < create.sql

    Crie o usuário mailwatch no mysql com permissões completas na base mailscanner
    # mysql -u root
    > GRANT ALL ON mailscanner.* TO mailwatch@localhost IDENTIFIED BY 'minhasupersenha';
    > GRANT FILE ON *.* TO mailwatch@localhost IDENTIFIED BY 'minhasupersenha';

    Edite o arquivo MailWatch.pm e ajuste os parâmetros db_user e db_pass de acordo com o usuário e senha criados.
    my($db_user) = 'mailwatch';
    my($db_pass) = 'minhasupersenha';

    Agora copie o arquivo MailWatch.pm para o CustomFunctions do MailScanner
    # cp MailWatch.pm /usr/lib/MailScanner/MailScanner/CustomFunctions

    Criando um usuário para o MailWatch (este é o usuário com permissões de administrador, após criar este usuário, os outros podem ser geridos através da interface Web):
    # mysql mailscanner -u mailwatch -p
    Enter password: ******
    > INSERT INTO users (username, password, fullname, type) VALUES ('admin',md5('senhasegura'),'Administrator','A');

    Movendo a interface web do Mailwatch para o root dir do apache:
    # mv mailscanner/ /var/www/html/

    Ajustando permissões:
    # cd /var/www/html/mailscanner/
    # chown root:apache images
    # chmod ug+rwx images
    # chown root:apache images/cache
    # chmod ug+rwx images/cache

    Crie o arquivo conf.php com base no conf.php.example
    # cp conf.php.example conf.php
    Agora edite o conf.php e ajuste os campos: DB_USER e DB_PASS.

    Integrando o MailScanner e o Mailwatch
    Pare o MailScanner
    # service MailScanner stop

    Edite o arquivo /etc/MailScanner/MailScanner.conf e verifique se estas opções estão ajustadas

    Always Looked Up Last = &MailWatchLogging
    Detailed Spam Report = yes
    Quarantine Whole Message = yes
    Quarantine Whole Message As Queue Files = no
    Include Scores In SpamAssassin Report = yes
    Quarantine User = root
    Quarantine Group = apache (this should be the same group as your web server)
    Quarantine Permissions = 0660

    Opcionalmente (para facilitar o debug)
    Always Include SpamAssassin Report = yes

    Para integrar Whitelist/Blacklist ao mailwatch:
    Edite o arquivo SQLBlackWhiteList.pm
    Procure pela função “CreateList” e nela defina as informações da sua base de dados.
    my($db_name) = 'mailscanner';
    my($db_host) = 'localhost';
    my($db_user) = 'mailwatch';
    my($db_pass) = 'minhasupersenha';

    # cp SQLBlackWhiteList.pm /usr/lib/MailScanner/MailScanner/CustomFunctions

    Agora vamos configurar o postfix para fazer relay das mensagens do domínio:

    Edite o arquivo /etc/postfix/main.cf
    relay_domains = exemplo.com.br

    Agora edite /etc/postfix/transport e insira
    exemplo.com.br       smtp:172.22.10.93
    Execute:
    # postmap /etc/postfix/transport

    Estas duas últimas configurações farão com que o postfix permita o relay de mensagens do domínio exemplo.com.br
    Já o Transport, irá informar para o postfix que as entregas para o domínio exemplo.com.br devem ser no ip 172.22.10.93

    Após realizar testes (muito importante para um ambiente de produção), edite a zona de DNS do seu domínio, e altere a sua entrada MX de forma que aponte para o filtro de emails (e não para o seu mailserver). Desta forma todas as mensagens enviadas para exemplo.com.br cairão no sistema de filtragem e se estiverem limpas serão encaminhadas para o seu servidor de emails.

    Para acessar o Mailwatch: http://ip_do_mailwatch/mailscanner

    Dia Internacional do Administrador de Sistemas

    thank-468x60

    Um sysadmin desembalou o servidor de uma caixa para hospedar este site, instalou um sistema operacional, aplicou correções de segurança, verificou as condições elétricas e de refrigeração da sala onde está este servidor, monitorou-o para mantê-lo estável, configurou uma aplicação, e mantém backups em caso de qualquer problema. Tudo isso para servir está página.

    Um sysadmin instalou os roteadores, fixou os cabos, configurou as redes, configurou o firewall, e assistiu e orientou o tráfego para cada salto da rede que corre ao longo do cobre, fibra óptica, e até o ar para trazer a Internet para seu computador. Tudo para ter certeza de que o site encontrou o caminho a partir do seu computador até o servidor e vice-versa.

    Um sysadmin assegura que à sua rede é segura, acessível e funcional. Um sysadmin garante que o seu computador está trabalhando de maneira saudável em uma rede saudável. Um administrador de sistema tem backups para proteger contra desastres humanos e de outros tipos, detém os portões contra as ameaças à segurança, e mantém as impressoras funcionando, não importa quantas cópias você queira.

    Um administrador de sistema se preocupa com spam, vírus, spyware, e ainda com incêndios e inundações.

    Quando o servidor de arquivos ou de e-mail cai as 2h da madrugada de um domingo, o seu sysadmin é acionado, acorda, e vai ao trabalho.

    Então se você consegue ler isto, agradeça ao seu bom e velho administrador de sistema ou sysadmin – sei que ele ou ela é apenas uma das dezenas ou centenas de pessoas, cujo trabalho traz-lhe o e-mail de cada dia, a mensagem instantânea de seu filho, a ligação telefônica sem custo e esta página.

    Copiado na integra de: http://www.sysadminday.com.br que por sua vez foi traduzido de http://www.sysadminday.com :P

    orgplgs-468x60

    Ninguém (que não seja da área), sabe ou entende o que realmente fazemos e pelo que passamos, os feitos heróicos, as migrações complexas e as soluções mirabolantes que na grande maioria das vezes passam despercebidas para 99.9% das pessoas…

    Parabéns a todos os Administradores de Sistemas que frequentam este blog e que diariamente vestem a sua roupa de Super homem para ir trabalhar!

    Galeria de fotos do Dia Internacional do Administrador de Sistemas:

    Links Sugeridos:

    Gift Ideas (e porquê não?) :P

    Sysadwhat? What Does a System Administrator Do?

    Blog Pessoal: Reserva dos Elefantes e Aniversário de Salamanca

    Reserva dos Elefantes

    Neste sabado que passou, participei de uma “expedição” à Reserva dos Elefantes, que fica ao Sul de Maputo, no caminho da Ponta do Ouro.

    O ponto de encontro da expedição foi as 04:30 da manhã na fila do batelão que atravessa para Catembe. O objetivo era de pegar a primeira travessia do dia, para aproveitar o sabado ao máximo.

    Após chegarmos em Catembe, seguimos caminho para a Reserva chegando perto das 7h da manhã (depois de algumas paradas é claro).
    Observando HipopótamosNa foto acima, sou eu tentando me esconder no meio da vegetação a apenas alguns metros da manada de hipos.
    Ir para o post Reserva dos Elefantes

    Aniversário de Salamanca

    Multidão em Salamanca
    Salamanca é um pequeno município que fica ao Sul de Maputo. No sábado passado, quando estávamos retornonando da Reserva dos Elefantes, nos deparamos com um grande grupo de pessoas próximo ao rio que passa ao lado do município…..
    AVISO: O Conteúdo deste post pode ser considerado forte para algumas pessoas, para continuar lendo, clique no link abaixo
    Ir para o post Aniversário de Salamanca

    Migrating from b2evolution 2.X to Wordpress

    This is just a translation to English (and reduced version) from my original original post “Migrando do b2evolution 2.x para o Wordpress” (Portuguese version)

    I migrated my 2 blogs based on b2evolution 2.4.6 to Wordpress 2.8.1 using this method. It should also work for version 2.4.7 (not tested, feedback appreciated), but I’m not sure if it will work for version 3!

    After searching all over the Internet, I found this script at this topic on wordpress.org forum, and since the developer bodum said that he is not going to support this script, I made a backup at import-b2evolution-wp2.php.zip
    Note that this script is designed to use an old version of wordpress (2.0.4) I strongly recommend to use this version and them upgrade to latest! I had some issues trying to migrate straight from b2evolution 2.4.6 to wordpress 2.8.1.

    Important things to note before migrating:

    - Post dates aren’t correctly migrated, the script will get the dates from the “last modified” field, you have 2 options: Fix the script by yourself or just fix the dates on the wordpress panel after the migration.
    - Tags aren’t migrated at all.
    - The link structure is a bit different on 2 blog engines, you can fix this using the Redirection plugin mentioned at the end of this post.
    - I don’t take any responsibility for any data loss during this process!!!
    - Make all your backups before starting the migration (database and b2evolution folder)

    Migrating in 10 easy steps ;)
    1- Remove all the files from the b2evolution folder, cleaning space for your wordpress install.
    2- Upload wordpress “2.0.4″ to the blog folder
    3- Install Wordpress on the same database used by b2evolution
    4- Verify if wordpress was correctly installed and proceed to login using /wp-admin
    5- Copy the file import-b2evolution-wp2.php to wp-admin/import-b2evolution-wp2.php
    6- Access the import script using http://exemplo.com/wp-admin/import-b2evolution-wp2.php
    7- The script will ask you database information, wich blog to import, and some more information (i had issues importing linkblog so I just skipped this)
    8- Click on Submit and start praying. Now you should verify the output of the script and check if you see any import errors.
    9- Access your fresh (and outdated) wordpress blog, verify if all posts and comments are there. If you see any invalid characters, don’t worry, it will be fixed during the upgrade process.
    10- Now you should upgrade Wordpress 2.0.4 to the latest version (2.8.1 atm), this is fair simple: Just remove all the files from your wordpress folder and upload the latest Wordpress version to this folder. Then you should access http://exemplo.com/wp-admin/upgrade.php (After creating the new configuration file, run the upgrade script again to upgrade your database structure).

    That’s it, b2evolution 2.4.6 migrated to Wordpress 2.8.1 :)

    To fix any broken links you can use the “Redirection plugin” avilable at Urbangiraffe and wordpress.org
    The good thing about this plugin, is that it doesn’t use .htaccess and you dont really need to full understand mod_rewrite from apache. This plugin also keeps a log of all the 404 errors helping you to trackdown broken links.

    If you need any help during the migration process, post on the comments field and I will try to help you.