Email con tu dominio en un servidor casero

Configurar nuestro servidor con sSMTP

Mi segundo problema fue que no hubo manera de hacer funcionar correctamente el servidor Exim, el empleado en el mini tutorial referente al correo del blog de Vicente. Busqué alternativas, y apareció sSMTP como mi salvador. Considerablemente más fácil de configurar que Exim, me funcionó a la primera gracias a una respuesta de Server Fault, una página del mismo grupo de Stack Overflow y con idéntico funcionamiento, pero orientada a sysadmins y problemas con servidores en vez de preguntas de programación. Digamos que son la versión seria de Yahoo Respuestas.

Instalarlo es tan fácil como escribir en la terminal:

sudo apt-get install ssmtp

Y configurarlo tampoco tiene mucho misterio. Sólo hay que modificar unas pocas líneas del fichero /etc/ssmtp/ssmtp.conf de tal forma que quede así:

root=tuusuario@tudominio.com
mailhub=smtp.gmail.com:587
UseSTARTTLS=yes
UseTLS=yes
AuthUser=tuusuario@tudominio.com
AuthPass=tucontraseña
FromLineOverride=yes

Este fichero tiene por defecto permisos de lectura para others, por lo que deberás tomar medidas si compartes tu servidor con otros para que no te vean la contraseña de Google Apps.

¡Y solamente con esto ya tendrías tu servidor de correo funcionando! Puedes probarlo con el comando mail:

echo test | mail -v -s "Probando sSMTP" usuario@dominio.com

Ahora WordPress podrá enviar correos sin necesidad de plugins ni cambios en sus archivos, al igual que cualquier otra notificación que tenga que hacernos el sistema. Además, todos los emails enviados por el servidor se quedan en la carpeta Enviados de la cuenta Gmail de Google Apps.

Crear alias de usuario

En mi caso, para no tenerme que hacer cargo de otra cuenta de correo, configuré la nueva cuenta de Gmail para que reenviara todo correo entrante a mi cuenta normal de Gmail. De igual modo, configuré esta última para poder enviar correos desde mi nueva dirección personalizada. Esto me ocasionaba un problema, pues todo email que mi servidor me enviara a mí mismo, como las notificaciones de comentarios de WordPress, Gmail me lo organizaba automáticamente en la carpeta Enviados. Esto es así porque Gmail ve que el campo “De:” es igual a una de las direcciones que tengo configuradas para enviar en mi nombre, e interpreta que lo he mandado yo, cuando en realidad ha sido mi servidor.

Esto me viene perfecto para otra de las cuentas que tengo configuradas en mi Gmail, como la de la universidad. Así, cuando por ejemplo envío algún correo a un profesor, me lo mete en Enviados, a pesar de que el remitente no sea mi dirección de Gmail. Pero en el caso que nos ocupa, este hecho nos molesta más que otra cosa. La solución pasa por crear un alias. Veamos cómo.

Accede al panel de control de tu Google Apps y haz clic en el apartado de Organización y usuarios. Luego haz clic en tu usuario y en la ficha Información del usuario verás que hay un apartado llamado Alias. Pulsa en Añadir un alias y dale un nombre a la cuenta que quieras que use tu WordPress para las notificaciones, por ejemplo. Puedes añadir varios alias, según tus necesidades.

Alias

Como bien indica esa pantalla, todos los emails enviados a cualquiera de los alias te llegarán a tu cuenta, pero esa no es realmente la razón por la que los creamos.

Ahora entra en tu Gmail de Google Apps y configúrala para que puedas enviar emails desde el alias (Configuración > Cuentas > Añadir otra dirección de correo tuya):

Alias 2

Y finalmente, en tu servidor casero, edita el fichero /etc/ssmtp/revaliases como sigue:

www-data:wordpress@tudominio.com:smtp.gmail.com:587

De esta manera, cuando el usuario local www-data (el que utiliza Apache, y por lo tanto WordPress) quiera enviar un email, lo hará a través de wordpress@tudominio.com, y no a través de la dirección por defecto (la que pusiste en el fichero ssmtp.conf). Si sólo hiciéramos este último paso, Gmail automáticamente reemplazaría el campo “De:” por el usuario del fichero ssmtp.conf y no habríamos conseguido nada.

Por supuesto, puedes repetir estos pasos para tantos alias quieras tener.

Así hemos conseguido que los correos que envía nuestro WordPress tengan su propio remitente y no se mezclen con los mensajes realmente enviados por nosotros.

En el caso de que quieras empezar de cero con una nueva cuenta de Google Apps y utilizarla a partir de ahora como email principal (en vez de reenviar de la nueva a la vieja como yo, hacerlo al revés, por ejemplo), en vez de crear alias, se me ocurre que crees en Google Apps un nuevo usuario para el servidor, donde tenga su propio buzón de correo.

Por lo tanto, las credenciales que pondrías en el fichero ssmtp.conf no serían las de tu cuenta, sino las del servidor. E igualmente, podrías emplear alias con esta cuenta, pero en este caso ya no sería necesario debido a que no se mezclarían los enviados del servidor por tus propios enviados, al ser cuentas totalmente diferentes.

Creo que esto ha sido todo. La verdad es que creo que ha merecido la pena el esfuerzo; ahora ya sí que estoy satisfecho del todo con lo referente al email (y con mi servidor en general) y le puedo decir adiós a esa espinita que tenía clavada.

27 comentarios / Añade el tuyo debajo

  1. Hola, soy nuevo. ¿Pero no es posible hacerlo con; dominio propio, «mail forwarding» y «alternative SMTP port» que son servicios de no-ip?. No es gratis, pero bastante mas barato que IP estática, son 30 dólares/año más o menos. Aquí se explica bien: https://workaround.org/ispmail/wheezy/sending-from-dynamic-ip-address
    Yo no lo he hecho, pero me gustaría saber si funcionaría.

    Saludos.

    1. Hola Dani,

      Lo que se explica en ese artículo es para enviar emails a través del servidor SMTP que te proporciona tu operador de Internet, por lo que no lo veo como alternativa al no poder usar tu propio dominio. Lamentablemente desde hace tiempo Google Apps ya no tiene opción gratuita y la alterativa de Microsoft también cerró.

      Actualmente, si no se quiere pagar por Google Apps u Office 365 para este propósito, me inclinaría por la contratación del dominio en un registrador que ofreciera como extra tener una cuenta de email sin coste adicional, y luego configurar sSMTP en tu servidor con los datos que te proporcionen. Y para la recepción de correos, usar el webmail del registrador o bien configurar cualquier cliente POP/IMAP. Lo malo de usar el correo de tu registrador es que suelen proporcionarte una única cuenta, entre otras limitaciones.

      Este método lo comento en el artículo, pero por las limitaciones de la empresa con la que tenía registrado mi dominio no pude hacerlo funcionar debidamente, de ahí que buscase una solución alternativa. En cambio, con mi registrador actual no hubiera tenido ningún problema en hacerlo de esa manera.

      Un saludo, y disculpa mi retraso en responder.

  2. Hola Amigo deseo hacer lo mismo que tu hostear mi pagina web con correo en un servidor que consegui pero no tengo idea de como montarlo ahi tiene windows server 2008 y Dyndns quisiera mantenerlo, tendras algun tutorial? buscaba el tuyo pero no pude encontrarlo por lo demas me parece muy interesante tu pagina. Gracias que tengas un excelente dia!!

    1. Hola,

      No tengo ningún manual que pueda ayudarte, pero seguro que con un par de búsquedas en Google obtendrás respuesta a tus dudas.

      Un saludo y gracias por tu comentario.

  3. Hola yo tengo una ip fija y he montado el servidor con hmailserver pero por ejemplo en hotmail llega comi spam .no tengo ni idea como solucionarlo definitivo.

    1. Hola Cristóbal,

      Aunque tengas una IP fija es bastante probable que los servidores a donde envíes correos no se fíen y te lo marquen como spam hagas lo que hagas. Lo que puedes intentar es pedir a tu ISP que te actualicen el registro PTR para que apunte a tu dominio, pero esto tampoco te va a garantizar que tus correos no caigan en spam, aunque es mejor que no tenerlo.

      Un saludo.

Comentarios cerrados.