Hogar Indice Busqueda Enlaces Sobre Nosotros
[Imagen de LinuxFocus]
[Barra de Navegacion]
  Noticias   Archivos   Compañias   Consejos  

Construyendo, instalando y configurando sendmail 8.8.x

por John E.Gotts


Se adjunta un parche para ../../common/March1998/Makefile.Linux que activa los warppers de TCP y hace otras pocas modificaciones inofensivas. Con los warppers TCP habilitados puedes poner restricciones al acceso remoto para el demonio sendmail de acuerdo con la página del manual hosts_access(5). (1) Suponiendo que lo has salvado como ../../common/March1998/sendmail.diff, aplicalo desde el directorio sendmail-8.8.x con:

patch -p0 < ../../common/March1998/sendmail.diff

Cambia al directorio src y ejecuta

./make sendmail

sendmail debería compilarse sin problemas.

A partir de ahora supondré que usas sólo el correo electrónico de TCP/IP. El soporte UUCP va más allá del ámbito de este documento.

Cambia al directorio cf/cf y crea un fichero nuevo, generic-linux2.mc:

divert(-1) 
divert(0)dnl
VERSIONID(`@(#)generic-linux2.mc 8.8 (Local) 11/22/97')
OSTYPE(linux)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl

Si quieres usar enmascaramiento, añade las dos líneas siguientes:

MASQUERADE_AS()dnl
EXPOSED_USER(root)dnl

Esto significa que todos los e-mail que se envíen desde tu máquina (excepto como root) tendrán como direccion de origen únicamente a tu máquina (sin extensión de dominio). Esta opción es útil para gente con conexiones de red intermitentes, i.e. usuarios de SLIP y PPP, y para máquinas que tienen asignadas direcciones IP dinámicamente a traves de BOOTP o DHCP. Para versiones de sendmail 8.8.8 y superiores, se puede eliminar la línea EXPOSED_USER(root) ya que éste es el comportamiento por defecto.

Si quieres usar procmail como lector de correo local (práctica estandar en Red Hat Linux), añade:

FEATURE(local_procmail)dnl

Transforma generic-linux2.mc al fichero sendmail.cf:

m4 ../m4/cf.m4 genreric-linux2.mc > obj/sendmail.cf

Necesitas descomentar

Cwlocalhost

en obj/sendmail.cf con un signo # como el que aparece para interrumpir el e-mail entrante en las nuevas distribuciones de Linux.

Guarda en un lugar seguro el fichero original /etc/sendmail.cf e instala obj/sendmail.cf en su lugar:

install -m 644 -o 0 -g 0 obj/sendmail.cf /etc/sendmail.cf

Después de que hayas instalado tu nuevo sendmail.cf, mata el demonio sendmail, cambia al directorio src, y ejecuta:

cd obj.Linux.*.* ; make install
		    

Esto instalará el sendmail binario y los enlaces simbólicos. Necesitarás instalar los manuales como ayuda.

Si no has optado por usar procmail, cambia al directorio raiz de sendmail y teclea:

uudecode contrib/mail.local.linux 
mv mail.local mail.local.old
tar zxvf mail.local.linux.tar.Z
cd mail.local
gcc -03 -o mail.local mail.local.c
strip mail.local
install -m 2711 -o 0 -g mail mail.local /bin
install -m 644 -o 0 -g 0 mail.local.8 /usr/man/man8
		    

Tu directorio /var/spool/mail necesita estar en modo 775, propiedad del usuario root y grupo de mail. Tus clientes de mail necesitan tener SGID mail (modo 2711, propietario el usuario root y grupo de mail).

Ahora deberías reinicializar tu demonio sendmail. El mio comienza así:

/usr/sbin/sendmail -bg -q1h
		    

NOTA: Red Hat arranca sendmail sin su path completo. Esto puede acarrear problemas tales como impedir que se le envia la senal SIGHUP a sendmail (esta señal indica a sendmail que vuelva a leer el fichero de configuración). Para arreglar esto, asegurate que /etc/rc.d/init.d/sendmail.init ejecuta sendmail como /usr/sbin/sendmail (con los mismos argumentos).

Si tienes una conexión intermitente, puedes querer ejecutar sendmail en modo diferido:

/usr/sbin/sendmail -bd -o DeliveryMode=d
		    

al rearrancar e invoca sendmail como:

/usr/sbin/sendmail -q
		    

para entregar todo el e-mail diferido cuando te conectes la primera vez a la red y periódicamente mientras estas conectado (quizás como un trabajo cron).

En este punto, deberías testear tu nueva instalación de sendmail. Aquí tienes una forma de hacerlo:

%telnet localhost smtp
Trying 127.0.0.1... 
Connected to localhost.
Escape character is '^]'.
220 ESMTP Sendmail 8.8.8/8.8.8; Fri, 22 Nov 1997 03:21:18 -0500
hello localhost
250 Hello jgotts@localhost [127.0.0.1], pleased to meet you 
mail from: jgotts 
250 jgotts... Sender ok 
rcpt to: jgotts 
250 jgotts... Recipient ok 
data 
354 Enter mail, end with "." on a line by itself 
This is a test. 
.
250 DAA23297 Message accepted for delivery
		    

Asegurate también de verificar que tus clientes de e-mail todavía funcionan y que aun puedes recibir mail desde el mundo exterior.

Notas al pie:
(1)El soporte de warppers TCP no funciona en 8.8.8. Para parchearlo ver http://www-personal.engin.umich.edu/~jgotts/linux/sendmail-8.8.8-tcp-wrappers-patch
Mientras lo haces, puedes poner también: http://www-personal.engin.umich.edu/~jgotts/linux/sendmail-8.8.8-core-dump-patch


Traducido por Elisa Acosta Muñoz

Para más información:
© 1998 John E.Gotts
Páginas web mantenidas por Miguel A Sepulveda.