PDF de programación - Guia breve sendmail

Imágen de pdf Guia breve sendmail

Guia breve sendmailgráfica de visualizaciones

Actualizado el 24 de Febrero del 2020 (Publicado el 15 de Abril del 2017)
601 visualizaciones desde el 15 de Abril del 2017
132,2 KB
20 paginas
Creado hace 22a (27/02/2002)
Guía Sendmail
V0.20 - 27/02/2002

Diego Bravo Estrada

Esta es una guía para utilizar Sendmail poniendo énfasis en
la implementación de configuraciones frecuentes. Ha sido de-
sarrollada asumiendo el sistema operativo Linux RedHat 7.1;
sin embargo, debe ser útil en cualquier otro sistema operati-
vo compatible. Se asume que el lector tiene conocimientos de
redes TCP/IP y del sistema DNS.

Tabla de contenidos

1. Introducción ............................................................................. 3
2. Paquetes de Sendmail ............................................................. 3
3. El archivo de configuración de Sendmail .............................. 4
4. Un caso real.............................................................................. 8
5. Recepción de mensajes ........................................................ 11
6. Configurando el MUA............................................................. 11
7. Activación de Relay para las estaciones ............................. 14
8. Un ambiente de alta seguridad ............................................. 15

1. Introducción

Sendmail es un programa que proporciona el servicio de correo
electrónico en sistemas Linux (y Unix.) Entre sus objetivos de dise-
ño destaca un gran poder de configuración - casi ilimitado - capaz
de procesar mensajes de email en prácticamente cualquier tipo de
red.
Sin embargo, esta cualidad ha resultado en una complejidad abru-
madora para los no expertos, lo que ha motivado a que su manejo
resulte en un tema oscuro y algo místico. En esta guía trataremos
de mostrar cómo conseguir algunos resultados útiles con Sendmail,
sin necesidad de zambullirnos en sus profundidades.
Para mayor información, el lector debe visitar el site de Sendmail
(http://www.sendmail.org). Para quien desea comprender a fondo
todas sus posibilidades y complejidades, es de rigor leer el libro:

COSTALES, Bryan
1993

Sendmail. 2da ed. O’Reilly
& Associates, Inc. USA.
ISBN: 1-56592-222-0

2. Paquetes de Sendmail

La gran mayoría de usuarios no tiene necesidad de descargar Send-
mail puesto que suele distribuirse en prácticamente todos los siste-
mas Linux y Unix. Sin embargo, las actualizaciones - importantes
por cuestiones de seguridad - deben obtenerse regularmente del
vendedor o distribuidor, o del site de Sendmail (http://www.sendmail.org).
Centrándome en RedHat 7.1 (en otras versiones debe haber algo
equivalente), Sendmail se distribuye en tres paquetes, a saber:

• sendmail-cf
• sendmail
• sendmail-doc
Lo cual se puede verificar con el siguiente comando:

# rpm -qa|grep sendmail
sendmail-cf-8.11.2-14
sendmail-8.11.2-14
sendmail-doc-8.11.2-14

Los directorios donde se guardan los archivos de Sendmail varían
de sistema en sistema, por lo que Ud. debe intentar averiguar esto
si no usa Linux RedHat 7.1. Asumimos que Ud. sabe como instalar
los paquetes RPM.

3

Guía Sendmail

Ud. necesitará además el paquete de preprocesamiento "m4", cu-
ya instalación se puede verificar con:

# rpm -q m4
m4-1.4.1-4

(los números pueden variar.) M4 se distribuye en prácticamente to-
dos los sistemas Linux/Unix.

3. El archivo de configuración de Sendmail

Sendmail emplea un gran archivo de configuración llamado /etc/sendmail.cf
para prácticamente todo lo que realiza. Este archivo puede hacer
referencia a otros archivos de configuración como veremos más
adelante.
Este archivo sólo contiene texto, por lo que Ud. puede intentar leerlo
con un editor de texto como vi. Su sintaxis es extraña y su extensión
es considerable, al punto de que existe un "sistema" de generación
del archivo /etc/sendmail.cf con miras a evitar la manipulación
directa del mismo, cosa que veremos a continuación.

3.1. Generación del archivo "cf"

Veremos ahora cómo generar de manera automática el archivo "cf"
(/etc/sendmail.cf.) Antes de proseguir, sugiero haga una copia
de respaldo del mismo:

# cp /etc/sendmail.cf /etc/sendmail.backup

Ahora ubique el directorio "de configuración" sendmail-cf o cf,
que en mi caso es /usr/share/sendmail-cf:

# cd /usr/share/sendmail-cf

Nota: Si Ud. no lo encuentra, consulte los archivos de sus paquetes,
o pruebe alguno de los siguientes comandos:

# find / -name sendmail-cf -print

# find / -name cf -print

En este directorio, Ud. debería encontrar algo como:

# ls /usr/share/sendmail-cf
cf domain feature hack m4 mailer ostype README sh site-
config

El archivo README es una fuente de información bastante concisa,
aunque algo confusa. Muchos aspectos de esta guía se detallan
en éste, por lo que puede servir de complemento. Ahora Ud. debe
entrar al subdirectorio "cf":

4

Guía Sendmail

# cd /usr/share/sendmail-cf/cf

Aquí Ud. deberá encontrar una gran cantidad de archivos con ex-
tensión "mc" (entre otros.) En mi caso:

# ls
Build
chez.cs.mc
clientproto.mc
cs-hpux10.mc
cs-hpux9.mc
cs-osf1.mc
cs-solaris2.mc
cs-sunos4.1.mc
cs-ultrix4.mc
cyrusproto.mc
generic-osf1.mc
generic-solaris2.cf python.cs.mc
redhat.mc
tcpproto.mc
uucpproto.mc
#

s2k-osf1.mc
ucbarpa.mc
vangogh.cs.mc

generic-bsd4.4.mc
generic-hpux10.cf
generic-hpux10.mc
generic-hpux9.cf
generic-hpux9.mc
generic-linux.cf
generic-linux.mc
generic-nextstep3.3.cf mail.cs.mc
generic-nextstep3.3.mc mail.eecs.mc
generic-osf1.cf
Makefile

generic-solaris2.mc
generic-sunos4.1.cf
generic-sunos4.1.mc
generic-ultrix4.cf
generic-ultrix4.mc
huginn.cs.mc
knecht.mc

mailspool.cs.mc
generic-bsd4.4.cf
redhat.cf
s2k-ultrix4.mc
ucbvax.mc

El procediiento normal consiste aquí en ubicar (mediante los nom-
bres de los archivos) aquél que se acerque más a nuestro sistema,
y usarlo como base o plantilla para nuestra instalación (ver siguinte
sección.) RedHat ha creado el archivo redhat.mc que está prác-
ticamente listo para la generación del archivo /etc/sendmail.cf.
Como es usual, haremos una copia para hacer cambios más ade-
lante:

# cp redhat.mc prueba.mc

Y regeneraremos el archivo "cf" mediante el siguiente comando:

# m4 prueba.mc > /etc/sendmail.cf

Esto debería generar un archivo prácicamente identico al original.

3.2. Sistemas distintos a RedHat

Ud. debería buscar el archivo "mc" usado para generar el "cf" de
su sistema. Si no existe, entonces Ud. deberá construir un archivo
"mc" ’desde cero’, para lo cual cree un archivo llamado prueba.mc
con el siguiente contenido (mínimo y probablemente inútil):

include(‘../m4/cf.m4’)
OSTYPE(hpux10)dnl
MAILER(local)dnl
MAILER(smtp)dnl

La directiva OSTYPE requiere que Ud. especifique su versión de
sistema operativo (en el ejemplo, HP/UX V.10.) Para ver los siste-

5

Guía Sendmail

mas disponibles, vea el directorio sendmail-cf/ostype o cf/ostype.
En mi caso:

# ls ../ostype/
aix2.m4
aix3.m4
aix4.m4
aix5.m4
altos.m4
amdahl-uts.m4
aux.m4
bsd4.3.m4
bsd4.4.m4
bsdi1.0.m4

irix4.m4
irix5.m4
irix6.m4
isc4.1.m4

bsdi2.0.m4
bsdi.m4
darwin.m4
dgux.m4
domainos.m4 linux.m4
dynix3.2.m4 maxion.m4
gnu.m4
hpux10.m4
hpux11.m4
hpux9.m4

mklinux.m4
nextstep.m4 solaris2.m4
openbsd.m4
osf1.m4

solaris2.ml.m4
solaris2.pre5.m4

powerux.m4
ptx2.m4
qnx.m4
riscos4.5.m4
sco3.2.m4
sco-uw-2.1.m4
sinix.m4

so
su
su
sv
ul
un
un
ux

Todo esto requiere que se trabaje en el subdirectorio sendmail-
cf/cf o cf/cf. A continuación, ejecutar m4:

# m4 prueba.mc > /etc/sendmail.cf

3.3. Inicio de Sendmail

Una vez que se ha modificado el archivo de configuración de Send-
mail, Ud. debería iniciar este programa (o reiniciarlo, si fuera el ca-
so.) Los detalles de cómo hacer esto varían de sistema en sistema,
puesto que Sendmail normalmente se inicia en forma automática
mediante los scripts de arranque del sistema operativo. En el caso
de RedHat 7.1, Ud. puede usar:

# service sendmail start

Si Sendmail ya estuviera en ejecución Ud. debería usar por el con-
trario:

# service sendmail restart

En otros sistemas, el comando necesario podría ser como sigue:

# /etc/rc.d/init.d/sendmail start

o

# /etc/init.d/sendmail start

o

# /sbin/init.d/sendmail start

Y para detenerlo, reemplazar el "start" por un "stop".

6

Guía Sendmail

Es conveniente verificar el inicio de Sendmail en el log del sistema.
Nuevamente, los detalles varían de sistema en sistema. En RedHat:

# tail -f /var/log/maillog

Este comando queda en suspenso esperando a que ingresen más
mensajes al log de correo electrónico. En otros sistemas Ud. po-
dría tener que modificar "mailog" por "messages". Para más infor-
mación, ver el archivo /etc/syslog.conf.
En mi caso, cuando se inicia Sendmail, obtengo los siguientes men-
sajes:

# tail -f /var/log/maillog
Feb 24 21:11:22 hari sendmail[1027]: alias database /etc/ali
Feb 24 21:11:23 hari sendmail[1027]: /etc/aliases: 40 aliase
Feb 24 21:11:24 hari sendmail[1037]: starting daemon (8.11.2

Los detalles pueden cambiar. Es muy conveniente que Ud. cuente
con el log de email en un terminal para lo que veremos más ade-
lante.
Es recomendable además que Ud. verifique que Sendmail realmen-
te está "escuchando" en el puerto 25 de TCP/IP (smtp) mediante el
comando netstat. La sintaxis exacta varía con el sistema. En mi
caso:

# netstat -a -inet
[root@hari mail]# netstat -a -inet
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address
tcp
TEN

Foreign Address
*:*

0

0 *:smtp

State
LIS-

(sólo he presentado la línea que nos interesa.)

3.4. Desactivación de "DaemonPortOptions" en RedHat

Aparentemente, por cuestiones de "seguridad", la versión 7.1 de
RedHat ha configurado Sendmail de modo que no acepte conexio-
nes desde el exterior. Esto lo hace un sistema bastante inutil, por lo
que debemos modificar esto antes de empezar. Para esto, nuestro
archivo prueba.mc (copia de redhat.mc) debe ser modificado.
Edítelo y comente (o elimine) la siguiente línea:

DAEMON_OPTIONS(‘Port=smtp,Addr=127.0.0.1, Name=MTA’)

Para convertirla en comentario (sino desea eliminarla) use "dnl":

dnl DAEMON_OPTIONS(‘Port=smtp,Addr=127.0.0.1, Name=MTA’)

Luego regenere el archivo "cf":

7

Guía Sendmail

# m4 prueba.mc > /etc/sendmail.cf

Y vuelva a reiniciar Sendmail.

4. Un caso real

En lo que sigue, prepararemos a Sen
  • Links de descarga
http://lwp-l.com/pdf2880

Comentarios de: Guia breve sendmail (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad