Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Al final me he animado a escribir este artculo, ya que en muchos proyectos me ha sido necesario poder disponer de una infraestructura de correo electrnico sencilla (POP3 y SMTP), para realizar pruebas bsicas de envo y recepcin de correo electrnico en un entorno de laboratorio. Al final, el envo y recepcin de correo resulta vital en Aplicaciones Web (o incluso otros tipos de aplicaciones), instalaciones de SharePoint, en SQL Server para automatizar envos de correo electrnico (ej: finalizacin de cargas en un Data Warehouse, Alertas, etc.), y en muchos casos ms, y la instalacin de una infraestructura de correo electrnico basada en Exchange Server es ms costosa, lo cual, hace que quede fuera de lugar en la construccin de un entorno de Laboratorio (salvo que sea un Laboratorio para una Migracin de Exchange, o algo as, claro ;-). El Servicio POP3 deberemos montarlo junto con el Servicio SMTP en la misma mquina(como hermanos, unidos de la mano ;-), es decir, ambos Servicios (SMTP y POP3) deben correr en la misma mquina. Al margen de esto, si lo deseamos podemos utilizar Servidores SMTP adicionales, de tal modo, que dichos Servicios SMTP podramos utilizarlos para el envo del correo electrnico saliente, y el Servicio SMTP montado en el Servidor POP3 slo para la recepcin de correo en los buzones del Servicio POP3, es decir:
Servidor POP3. Debe ejecuta POP3 y SMTP. El Servicio SMTP se utiliza slo para la recepcin local de correo electrnico. Servidor SMTP adicional (que podramos tener varios). Slo ejecuta SMTP, para el envo del correo electrnico saliente de nuestra organizacin, y para reenviar el correo local al Servidor POP3.
Visto esto, vamos a empezar con el procedimiento de instalacin, en este caso, realizado sobre una infraestructura de servidores Windows Server 2003 Enterprise R2 SP2, virtualizados sobre Virtual Server 2005 R2 SP1.
Control, disponible desde Start -> Control Panel -> Add or Remove Programs. Una vez aqu, click en Add/Remove Windows Programs. Seleccionar el componente Application Server, y seguidamente click en Details.
Seguidamente, click OK otra vez. Seleccionar el componente E-mail Services, y click Next.
En el dilogo Completing the Windows Components Wizard, click Finish. Realizados estos pasos, habremos conseguido instalar en la mquina los Servicios SMTP y POP3. En consecuencia, deberemos continuar con la configuracin de los mismos, que como mnimo implicar la creacin de un dominio de correo electrnico en el Servicio POP3, para seguidamente crear los buzones de correo POP3, y el correspondiente registro MX en DNS. Todo esto se describe en ms
detalle a continuacin.
Herramientas para Administrar los servicios SMTP y POP3 de Windows Server 2003
Antes de continuar, es importante presentar las herramientas administrativas bsicas que podemos utilizar para la Administracin de nuestra infraestructura bsica de correo.
Herramienta Administrativa Internet Information Services (IIS) Manager. Lo utilizaremos para administrar el Servicio SMTP de forma grfica. Herramienta Administrativa POP3 Service. Lo utilizaremos para administrar el Servicio POP3 de forma grfica. Winpop.exe. Administracin del Servicio POP3 por lnea de comandos. Web Interface for Remote Administration. Lo utilizaremos para administrar de forma grfica en formato Web, los servicios SMTP, POP3, FTP, WWW, etc., adems de ofrecer diversas utilidades varias (administrar usuarios y grupos locales, reiniciar el servidor, visualizar los Logs del sistema - Event Viewer, etc.). Herramienta Administrativa DNS. Lo utilizaremos para la creacin y administracin de registros DNS, especialmente de los registros MX de intercambio de correo (Mail eXchanger), as como los registros Alias (CNAME) y HOST necesarios. Herramienta Administrativa Active Directory Users and Computers (ADUC). Lo utilizaremos para realizar el alta de usuarios, a lo cuales, posteriormente les crearemos un buzn de correo electrnico en el Servicio POP3.
Tras esta primera comprobacin rutinaria, deberemos crear nuestro dominio de correo electrnico. Para ello, deberemos hacer click en la opcin New Domain, para seguidamente introducir el nombre DNS del dominio para el cual queremos configurar el Servicio POP3 (y en consecuencia, sus buzones). En mi caso, se trata del dominio mobile.local, un dominio de Directorio Activo sobre el cual tengo montado el laboratorio de pruebas con el que suelo trabajar con el porttil en clientes.
Pues ya est, fcil y sencillo (justo lo que yo quera). Ahora, tan slo queda empezar a crear los buzones de correo electrnico que necesitemos. En mi caso, el primer buzn de correo electrnico que necesito crear es el correspondiente al usuario administrador@mobile.local. Para ello, en el panel izquierdo, seleccionar el dominio de correo electrnico sobre el que se desean crear los buzones de correo, y seguidamente, click en la opcin Add Mailbox. En el campo Mailbox Name, especificaremos el nombre de la cuenta de usuario para la cual deseamos crear el buzn de correo, deseleccionando la opcin Create associated user for this mailbox, ya que dicho usuario ya existe en Directorio Activo.
El Servidor SMTP est montado en la misma mquina que el Servidor POP3, y se desea configurar para la recepcin de correos electrnicos entrantes. Este es el escenario ms sencillo de configurar, como veremos, pues por defecto, el Servicio SMTP ya sabr como realizar la entrega de correo electrnico entrante a los buzones POP3 locales. No ser necesario realizar ninguna tarea adicional para conseguir la recepcin de correo electrnico entrante en los buzones del Servicio POP3 local, excepto aadir el correspondiente registro MX en DNS (esta tarea la veremos ms adelante) si deseamos que nos puedan enviar correo desde otros servidores SMTP (recordar, que habitualmente, cualquier servidor SMTP suele consultar en DNS los registros MX de los dominios correspondientes a los correos electrnicos que necesita enviar o re-enviar). Si no necesitamos que nos reenven correos electrnicos desde otros servidores SMTP, entonces ni siquiera es necesario agregar el registro MX
El Servidor SMTP est montado en una mquina diferente al Servidor POP3, y queremos reenviar (relay) los correos al servidor POP3. En este caso, ser necesario especificar al Servicio SMTP que debe enviar el correo electrnico a otro Servidor, y cmo debe hacerlo. Tenemos principalmente dos formas de realizar esta configuracin (relay de SMTP): o Configurar el Servidor Virtual SMTP para hacer Relay. Por defecto, no es posible utilizar el Servicio SMTP para realizar Relay en IIS6, debiendo configurarlo para que pueda hacer Relay. Esto es un tema de seguridad, de hecho, para permitir realizar Relay deberemos configurar la autenticacin (los usuarios annimos no podrn realizar Relay, por seguridad ante spammers) o bien especificar qu mquina o mquinas clientes pueden realizar Relay (por IP, Subred, o sufijo DNS a travs de la resolucin inversa DNS). La principal ventaja de esta configuracin, es que el Servicio SMTP ser capazreenviar correo electrnico a cualquier dominio, para lo cual, el servidor SMTP debe ser capaz de resolver en DNS los registros MX del dominio destino, o bien, tener configurado un Smart Host (es decir, un servidor SMTP al que se enviar todo el correo electrnico).
o
Configurar Dominios Remotos para hacer Relay. Este mtodo permite especificar al Servicio SMTP la configuracin de Relay para un dominio en particular, pudiendo realizar el Relay en funcin de los registros MX de DNS, o bien, especificando explcitamente el servidor SMTP/POP3 al que se desea enviar los correos electrnicos del Dominio Remoto configurado. Esta configuracin tiene preferencia sobre la configuracin del Servidor Virtual SMTP.
A continuacin se describe la configuracin de Relay SMTP en IIS6, teniendo en cuenta, que este es un artculo introductorio, es decir, aqu no se pretende dar una leccin exhaustiva de sistemas de mensajera ni configuraciones avanzadas de SMTP en IIS6, slo dar unas pautas para ser capaz de poner en marcha y configurar SMTP en IIS6, entiendo qu es lo que estamos haciendo.
Por lo tanto, para poder realizar Relay de correo con el Servicio SMTP de IIS6, tendremos que:
Habilitar algn mtodo de autenticacin (Bsica o Windows Integrada), deshabilitando el acceso annimo. Esto se puede hacer desde el botn Authentication. Es importante, tener en cuenta que esto es as, porque por defecto est habilitada la opcin Allow all computers which successfully authenticate to relay, regardless of the list above de la restricciones de Relay (desde el botn Relay de la pestaa Access). Con dicha opcin marcada, si habilitamos algn mtodo de autenticacin, los usuarios autenticados podrn utilizar el servidor SMTP para hacer Relay de correo electrnico, con la excepcin del usuario administrator. Esto me sorprendi, ya que las pruebas que estuve haciendo no me funcionaban, y finalmente descubr que era debido a que estaba utilizando el usuario administrador. Por el contrario, utilizando otro usuario para conectar con el Servicio SMTP, aunque dicho usuario sea administrador del dominio de Directorio Activo, es posible autenticarse en el Servidor SMTP y realizar el envo de correo sin ningn problema. A continuacin se muestra un ejemplo de la configuracin de autenticacin del
Servicio SMTP.
Especificar qu mquinas pueden hacer Relay (Restricciones de Relay). La otra forma de permitir la realizacin de Relay en el SMTP del IIS6, es especificar qu mquinas pueden hacer Relay, configuracin que realizaremos a travs del botn Relay de la pestaa Access de las propiedades del Servidor Virtual SMTP. Es importante, tener en cuenta que por defecto, slo pueden realizar Relay de correo los equipos especificados (est marcada la opcin Only the list bellow), y los usuarios autenticados (est marcada la opcin Allow all computers which successfully authenticate to relay, regardless of the list above). En consecuencia, podemos agregar o quitar equipos de la lista (botones Add y Remove) teniendo en cuenta que es posible especificar los equipos como una direccin, una subred (direccin IP y mscara de red), o un nombre de dominio (requiere realizar una resolucin inversa en DNS). Recordemos, que mientras mantengamos activa la opcin Allow all computers which successfully authenticate to relay, regardless of the list above, aunque no agreguemos ningn equipo para permitirle acceso, los usuarios autenticados (si activamos algn mtodo de autenticacin) podrn realizar Relay. Del mismo modo, podemos permitir que cualquier equipo pueda hacer Relay, activando la opcin All except the list bellow, lo cual convertir nuestro servidor SMTP en un servidor SMTP annimo, algo muy arriesgado con la actualidad en lo que a ataques de SPAM se refiere.
Para continuar, se incluye una pantalla capturada del configuracin de restricciones de relay (Relay Restrictions).
dilogo
de
Como consecuencia de todo esto, parece recomendable habilitar algn mtodo de autenticacin en Servidor Virtual SMTP, deshabilitando el acceso annimo, y que los usuarios se autentiquen para el envo de correo saliente. De este modo, el envo de correo saliente se realizar a travs de DNS, resolviendo los registros MX (Mail eXchanger) para identificar el servidor al que enviar el correo saliente (en funcin del dominio de correo del destinatario), excepto que el dominio de correo del destinatario est configurado en el Servicio SMTP como un Dominio Remoto (esto lo vemos ms adelante). Sin embargo, en vez de realizar el envo de correo electrnico resolviendo los registros MX en DNS, es posible configurar el Servidor Virtual SMTP para reenviar todo el correo electrnico saliente a un Servidor SMTP determinado, al que denominaremos Smart Host. Esta configuracin la podemos realizar desde la pestaa Delivery de las propiedades del Servidor Virtual SMTP en el IIS Manager.
En la pestaa Delivery, deberemos acceder a la configuracin Advanced Delivery, a travs del botn Advanced, en donde podremos especificar el servidor que deseamos utilizar como Smart Host (si no deseamos utilizar ningn servidor como Smart Host, dejar esta casilla en blanco). Recordar, que es posible activar la opcin Attempt direct delivery befote sending to smart host, de tal modo que se intente primero la entrega directa de correo saliente a travs de DNS (resolviendo los registros MX de los dominios de correo de los destinatarios), y si no es posible, se utilice el servidor Smart Host. A continuacin se muestra una pantalla capturada del dilogo de configuracin de Advanced Delivery.
Y con estas nociones bsicas, paro de enrollarme ms en esta seccin, y seguimos con el resto.
Seguidamente, se no solicitar el nombre del dominio de correo que desea crear. En mi caso, se trata de un dominio interno denominado mobile.local, sobre el cual tengo montado Directorio Activo, y que utilizo en mi porttil habitualmente como entorno de laboratorio en clientes. En consecuencia, escribir mobile.local, y seguidamente click Finish.
Con esto, habremos creado un nuevo dominio de correo en nuestro Servidor SMTP, pero an nos queda configurar dicho dominio de correo para reenviar el correo entrante hacia nuestro Servidor POP3. Para ello, hacer click con el botn derecho sobre el dominio de correo recin creado, y seguidamente click en la opcin Properties del men contextual.
En el dilogo de propiedades de nuestro dominio del correo, deberemos seleccionar la opcinAllow incoming mail to be relamed to this domain. Del mismo modo, deberemos configurar la forma de enlutar el correo electrnico, pudiendo elegir entre dos opciones:
Use DNS to route to this domain. Forward all mail to smart host.
En nuestro caso, dejaremos configurada la opcin Forward all mail to smart host, especificando el servidor POP3 como smart host (nota: se utiliza el alias DNS pop3.mobile.local que apunta al servidor POP3). Click Ok para continuar.
Con las instrucciones descritas, estamos en situacin de poder montar un servidor POP3 (que tambin actuar como servidor SMTP), y si quisiramos, tambin servidores adicionales SMTP para el envo de correo saliente. Con todo esto, ya slo queda crear en DNS los registros necesarios, especialmente el registro MX (Mail Exchanger).
Un registro CNAME (Alias) para el servidor POP3, de nombre pop3. Apunta al registro HOST del servidor POP3. Un registro CNAME (Alias) para el servidor SMTP, de nombre smtp. Apunta al registro HOST del servidor POP3, salvo que deseemos que apunte a otro servidor SMTP (siempre y cuando, ste sepa realizar correctamente la entrega de correo al POP3). Un registro CNAME (Alias) para cada servidor SMTP utilizado para relay, de nombre smtp-relay. Un registro MX (Mail Exchanger) para el servicio POP3. Debe apuntar a cualquier servidor SMTP que sepa realizar correctamente la entrega de correo al POP3. En mi caso, voy a hacer que apunte al propio servidor
POP3. Para crear un registro CNAME, utilizaremos la herramienta administrativa DNS. En mi caso, tengo configurados todos los Controladores de Dominio como servidores DNS, y todas las Zonas de DNS las tengo integradas en Directorio Activo. En consecuencia, me vale cualquier Controlador de Dominio (bueno, slo tengo uno ;) para conectarme por Terminal Server (RDP) y abrir la Herramienta Administrativa DNS. Desde dicha herramienta, click con el botn derecho sobre el dominio deseado, y seguidamente, click sobre la opcin New Alias (CNAME) del men contextual. En el dilogo New Resource Record, especificar el nombre del alias en la caja de texto Alias name(ej: pop3, smtp, smtp-relay, etc.) y seguidamente especificar el nombre al que debe apuntar en la caja de texto Fully qualified domain name (FQDN) for target host (ej: vmoss01mob.mobile.local, viis01mob.mobile.local, etc.). A continuacin se muestra una pantalla capturada del dilogo New Resource Record. El procedimiento a seguir es el mismo para todos los registros Alias (CNAME) necesarios.
Finalmente, vamos a crear el registro MX (Mail Exchanger) en DNS. Para ello, desde la herramienta administrativa DNS, click con el botn derecho sobre el
dominio deseado, y seguidamente, click sobre la opcin New Mail Exchanger (MX) del men contextual. Deberemos especificar el nombre completo del servidor de correo deseado en el campo <="" mail="" of="" (fqdn)="" domain="" qualified="">, as como la Prioridad en el campoMail server priority. Tngase en cuenta, que los registro con un valor de Prioridad ms bajo, tienen preferencia sobre los registros con un valor de Prioridad ms alto.
Sera posible (y recomendable) crear un DNS para cada servidor SMTP que sea correo al servicio POP3, de tal modo que si realizar la recepcin de correo entrante desde
registro MX (Mail Exchanger) en capaz de realizar la entrega de un servidor SMTP se cae, sea posible otro servidor SMTP.