[Fedora-users-br] Fwd: Administrar Qmail no Fedora

Cristiano Furtado jasonnfedora em gmail.com
Seg Dez 26 10:50:06 UTC 2005


Só copiei e colei, acho que isso ae vai servir para você, como ja serviu
para vários outros.

Se você precisa de um servidor rápido, seguro, com anti-virus gratuido,
anti-span e politicas anti-relay, SPF (DNS), autenticação de smtp etc os
pacotes QMAILTOASTER são tudo que precisa.

 Com o QMAILTOASTER tudo isso é possível e tudo com painel de controle para
o administrador e para o cliente via WEB.

 Nesse artigo mostrarei como instalar e configurar todos os pacotes da linha
TOASTER e explicar os arquivos de configuração.

 Para esse tutorial todas as distros baseadas em source RPM são suportadas.
Para instalar vou exemplificar como eu faço no FEDORA FC4 mas segue abaixo
as flags para instalação de quaquer distro RPM.

 Distro Flag
--------------------------------------
Mandrake 9.0 Linux mdk90
Mandrake 9.1 Linux mdk91
Mandrake 10.0 Linux mdk100
Mandrake 10.1 Linux mdk101
Mandriva 2005 Linux mdk102
Red Hat 9 Linux rht90
Fedora Core 1 Linux fdr10
Fedora Core 2 Linux fdr20
Fedora Core 3 Linux fdr30
Fedora Core 4 Linux fdr40
CentOS 3 Linux rht90
CentOS 4 Linux cnt40
Trustix 2.0 Linux trx20

 Abaixo segue toda funcionalidade que seu servidor de e-mail terá após essa
instalação:

 SMTP with SMTP-AUTH, SpamThrottle, DNS, large concurrency
 SPF "Sender Policy Framework"
Integrated SpamAssassin, ClamAV and Simscan
Warlock virus and worm loader realtime scanning
CHKUSER 2.0 functions for qmail-smtpd
Qmail-Tap provides email archive capability
Virtual Domains (MySQL), Virtual Users (MySQL)
Autoresponder, Mailing List
Web-based email system, Web-based administration tools
SMTP roaming via SMTP-AUTH, POP3-AUTH, & IMAP-AUTH
POP3, POP3-SSL, IMAP and IMAP-SSL

 Agora vamos iniciar.

 1) Instale sua distro
-(no meu caso FEDORA FC4).
-Escolha os pacotes de desenvolvimento.

 2) Use o yum, apt-get ou up2date para verificar as dependências
 -Verifique se todas as dependências estão instaladas (no meu caso uso yum):

 # yum -y install autoconf automake automake17 bzip2 bzip2-devel
compat-gcc-32 compat-gcc-32-c++ curl curl-devel expect expect-devel gcc
gcc-c++ gcc-java gdbm gdbm-devel gmp gmp-devel httpd httpd-devel
httpd-manual krb5-auth-dialog krb5-devel krb5-libs krb5-workstation libgcc
libidn libidn-devel mysql mysql-bench mysql-devel mysql-server mrtg ntp
openssl openssl-devel pcre perl-Digest-HMAC perl-Digest-SHA1 perl-Net-DNS
perl-Time-HiRes php php-ldap php-mysql php-pear rpm-build rpm-devel rpm-libs
rpm-python sed setup setuptool spamassassin stunnel system-config-date which


 OBS: Caso alguma dependencia falhe não continue a instalação até ela estar
instalada.

3) Remova os pacotes de e-mail que não vamos utilizar:
 # yum -y remove sendmail evolution postfix

4) Baixe os pacotes que irão ser instalados em http://www.qmailtoaster.com/:
 Baixe os seguintes pacotes todos no mesmo diretório:

zlib
daemontools-toaster
ucspi-tcp-toaster
vpopmail-toaster
qmail-toaster
courier-imap-toaster
autorespond-toaster
control-panel-toaster
ezmlm-toaster
qmailmrtg-toaster
isoqlog-toaster
qmailadmin-toaster
vqadmin-toaster
maildrop-toaster
spamassassin-toaster
clamav-toaster
simscan-toaster

 5) Verifique todas as dependências a seguir antes de começar a instalação:
- Se for FEDORA 2, 3, 4 ou CENTOS:
# ln -s /usr/include/et/com_err.h /usr/include/

- Crie a conta administrativa do MYSQL
 # mysqladmin -u root password suasenha
 # mysqladmin -u root -p reload
# mysqladmin -u root -p refresh

 - Verifique se tem zlib instalado e qual a versão dele (a versão tem que
ser igual ou superior a 1.2.2.2)
 # rpm -q zlib

 se não tiver instale ou atualize do diretório que vc baixou
 # rpm -Uvh zlib*.rpm

 -Tire com o ntsysv todos os serviços desnecessários, deixe somente mysqld,
httpd, syslogd etc, enfim os padrões.

 6) Vamos começar a instalar os pacotes.
-Não se esqueçam todos os pacotes precisam ser instalados NESSA EXATA ORDEM!
 - Vá ao diretório onde você baixou os rpms:

 # cd /diretorio-rpms-qmail/


Agora teremos que recompilar cada pacote para transforma-lo de source
src.rpm para rpm.

 Usaremos "rpmbuild --rebuild --with (distro) pacote" onde no lugar da
(distro) você vai substituir pela flag de sua distro que está na tabela do
topo deste tutorial.

Na instalação abaixo estou tomando por padrão o Fedora FC4.

 -Instalar DAEMONTOOLS

 -Compilando
 # rpmbuild --rebuild --with fdr40 daemontools*.src.rpm

 -Instalando
# rpm -Uvh /usr/src/redhat/RPMS/i386/daemontools*.rpm

 -Instalar UCSPI

 # rpmbuild --rebuild --with fdr40 ucspi*.src.rpm
# rpm -Uvh /usr/src/redhat/RPMS/i386/ucspi*.rpm

 -Instalar VPOPMAIL

 # rpmbuild --rebuild --with fdr40 vpopmail*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/vpopmail*.rpm

 -Após a instalação do VPOPMAIL precisamos criar alguns parâmetros e bases
para ele:
# mysqladmin create vpopmail -u root -p
# mysqladmin -u root -p reload
# mysqladmin -u root -p refresh

 Edite o arquivo /home/vpopmail/etc/vpopmail.mysql e altere a senha
SsEeCcRrEeTt para a senha que você desejar para o vpopmail.

"Não deixe a senha padrão por motivos de segurança"

 Crie um usuário no mysql para o vpopmail acessar sua base:

 # echo "GRANT ALL PRIVILEGES ON vpopmail.* TO vpopmail em localhost IDENTIFIED
BY 'senha_que_voce_criou'" | mysql -u root -p
# mysqladmin -u root -p reload
# mysqladmin -u root -p refresh

 -Instalar QMAIL
 # rpmbuild --rebuild --with fdr40 qmail*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/qmail*.rpm

 -Instalar COURIER-IMAP
 # rpmbuild --rebuild --with fdr40 courier*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/courier*.rpm

 -Instalar AUTORESPOND
 # rpmbuild --rebuild --with fdr40 autorespond*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/autorespond*.rpm

 -Instalar CONTROL-PANEL
 # rpmbuild --rebuild --with fdr40 control-panel*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/noarch/control-*
# rpm -Uvh /usr/src/redhat/RPMS/noarch/send-*

 OBS: Veja que nessa compilação os pacotes vão para outra pasta "noarch" ao
invés de "i386"

 -Instalar EZMLM
 # rpmbuild --rebuild --with fdr40 ezmlm*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/ezmlm*.rpm

 -Instalar QMAILMRTG
 # rpmbuild --rebuild --with fdr40 qmailmrtg*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/qmailmrtg*.rpm

 -Instalar ISOQLOG
 # rpmbuild --rebuild --with fdr40 isoqlog*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/isoqlog*.rpm

 -Instalar QMAILADMIN
 # rpmbuild --rebuild --with fdr40 qmailadmin*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/qmailadmin*.rpm

 -Instalar VQADMIN
 # rpmbuild --rebuild --with fdr40 vqadmin*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/vqadmin*.rpm

 -Instalar MAILDROP
 # rpmbuild --rebuild --with fdr40 maildrop*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/maildrop*.rpm

 -Instalar SPAMASSASSIN
 # rpmbuild --rebuild --with fdr40 spamassassin*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/spamassassin*.rpm

 -Instalar CLAMAV
 # rpmbuild --rebuild --with fdr40 clamav*.src.rpm
# rpm -Uvh /usr/src/redhat/RPMS/i386/clamav*.rpm

 -Instalar SIMSCAN
 # rpmbuild --rebuild --with fdr40 simscan*.src.rpm
 # rpm -Uvh /usr/src/redhat/RPMS/i386/simscan*.rpm

 7) Iniciando tudo!
 Se você seguiu a risca todos os passos acima, após a instalação completa
reinicie seu servidor e tudo estará no ar já!

8) Arquivos de configuração importantes!
 -No caso de erros:

Erro enviando e-mail via web-client verifique o log
/var/log/qmail/send/current
 Erro enviando e-mail via email-client verifique o log
/var/log/qmail/smtp/current
Erro recebendo e-mail via imap verifique o log /var/log/qmail/imap/current
Erro recebendo e-mail via imap-ssl verifique o log
/var/log/qmail/imap-ssl/current
Erro recebendo e-mail via pop3 verifique o log /var/log/qmail/pop3/current
Erro recebendo e-mail via pop3-ssl verifique o log
/var/log/qmail/pop3-ssl/current

 -Altere os arquivos /var/qmail/alias/.qmail-root
/var/qmail/alias/.qmail-mailer-daemon /var/qmail/alias/.qmail-postmaster

coloque o email do administrador do servidor precedido de & ficando assim:

&
<&%3Cscript%20language=%27JavaScript%27%20type=%27text/javascript%27%3E%20%3C%21--%20var%20prefix%20=%20%27ma%27%20+%20%27il%27%20+%20%27to%27;%20var%20path%20=%20%27hr%27%20+%20%27ef%27%20+%20%27=%27;%20var%20addy14104%20=%20%27admin%27%20+%20%27@%27%20+%20%27server%27%20+%20%27.%27%20+%20%27com%27%20+%20%27.%27%20+%20%27br%27;%20document.write%28%20%27%3Ca%20%27%20+%20path%20+%20%27%5C%27%27%20+%20prefix%20+%20%27:%27%20+%20addy14104%20+%20%27%5C%27%3E%27%20%29;%20document.write%28%20addy14104%20%29;%20document.write%28%20%27%3C%5C/a%3E%27%20%29;%20//--%3E%20%3C/script%3E%20%3Cnoscript%3E%20Este%20endere%C3%A7o%20de%20e-mail%20est%C3%A1%20sendo%20protegido%20de%20spam,%20voc%C3%AA%20precisa%20de%20Javascript%20habilitado%20para%20v%C3%AA-lo%3C/noscript%3E>
admin em server.com.br Este endereço de e-mail está sendo protegido de spam,
você precisa de Javascript habilitado para vê-lo

 -Foram configurados 2 serviços, o de inicialização e controle do QMAIL e o
de inicialização e controle do FRESHCLAM que atualiza seu anti-virus
periodicamente.

 Use:

 # service qmail start
(para iniciar)

 # service qmail stop
(para parar)

 # service qmail stat
(para verificar se está rodando)

 # service freshclamd start
(para iniciar o atualizador do anti-virus)

 # service freshclamd stop
(para parar o atualizador do anti-virus)

Comandos alternativos ao SERVICE podem ser utilizados da mesma maneira:

 qmailctl
 fclamctl

9) Configurações WEB:
 Você agora pode criar domínios, contas de e-mail e verificar logs de
utilização do servidor via mrtg e logs de quantidade de e-mails e fila via
painel de controle:

 http://www.servidor.com.br/admin-toaster/

 OBS: Não esqueça da "/" barra no final.

 Entre com:
 usuário: admin
 senha: toaster

 Altere a senha!

 10) Firewall!
 -Vamos fazer um firewall agora para permitir acesso somente as portas
necessárias!

 Crie um arquivo chamado "configfirewall.sh"

 Edite o conteúdo e coloque:

 ############################### INICIO DO ARQUIVO - CORTE E COLE O INTERIOR


#!/bin/sh

 iptables -F
iptables -Z

 iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

 iptables -A INPUT -i eth0 -f -j DROP

iptables -A INPUT -m state --state NEW -j REJECT

 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

 iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p udp -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED -j
ACCEPT

 ## BLOQUEIA IPS INVÁLIDOS NA INTERFACE LO
iptables -A INPUT -s 127.0.0.0/8 -i ! lo -j DROP
iptables -A INPUT -s 10.0.0.0/8 -i ! lo -j DROP
iptables -A INPUT -s 192.168.0.0/16 -i ! lo -j DROP
iptables -A INPUT -s 224.0.0.0/4 -i ! lo -j DROP
iptables -A INPUT -s 0.0.0.0/8 -i ! lo -j DROP
iptables -A INPUT -s 255.255.255.255 -i ! lo -j DROP
iptables -A INPUT -s 169.254.0.0/16 -i ! lo -j DROP

 iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

 ## ACEITA PING
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

 ## ACEITA ssh (porta 22)
iptables -A INPUT -p tcp -m tcp --syn --dport 22 -j ACCEPT

 ## ACEITA PORTAS PARA O SERVIÇO DE E-MAIL
iptables -A INPUT -p tcp -m tcp --syn --dport 25 -j ACCEPT
iptables -A INPUT -p udp -m udp -s 0/0 --dport 53 -d 0/0 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -s 0/0 --dport 53 -d 0/0 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 110 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 143 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 443 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 465 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 783 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 993 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --syn --dport 995 -j ACCEPT

 ## SALVA CONFIGURAÇÕES NO SERVIÇO IPTABLES
service iptables save

 ############################### FIM DO ARQUIVO

 -Após criar o script rode ele
 # sh configfirewall.sh

 -Para deixar o firewall ativo agora, ligue com o ntsysv o serviço IPTABLES.

 Pronto!! Seu firewall já está rodando!

 11) Conclusão
 Agora você tem um servidor de e-mails completo com suporte a autenticação
smtp, anti-virus atualizado, anti-spam, firewall, etc.
 12) FONTES
QmailToaster - http://www.qmailtoaster.com/

Qualquer dúvida coloco meu e-mail para explicações!
kablubr em gmail.com Este endereço de e-mail está sendo protegido de spam, você
precisa de Javascript habilitado para vê-lo

 Até mais galera!

Kablu
Analista de Tecnologias

Em 26/12/05, Eustaquio Vieira <eustaquiomv em gmail.com> escreveu:
>
>
>
> Pessoal Bom Dia a Todos,
>
> Onde trabalho recebi esta semana a informacao que os 5 dominios nossos
> sairao de um provedor em SP para nossa Matriz em Betim-MG.
>
> Até ja instalaram um link de 2Mb oticos com ips fixos para a hospedagem e
> estão me enviando um Servidor com Fedora 4 e instalado o Qmail.
>
> É o seguinte, até hoje só trabalhei com Squid, Samba nunca trabalhei com
> hospedagem de emails e dominios (Qmail), então só tenho teoria.
>
> Instalação do Qmail ja encontrei alguns materiais, mas administração achei
> pouco material. Fiquei com algumas duvidas tambem quanto a troca dos ips
> para reposta a Fapesp e colocação deste novo server, hoje recebo o link
> otico em um dhcp e compartilho com iptables para os usuarios, onde entraria
> o Qmail ?
>
> Alguns de vcs teriam tutoriais, apostilas se possivel em portugues, e
> poderiam me enviar, toda ajuda será bem vinda.
>
> Antecipo agradecimentos,
>
> Eustaquio Martins
>
>
>
> --
> Fedora-users-br mailing list
> Fedora-users-br em redhat.com
> https://www.redhat.com/mailman/listinfo/fedora-users-br
>
>
>


--
Teledata Soluções integradas em Comunicação
Administrador de Sistemas Linux
Salvador - Bahia
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listman.redhat.com/archives/fedora-users-br/attachments/20051226/7d83850a/attachment.htm>


Mais detalhes sobre a lista de discussão Fedora-users-br