PASSO 1 (REMOVER SE TIVER INSTALADO O SENDMAIL).
Primeira coisa que devemos fazer é remover o arquivo de
configuração. RECOMENDO FAZER UM BACKUP antes de apagar
qualquer coisa. Lembrando que eu estou seguindo esses passos
me baseando no SLACKWARE (no 10.0, mas já fiz isso no 9.1).
$ rm -r /etc/mail/sendmail.cf
PASSO 2 (Instalação e configuração dos softwares necessários)
A seguir estão passo-a-passo a instalação dos softwares, recomendo seguir essa ordem, pois foi testada desse jeito.
1 - Instalando o Clamav, o clamav para quem não sabe é um ótimo antivírus:
$ cd /pkg
$ installpkg clamav-0.75.1-i486-1jim.tgz
2 - Descomprimindo o Cyrus-Sasl, ele que é responsável pela autenticação do SMTP:
$ cd /pkg
$ tar zxfpv cyrus-sasl-1.5.28.tar.gz
3 - Descomprimindo o Sendmail:
$ cd /pkg
$ installpkg sendmail-sasl-8.13.1-i486-2jim.tgz
4 - instalando cyrus-sasl:
$ cd /pkg
$ cd cyrus-sasl-1.5.28
$ ./configure --enable-login
$ make
$ make install
(a linha abaixo é necessária para leitura de bibliotecas do sasl pelo sendmail)
$ ln -s /usr/local/lib/*sasl* /usr/lib/
5 - Configurando o sasl:
$ cd /usr/lib/sasl
$ pico Sendmail.conf (isso mesmo, S com letra maiúscula)
Agora insira no arquivo Sendmail.conf a seguinte linha:
pwcheck_method: shadow
Não se esqueça que a distância entre o ":" e a palavra shadow é um TAB.
6 - Instalando e configurando o Sendmail:
$ cd /pkg/sendmail-8.13.1/
$ cd devtools/Site
$ pico site.config.m4
Dentro do arquivo site.config.m4, insira as seguintes linhas e salve o arquivo:
define(`confSTDIO_TYPE', `portable')
APPENDDEF(`confENVDEF', `-DSASL')
APPENDDEF(`conf_sendmail_LIBS', `-lsasl')
APPENDDEF(`confLIBDIRS', `-L/usr/lib/sasl')
APPENDDEF(`confINCDIRS', `-I/usr/local/include')
APPENDDEF(`conf_sendmail_ENVDEF', `-DMILTER')
Você já criou o site.config.m4, agora vamos ao próximo arquivo:
$ cd /pkg/sendmail-8.13.1/cf/cf/
$ pico sendmail.mc
Agora, colarei todas as linhas do sendmail.mc, incluindo a utilização do SpamCop. Segue o conteúdo do sendmail.mc:
divert(-1)
#
# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers.
# All rights reserved.
# Copyright (c) 1983 Eric P. Allman. All rights reserved.
# Copyright (c) 1988, 1993
# The Regents of the University of California. All rights reserved.
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the sendmail distribution.
#
#
#
# This is a generic configuration file for Linux.
# It has support for local and SMTP mail only. If you want to
# customize it, copy it to a name appropriate for your environment
# and do the modifications there.
#
divert(0)dnl
VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $')
OSTYPE(linux)dnl
DOMAIN(generic)dnl
define(`confAUTH_MECHANISMS', `LOGIN DIGEST-MD5 CRAM-MD5 PLAIN')
TRUST_AUTH_MECH(`LOGIN DIGEST-MD5 CRAM-MD5 PLAIN')
define(`confAUTH_OPTIONS',`A')
FEATURE(`virtusertable')dnl
FEATURE(`access_db')dnl
FEATURE(`redirect')dnl
FEATURE(`dnsbl', `bl.spamcop.net', `"Spam blocked see: http://spamcop.net/bl.shtml?"$&{client_addr}')dnl
FEATURE(`accept_unresolvable_domains')dnl
MAILER(local)dnl
MAILER(smtp)dnl
define(`confALIAS_WAIT', `0')dnl
INPUT_MAIL_FILTER(`clmilter',`S=local:/var/run/clamav-milter/milter.sock,F=, T=S:4m;R:4m')dnl
define(`confINPUT_MAIL_FILTERS', `clmilter')
Dentro desse mesmo diretório (/pkg/sendmail-8.13.1/cf/cf/) digite os seguinte comandos:
$ ./Build install-cf
$ cd ../..
$ ./Build all
$ ./Build install
7 - Colocando o clamav para startar no BOOT:
Pronto. Seu sendmail está configurado e instalado. Agora temos que
configurar o rc.local para que o servidor do clamav
execute automaticamente quando bootarmos a máquina, pois o
sendmail precisa dele rodando para checar os vírus.
$ pico /etc/rc.d/rc.local
Inclua a seguinte linha no arquivo:
/etc/rc.d/rc.clamav start
OBS: se você não está startando o sendmail no boot, não precisa rodar o servidor do clamav no boot também. Basta você digitar o comando abaixo sempre antes de iniciar o sendmail:
$ /etc/rc.d/rc.clamav start
e depois o sendmail:
$ /etc/rc.d/rc.sendmail start