O local certo para se aprender Linux no Brasil, a sua fonte de artigos, dicas, tutoriais, noticias, howto, reviews e muito mais.

Instalando e configurando o servidor de e-mail qmail

Arquivado em Artigos <> E-Mail Server
Instalando e configurando o servidor de e-mail qmail
Aprendendo como configurar o qmail como servidor de e-mail no sistema operacional linux, esse passo a passo busca facilitar a instalação.

O artigo a seguir lista os passos para instalar e configurar o servidor de e-mail qmail, passo a passo.

1. Introdução

O qmail é um dos mais seguros, rápidos e confiáveis servidores de e-mail disponíveis hoje no mercado.

Infelizmente, entre suas características, não está a facilidade de instalação. Vamos tentar aqui amenizar o sofrimento que é instalar um server qmail com um mini-howto em português bem claro e objetivo.

1.1 Requisitos

Um sistema Unix, preferencialmente ligado ao projeto GNU de alguma forma. Já implementei o Qmail em Linux (Conectiva, Debian e SuSE), FreeBSD e OpenBSD com sucesso e poucas modificações nas sintaxes dos comandos. Mostrarei a sintaxe dos comandos para o Linux, mas se você usa outro sistema, provavelmente conhece a sintaxe dele e poderá adaptar os comandos facilmente.
Em algumas etapas a instalação pode parecer muito confusa.... E realmente é.
Tenha fé e vá em frente.

2. Instalando o Qmail

O Qmail tem uma licença um tanto quanto restritiva, o que impede que ele seja distribuído em formato binnário (rpm, por exemplo). Por isso precisamos baixar o código fonte e compilá-lo.
Você precisará dos seguintes arquivos inicialmente:

* qmail, ftp://cr.yp.to/software/qmail-1.03.tar.gz
* ucspi-tcp, ftp://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
* daemontools, ftp://cr.yp.to/daemontools/daemontools-0.76.tar.gz

2.1 Procedimento (todos os passos abaixo deverão ser executados como root)

Caso você tenha o wget instalado na sua máquina:

cd /usr/src/
mkdir qmail; cd qmail
wget ftp://cr.yp.to/software/qmail-1.03.tar.gz
wget ftp://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
wget ftp://cr.yp.to/daemontools/daemontools-0.76.tar.gz

Antes de iniciar a instalação, é preciso criar alguns grupos e usuários na máquina:

groupadd nofiles
useradd -g nofiles -d /var/qmail/alias alias -s /bin/false
useradd -g nofiles -d /var/qmail qmaild -s /bin/false
useradd -g nofiles -d /var/qmail qmaill -s /bin/false
useradd -g nofiles -d /var/qmail qmailp -s /bin/false
groupadd qmail
useradd -g qmail -d /var/qmail qmailq -s /bin/false
useradd -g qmail -d /var/qmail qmailr -s /bin/false
useradd -g qmail -d /var/qmail qmails -s /bin/false
groupadd vchkpw
useradd -g vchkpw -d /var/qmail/vpopmail vpopmail

Vamos agora descompactar os sources e iniciar a instalação:

tar zxvf qmail-1.03.tar.gz
cd qmail-1.03
make setup check
./config-fast nome.do.seu.servidor

Pronto! Qmail instalado! Mas vamos com calma! Ainda não dá para rodar dessa forma...

2.2 Instalando o ucspi-tcp

cd /usr/src/qmail/
tar zxvf ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
make
make setup check

2.3 Instalando o daemontools

cd /usr/src/qmail
tar zxvf daemontools-0.76.tar.gz
cd admin/daemontools-0.76
sh package/install


2.4. Modificando arquivos e permissões

Para o perfeito funcionamento junto ao vpopmail+mysql que estamos propondo, precisamos utilizar a estrutura de Maildir, ao invés da Mailbox (padrão)

2.5 /var/qmail/rc

cd /var/qmail
cp boot/home rc

Edite o arquivo rc e troque a palavra Mailbox por Maildir (IMPORTANTE: o "M" é maiúsculo)

Dê permissão de execução ao arquivo rc

chmod +x rc


2.6 Scripts de inicialização e arquivos de LOG

É importante que todos os arquivos e diretórios sejam criados com todo cuidado, ou nada irá funcionar.

mkdir -p /var/qmail/supervise/qmail-send/log
mkdir -p /var/qmail/supervise/qmail-smtpd/log

Arquivo /var/qmail/supervise/qmail-send/run com conteúdo:

#!/bin/sh
exec /var/qmail/rc

Arquivo /var/qmail/supervise/qmail-send/log/run com conteúdo:

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail

Arquivo /var/qmail/supervise/qmail-smtpd/run com conteúdo:

#!/bin/sh
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
LOCAL=`head -1 /var/qmail/control/me`
if [ -z "$QMAILDUID" -o -z "$NOFILESGID" -o -z "$MAXSMTPD" -o -z "$LOCAL" ]; then
echo QMAILDUID, NOFILESGID, MAXSMTPD, or LOCAL is unset in
echo /var/qmail/supervise/qmail-smtpd/run
exit 1
fi
exec /usr/local/bin/softlimit -m 2000000
/usr/local/bin/tcpserver -v -R -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD"
-u "$QMAILDUID" -g "$NOFILESGID" 0 smtp /var/qmail/bin/qmail-smtpd 2>&1

Criando configuração de conexões concorrentes. Altere de acordo com suas
necessidades.

echo 20 > /var/qmail/control/concurrencyincoming
chmod 644 /var/qmail/control/concurrencyincoming

Arquivo /var/qmail/supervise/qmail-smtpd/log/run com conteúdo:

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/smtpd

Dando as permissões corretas:

chmod 755 /var/qmail/supervise/qmail-send/run
chmod 755 /var/qmail/supervise/qmail-send/log/run
chmod 755 /var/qmail/supervise/qmail-smtpd/run
chmod 755 /var/qmail/supervise/qmail-smtpd/log/run

Criando diretórios de LOG:

mkdir -p /var/log/qmail/smtpd
chown qmaill /var/log/qmail /var/log/qmail/smtpd
ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service

Liberando o relay definitivo para localhost (RECOMENDADO):

echo '127.:allow,RELAYCLIENT=""' >>/etc/tcp.smtp

2.7 O Script qmailctl

Existem muitas operações que podem ser feitas com o qmail. Para facilitar a nossa vida, o site Life With Qmail nos disponibiliza um script muito útil, chamado qmailctl.

cd /var/qmail/bin
wget http://www.linuxman.pro.br/qmail/qmailctl
chmod +x qmailctl

2.8 Referências

Life With Qmail [http://www.lifewithqmail.org/lwq.html]
Qmail.org [http://www.qmail.org]
Página do autor do qmail [http://cr.yp.to]

3. Instalando o vpopmail

Como pretendemos instalar o vpopmail com suporte a banco de dados mysql, vou assumir que você já tem um server sql rodando e configurado, não sendo abordada aqui a instalação do mesmo.

3.1 Criando usuário no mysql

mysql> grant all on vpopmail.* to vmail@nome.do.seu.server identified by 'sua-senha';
mysql> flush privileges


cd /usr/src/qmail
wget http://www.inter7.com/vpopmail/vpopmail-5.2.1.tar.gz
tar zxvf vpopmail-5.2.1.tar.gz
cd vpopmail-5.2.1
mkdir -p /var/qmail/vpopmail/etc

Edite o arquivo vmysql.h substituindo:

#define MYSQL_UPDATE_SERVER "localhost"
#define MYSQL_UPDATE_USER "root"
#define MYSQL_UPDATE_PASSWD "secret"

#define MYSQL_READ_SERVER "localhost"
#define MYSQL_READ_USER "root"
#define MYSQL_READ_PASSWD "secret"

por:

#define MYSQL_UPDATE_SERVER "seu-server-mysql"
#define MYSQL_UPDATE_USER "vmail"
#define MYSQL_UPDATE_PASSWD "sua-senha"

#define MYSQL_READ_SERVER "seu-server-mysql"
#define MYSQL_READ_USER "vmail"
#define MYSQL_READ_PASSWD "sua-senha"

3.2 Configurando o Makefile

Nesse passo é muito importante você conhecer o seu sistema, visto que algumas libs e includes precisarão ser referenciadas (em NEGRITO):

./configure --enable-relay-clear-minutes=180
--enable-vpopuser=vpopmail --enable-vpopgroup=vchkpw
--enable-tcpserver-file=/etc/tcp.smtp
--enable-sqllibdir=LIBMYSQL --enable-passwd=y
--enable-qmaildir=/var/qmail
--enable-admin-email=admin@seu.dominio
--enable-tcprules-prog=`which tcprules`
--enable-auth-logging=y --enable-logging=y
--enable-sqwebmail-pass=y --enable-default-domain=seu.dominio
--enable-mysql=y --enable-roaming-users=y
--enable-deliver-filter=y --enable-defaultquota=10485760
--enable-large-site=n --enable-clear-passwd=n
--enable-sqlincdir=INCLUDEMYSQL

Compilando:

make
make install-strip

3.3 Arquivo de inicialização do vpopmail

cd /var/qmail

Arquivo pop com o conteúdo:

/usr/local/bin/tcpserver 0 110
/var/qmail/bin/qmail-popup nome.do.seu.server /var/qmail/vpopmail/bin/vchkpw
/var/qmail/bin/qmail-pop3d Maildir >/dev/null &

Esse arquivo deve ser iniciado no seu run-level padrão. coloque-o na inicialização da forma que achar mais simples.

4. Finalizando

Algumas considerações finais:

- A instalação descrita nesse tutorial é a mais simples possível, sendo que existe uma farta documentação sobre qmail na internet. Nem sempre as coisas são muito claras, por isso tentei ajudar com mais esse tutorial.

- O Daemontools deve ser iniciado no boot, por isso depois de tudo instalado é necessáro dar um reboot na máquina

- Boa sorte!

Esse texto é de autoria de Eri Ramos Bastos

Envie seu comentário
 
 
Copyright © Sputnix.com.br, Seja Livre, Use Linux