26.6. Conceptos Avanzados

La siguiente sección trata conceptos más específicos relacionados con la configuración del correo y la implantación del servicio de correo en una organización.

26.6.1. Configuración Básica

Por defecto debemos ser capaces de enviar correo a máquinas externas, siempre y cuando tengamos nuestro /etc/resolv.conf bien configurado o ejecutemos nuestro propio servidor de nombres. Si queremos que el correo para nuestra máquina se nos entregue en nuestra propia máquina, es decir, a nuestro propio sendmail, en lugar de tener que ir a recogerlo al servidor de correo de nuestra organización, podemos usar dos métodos:

Independientemente de la opción elegida para tener entrega directa en nuestra máquina debemos poseer una dirección IP estática (a diferencia de las direcciones dinámicas, que son utilizadas en configuraciones donde se utiliza el protocolo PPP). Si nos encontramos detrás de un cortafuegos se debe permitir el tráfico SMTP (puerto 25) hacia nuestra máquina. Si además queremos recibir correo directamente en nuestra máquina se deben cumplir los siguientes requisitos:

Cumpliendo las dos puntualizaciones anteriores podemos recibir correo electrónico mediante entrega directa en nuestra máquina.

Por ejemplo:

# hostname
ejemplo.FreeBSD.org
# host ejemplo.FreeBSD.org
ejemplo.FreeBSD.org has address 204.216.27.XX

Si se observa esta configuración la entrega directa de correo para debería funcionar sin problemas (suponiendo que sendmail se está ejecutando correctamente en ejemplo.FreeBSD.org).

Si en lugar de lo anterior ve algo como esto:

# host ejemplo.FreeBSD.org
ejemplo.FreeBSD.org has address 204.216.27.XX
ejemplo.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.org

Todos los correos enviados a nuestro host (ejemplo.FreeBSD.org) serán recogidos por hub bajo el mismo nombre de usuario en lugar de ser enviados directamente a nuestra máquina.

La información anterior se gestiona utilizando el servidor de DNS. El registro de DNS que transporta la información de encaminamiento de correo eletrónico es el registro Mail eXchange. Si no existe ningún registro MX el correo se entregará a la dirección IP que se obtenga de resolver el nombre de dominio que se encuentre a continuación del nombre de usuario en la dirección de correo de destino (esto es, (después de la @).

En un cierto momento la entrada MX para freefall.FreeBSD.org tenía este aspecto:

freefall       MX  30  mail.crl.net
freefall        MX  40  agora.rdrop.com
freefall        MX  10  freefall.FreeBSD.org
freefall        MX  20  who.cdrom.com

Como se puede observar, freefall tenía varias entradas MX. El número de MX más bajo es la máquina que recibe correo directamente si se encuentra disponible; si dicha máquina no está accesible por algún motivo las otras máquinas (llamadas también “MXs de backup”) aceptarán los mensajes temporalmente, y los transmitirán de nuevo cuando alguna máquina perteneciente a alguna entrada MX de numeración más baja se encuentre disponible y el proceso se repetirá hasta que se alcance la máquina que tenga el registro MX más bajo.

Las organizaciones donde residen los servidores (MX) de backup deberían poseer acceso a internet de una forma independiente para minimizar el riesgo de pérdida de conectividad. Nuestro ISP o cualquier otra organización independiente debería poder proporcionarnos este servicio sin problemas.

26.6.2. Correo para Nuestro Dominio

Para establecer un “mailhost” (servidor de correo) en nuestra organización debemos ser capaces de redirigir el correo destinado a cualquier máquina de nuestra organización hacia nuestro servidor de correo. Básicamente queremos “reclamar” como nuestro cualquier correo destinado a cualquier máquina de nuestro dominio (en este caso *.FreeBSD.org) y desviarlo a nuestro servidor de tal forma que los usuario lean su correo utilizando nuestra máquina servidora.

Para hacer las cosas lo más sencillas posible se debe crear una cuenta de usuario (con el mismo nombre de usuario) tanto en el servidor de correo como en la máquina del usuario o destinatario final del correo. adduser(8) puede usarse para ello.

El servidor de correo debe funcionar como el agente de transporte predeterminado para todas las máquinas de nuestra organización. Esto se realiza mediante la siguiente configuración del DNS:

ejemplo.FreeBSD.org    A   204.216.27.XX       ; Workstation
            MX  10 hub.FreeBSD.org  ; Mailhost

Esta configuración redirigirá el correo para cualquier estación de trabajo hacia nuestro servidor de correo sin que tengan importancia las direcciones IP asignadas mediante el registro de tipo A. Recordemos que el correo siempre se encamina utilizando primero los registros de tipo MX.

Normalmente no podremos realizar esta configuración salvo que estemos ejecutando nuestro propio servidor de DNS para nuestro dominio. Si no es el caso y no es posible ejecutar nuestro propio servidor de DNS debemos comunicarnos con nuestro proveedor de servicios o con quien pueda proporcionarnos servicio de DNS y solicitarle una modificación como la anterior.

Si además ofrecemos servicios de alojamiento virtual de correo la siguiente información puede resultar útil. Asumiremos que tenemos un cliente con su propio dominio, por ejemplo cliente1.org y queremos que todo el correo enviado a cliente1.org sea redirigido hasta nuestro servidor de correo, mail.nuestroservidor.com. La entrada necesaria en el DNS debería ser la siguiente:

cliente1.org       MX  10  mail.nuestroservidor.com

No necesitamos ningún registro de tipo A para cliente1.org si sólamente queremos gestionar el correo para ese dominio.

Nota: Tenga en cuenta que un ping a cliente1.org no funcionará a menos que exista un registro de tipo A para dicha máquina.

La última cosa que debemos realizar en nuestro servidor de correo es comunicar a sendmail para qué dominios y/o máquinas debe aceptar correo. Existen varias formas en las que se puede realizar esta tarea. Cualquiera de las siguiente funcionará:

Éste y otros documentos pueden obtenerse en ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Para preguntas acerca de FreeBSD, leer la documentación antes de contactar con la lista <questions@FreeBSD.org>.
Para preguntas acerca de esta documentación, e-mail a <doc@FreeBSD.org>.