Solução completa de serviço de correio baseado em software livre (Debian GNU/Linux)
Recompilação do artigo "Postfix-2 + domínios virtuais + MySQL + SASL + PostfixAdmin", de autoria do Sr. Marco A. S. Máximo. Nesse novo artigo os passos foram tomados levando em consideração os recursos do Debian e usando (sempre que possível) os pacotes dos repositórios oficiais.
Parte 5: Instalando o maildrop
- http://www.courier-mta.org/maildrop/ (LINK ATUALIZADO)
O Maildrop será responsável pela entrega propriamente dita da mensagem à sua respectiva caixa postal. Ele também fará o controle da cota de disco. Com o Maildrop você também poderá implementar algumas regras de filtragem.
A versão existente nos repositórios do Debian Sarge é a versão 1.5.3 e originalmente não vem compilada com suporte a MySQL, então faremos o download dos fontes com o comando:
# mkdir ~/maildrop
# cd ~/maildrop
# apt-get build-dep maildrop
# apt-get source maildrop
# cd maildrop-1.5.3/debian
Aqui precisaremos fazer uma alteração um pouco mais delicada, precisamos modificar o padrão com que o pacote é compilado. Edite o arquivo rules e procure a seguinte parte:
[ -f config.status ] || CPPFLAGS="$CFLAGS" ./configure --prefix=/usr
--mandir='${prefix}/share/man' --libexecdir='${prefix}/lib/maildrop'
--sysconfdir=/etc
--enable-use-dotlock=1 --enable-use-flock=1
--enable-sendmail=/usr/sbin/sendmail --enable-maildirquota
[ -f maildrop/maildrop ] || make
e altere para:
[ -f config.status ] || CPPFLAGS="$CFLAGS" ./configure --prefix=/usr
--mandir='${prefix}/share/man' --libexecdir='${prefix}/lib/maildrop'
--sysconfdir=/etc/maildrop
--enable-maildrop-uid=120
--enable-maildrop-gid=120
--enable-syslog=1
--enable-maildropmysql
--enable-use-dotlock=1 --enable-use-flock=1
--enable-sendmail=/usr/sbin/sendmail --enable-maildirquota
[ -f maildrop/maildrop ] || make
--mandir='${prefix}/share/man' --libexecdir='${prefix}/lib/maildrop'
--sysconfdir=/etc/maildrop
--enable-maildrop-uid=120
--enable-maildrop-gid=120
--enable-syslog=1
--enable-maildropmysql
--enable-use-dotlock=1 --enable-use-flock=1
--enable-sendmail=/usr/sbin/sendmail --enable-maildirquota
[ -f maildrop/maildrop ] || make
Depois de modificado, podemos compilar e gerar o .deb:
# cd ..
# dpkg-buildpackage -rfakeroot -uc -b
Depois disso iremos testar (antes de instalar o .deb gerado) se o Maildrop foi compilado com suporte a MySQL:
# maildrop/maildrop -v
maildrop 1.5.3 Copyright 1998-2003 Double Precision, Inc.
GDBM extensions enabled.
Maildir quota extension enabled.
Virtual user database via MySQL extension enabled.
This program is distributed under the terms of the GNU General Public
License. See COPYING for additional information.
Ótimo, nosso binário está com suporte a MySQL, agora vamos agora criar o diretório de configuração e copiar os arquivos de configuração do maildrop:
# mkdir /etc/maildrop
# cp maildropmysql.config /etc/
# cp maildir/quotawarnmsg /etc/maildrop/
Agora vamos instalar o .deb ;)
# cd ..
# dpkg -i maildrop_1.5.3-1.1_i386.deb
Selecting previously deselected package maildrop.
(Reading database ... 97308 files and directories currently installed.)
Unpacking maildrop (from maildrop_1.5.3-1.1_i386.deb) ...
Setting up maildrop (1.5.3-1.1) ...
Feito ;)
Configurando o maildrop:
Configure o Maildrop para acessar o MySQL. Edite o arquivo /etc/maildropmysql.conf:
# vim /etc/maildropmysql.config
hostname localhost port 3306 socket /var/run/mysqld/mysqld.sock database postfix dbuser maildrop dbpw xxxxx dbtable mailbox default_gidnumber 120 default_uidnumber 120 uid_field username uidnumber_field uid gidnumber_field gid maildir_field maildir homedirectory_field home quota_field quota mailstatus_field active where_clause ""
DICA: O maildrop possui um recurso de aviso de email para o usuário caso a sua caixa postal ultrapasse a porcentagem de utilização de um valor especificado. Nesse tutorial usarei o valor de 90% (explicado mais adiante).
Sendo assim, você pode personalizar a mensagem de aviso que o usuário irá receber, bastando para isso editar o arquivo /etc/maildrop/quotawarnmsg.
Configurações bem detalhadas... Com certeza vai facilitar a vida de muita gente.
Fica a sugestão para implementar um webmail...