Instalação Maia · 7 min read · Jan 15, 2026

Instalando o Maia Mailguard no Debian Lenny (Usuários/Domínios Virtuais com Postfix/MySQL) - Página 2

6 Teste de Configuração do Maia Mailguard

Agora execute

cd /var/lib/amavis/maia/scripts/  
./configtest.pl

Este script verifica se todos os módulos Perl necessários pelo amavisd-maia, SpamAssassin e os scripts de manutenção do Maia Mailguard estão instalados. Para mim, a saída foi a seguinte:

server1:/var/lib/amavis/maia/scripts# ./configtest.pl  
  
MAIA MAILGUARD CONFIGURATION TEST  
  
Este script verifica a presença de aplicações e módulos Perl  
requeridos pelo amavisd-maia, SpamAssassin e os scripts de manutenção  
do Maia Mailguard.  Os números das versões também são verificados, e  
se uma versão mais nova de um componente é recomendada,  
você deve considerar atualizar para pelo menos  
a versão mínima recomendada.  
  
Se você já configurou seu banco de dados do Maia Mailguard,  
o script também testará a conexão com esse banco de dados.  
  
Lembre-se também de executar o script configtest.php  
no seu servidor web para  
realizar testes semelhantes do seu ambiente web,  
PHP e PEAR.  
  
Aplicação/Módulo      Versão   Status  
========================================================================  
Perl                 :   5.10.0 : OK  
file(1)             :     4.26 : OK  
Archive::Tar       :     1.38 : OK  
Archive::Zip       :     1.18 : OK  
BerkeleyDB         :     0.34 : OK  
Compress::Zlib     :    2.012 : OK  
Convert::TNEF      :     0.17 : OK  
Convert::UUlib     :     1.11 : OK  
Crypt::Blowfish    :      N/A : NOT INSTALLED (o recurso de criptografia opcional do Maia Mailguard requer isso)  
Crypt::CBC         :      N/A : NOT INSTALLED (o recurso de criptografia opcional do Maia Mailguard requer isso)  
Crypt::OpenSSL::RSA :      N/A : NOT INSTALLED (o plugin DKIM opcional do SpamAssassin requer isso)  
Data::UUID         :      N/A : NOT INSTALLED (requerido pelo Maia Mailguard)  
DB_File            :  1.816_1 : OK  
DBD::mysql         :    4.007 : OK  
DBD::Pg           :      N/A : NOT INSTALLED (requerido se você usar PostgreSQL como seu banco de dados Maia Mailguard)  
DBI                :    1.605 : OK  
Digest::MD5       :  2.36_01 : OK  
Digest::SHA1      :     2.11 : OK  
File::Spec        :   3.2501 : OK  
HTML::Parser       :     3.56 : OK  
HTTP::Date         :    5.810 : OK  
IO::Stringy       :    2.110 : OK  
IO::Zlib          :     1.07 : OK  
IP::Country        :      N/A : NOT INSTALLED (o plugin RelayCountry opcional do SpamAssassin requer isso)  
LWP::UserAgent     :    5.813 : OK  
Mail::Address      :     2.03 : OK  
Mail::DKIM        :      N/A : NOT INSTALLED (o plugin DKIM opcional do SpamAssassin requer isso)  
Mail::Internet     :     2.03 : OK  
Mail::SpamAssassin :    3.2.5 : OK  
Mail::SPF::Query   :      N/A : NOT INSTALLED (o plugin SPF opcional do SpamAssassin requer isso)  
MIME::Base64       :  3.07_01 : OK  
MIME::Parser       :    5.427 : OK  
MIME::QuotedPrint  :     3.07 : OK  
Net::CIDR::Lite    :      N/A : NOT INSTALLED (o plugin SPF opcional do SpamAssassin requer isso)  
Net::Cmd           :     2.29 : OK  
Net::DNS           :     0.63 : OK  
Net::Server        :     0.97 : OK  
Net::SMTP          :     2.31 : OK  
Pod::Usage         :     1.35 : OK  
Template           :      N/A : NOT INSTALLED (requerido pelo Maia Mailguard)  
Time::HiRes        :   1.9711 : OK  
Unix::Syslog       :      1.1 : OK  
URI                :     1.35 : OK  
Text::CSV          :      N/A : NOT INSTALLED (requerido pelo maiadbtool.pl)  
  
Teste de DSN do Banco de Dados : PASSED  
  
    NOTA: Quando atualizar o Perl para a versão 5.10 ou  
planejando fazê-lo, por favor  
não se esqueça de adicionar uma flag /m ausente  
as expressões regulares em suas entradas AV existentes,  
como sugerido no arquivo de exemplo amavisd.conf.dist. O Perl 5.8  
não se importa com flags /m ausentes, mas  
com o perl 5.10 os resultados de um scanner de vírus  
podem não ser mais reconhecidos corretamente.  
server1:/var/lib/amavis/maia/scripts#

Como você pode ver, alguns módulos estão faltando. A maioria deles pode ser instalada via aptitude:

aptitude install libcrypt-blowfish-perl libcrypt-cbc-perl libcrypt-openssl-rsa-perl libmail-dkim-perl libmail-spf-query-perl libnet-cidr-lite-perl libtemplate-perl libtext-csv-perl

IP::Country e Data::UUID não estão disponíveis como pacotes do Debian Lenny, então devemos instalá-los usando o shell Perl:

perl -MCPAN -e shell
install IP::Country
install Data::UUID

Digite

q

para sair do shell Perl depois.

Execute

./configtest.pl

novamente - a saída agora deve ser a seguinte:

server1:/var/lib/amavis/maia/scripts# ./configtest.pl  
  
MAIA MAILGUARD CONFIGURATION TEST  
  
Este script verifica a presença de aplicações e módulos Perl  
requeridos pelo amavisd-maia, SpamAssassin e os scripts de manutenção  
do Maia Mailguard.  Os números das versões também são verificados, e  
se uma versão mais nova de um componente é recomendada,  
você deve considerar atualizar para pelo menos  
a versão mínima recomendada.  
  
Se você já configurou seu banco de dados do Maia Mailguard,  
o script também testará a conexão com esse banco de dados.  
  
Lembre-se também de executar o script configtest.php  
no seu servidor web para  
realizar testes semelhantes do seu ambiente web,  
PHP e PEAR.  
  
Aplicação/Módulo      Versão   Status  
========================================================================  
Perl                 :   5.10.0 : OK  
file(1)             :     4.26 : OK  
Archive::Tar       :     1.38 : OK  
Archive::Zip       :     1.18 : OK  
BerkeleyDB         :     0.34 : OK  
Compress::Zlib     :    2.012 : OK  
Convert::TNEF      :     0.17 : OK  
Convert::UUlib     :     1.11 : OK  
Crypt::Blowfish    :     2.10 : OK  
Crypt::CBC         :     2.29 : OK  
Crypt::OpenSSL::RSA :     0.25 : OK  
Data::UUID         :    1.215 : OK  
DB_File            :  1.816_1 : OK  
DBD::mysql         :    4.007 : OK  
DBD::Pg           :      N/A : NOT INSTALLED (requerido se você usar PostgreSQL como seu banco de dados Maia Mailguard)  
DBI                :    1.605 : OK  
Digest::MD5       :  2.36_01 : OK  
Digest::SHA1      :     2.11 : OK  
File::Spec        :   3.2501 : OK  
HTML::Parser       :     3.56 : OK  
HTTP::Date         :    5.810 : OK  
IO::Stringy       :    2.110 : OK  
IO::Zlib          :     1.07 : OK  
IP::Country        :     2.27 : OK  
LWP::UserAgent     :    5.813 : OK  
Mail::Address      :     2.03 : OK  
Mail::DKIM        :     0.32 : OK  
Mail::Internet     :     2.03 : OK  
Mail::SpamAssassin :    3.2.5 : OK  
Mail::SPF::Query   :  1.999.1 : OK  
MIME::Base64       :  3.07_01 : OK  
MIME::Parser       :    5.427 : OK  
MIME::QuotedPrint  :     3.07 : OK  
Net::CIDR::Lite    :     0.20 : OK  
Net::Cmd           :     2.29 : OK  
Net::DNS           :     0.63 : OK  
Net::Server        :     0.97 : OK  
Net::SMTP          :     2.31 : OK  
Pod::Usage         :     1.35 : OK  
Template           :     2.19 : OK  
Time::HiRes        :   1.9711 : OK  
Unix::Syslog       :      1.1 : OK  
URI                :     1.35 : OK  
Text::CSV          :     1.06 : OK  
  
Teste de DSN do Banco de Dados : PASSED  
  
    NOTA: Quando atualizar o Perl para a versão 5.10 ou  
planejando fazê-lo, por favor  
não se esqueça de adicionar uma flag /m ausente  
as expressões regulares em suas entradas AV existentes,  
como sugerido no arquivo de exemplo amavisd.conf.dist. O Perl 5.8  
 não se importa com flags /m ausentes, mas  
com o perl 5.10 os resultados de um scanner de vírus  
podem não ser mais reconhecidos corretamente.  
server1:/var/lib/amavis/maia/scripts#

Como estamos usando MySQL e não PostgreSQL, não precisamos do módulo DBD::Pg.

7 Carregando Regras do SpamAssassin

O Maia Mailguard precisa indexar todas as regras do SpamAssassin que você instalou em seu sistema. Isso pode ser feito da seguinte forma:

./load-sa-rules.pl --debug

Isso deve ser feito novamente sempre que suas regras do SpamAssassin forem atualizadas. Se você seguiu o tutorial de Usuários Virtuais e Domínios com Postfix, Courier, MySQL e SquirrelMail (Debian Lenny), você tem o seguinte trabalho cron em seu sistema:

23 4 */2 * * /usr/bin/sa-update --no-gpg &> /dev/null

Execute

crontab -e

para modificar esse trabalho cron para que fique da seguinte forma:

| 23 4 */2 * * /usr/bin/sa-update --no-gpg && /var/lib/amavis/maia/scripts/load-sa-rules.pl && /etc/init.d/amavis restart &> /dev/null |

8 Instalando a Interface Web do Maia Mailguard

Quero instalar a interface web do Maia em /var/www/maia para que possa ser acessada via http://www.example.com/maia (por favor, ajuste o caminho se seu diretório raiz for diferente de /var/www). Portanto, crio esse diretório agora e copio a interface web do Maia para ele:

mkdir /var/www/maia  
cp -pfr /usr/src/maia/1.0/php/* /var/www/maia/

Certos subdiretórios do diretório /var/www/maia/themes devem ser graváveis pelo usuário Apache. Isso pode ser alcançado da seguinte forma:

chgrp amavis /var/www/maia/themes/*/compiled  
chmod 775 /var/www/maia/themes/*/compiled  
gpasswd -a www-data amavis

A interface web do Maia usa o mecanismo de template Smarty, que pode ser instalado da seguinte forma:

aptitude install smarty
ln -s /usr/share/php/smarty/libs /usr/share/php/Smarty

Em seguida, renomeamos /var/www/maia/config.php.dist para /var/www/maia/config.php…

mv /var/www/maia/config.php.dist /var/www/maia/config.php

… e alteramos as seguintes configurações:

vi /var/www/maia/config.php

| [...] $maia_sql_dsn = "mysql://amavis:passwd@tcp(localhost:3306)/maia"; [...] $address_rewriting_type = 4; [...] // Selecione um método de autenticação de um dos seguintes: // // "pop3" - use um servidor POP3 para autenticar // "imap" - use um servidor IMAP para autenticar // "ldap" - use um servidor LDAP para autenticar // "exchange" - use um servidor Exchange para autenticar // "sql" - use um servidor de banco de dados SQL para autenticar // "internal" - use o banco de dados SQL interno do Maia para autenticar $auth_method = "pop3"; [...] |

Execute

chmod 0640 /var/www/maia/config.php  
chown root:www-data /var/www/maia/config.php

depois.

9 Testando sua Configuração PHP

Abra um navegador e vá para http://www.example.com/maia/admin/configtest.php. Esta página informa se todos os módulos PHP necessários estão instalados:

Se módulos estiverem faltando, você deve instalá-los agora. Eu tive que fazer o seguinte para instalar os módulos ausentes:

aptitude install php-pear
pear channel-update pear.php.net
pear install Mail_Mime  
pear install Mail_mimeDecode  
pear install Pager  
pear install Net_Socket  
pear install Net_SMTP  
pear install Auth_SASL  
pear install Net_IMAP  
pear install Net_POP3  
pear install Log  
pear install Image_Color  
pear install Image_Canvas-0.3.1  
pear install Image_Graph-0.7.2
cd /usr/share/php/Image/Graph/Plot/  
cp Pie.php Pie.php.original  
wget http://www.maiamailguard.org/maia/raw-attachment/ticket/326/Pie.php.patch  
patch -p0
pear install Numbers_Roman  
pear install Numbers_Words-0.16.1
pear channel-discover htmlpurifier.org  
pear install hp/HTMLPurifier
aptitude install php5-imap php5-ldap php5-mcrypt
/etc/init.d/apache2 restart

Agora recarregue http://www.example.com/maia/admin/configtest.php - todos os módulos necessários devem agora estar instalados:

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.