Gran pregunta, estoy esperando una gran respuesta. He creado un par de servidores de correo a lo largo de los años y nunca ha sido fácil. Muchas decisiones: qué servidor de SMS, qué IMAP / POP, cómo almacenar los correos electrónicos, cómo almacenar usuarios ... Estoy completamente incapaz de dar una respuesta fácil .
Javier Rivera
Respuestas:
48
Así es como configuré el correo en nuestras máquinas de producción. Estos son los criterios que necesitábamos:
Cuentas de correo electrónico
Alias de correo electrónico (reenviadores)
IMAP, POP3 y SMTP
"Fácil" (tl; dr)
Primero, quiero abordar lo que parece ser la solución más fácil .
sudo tasksel install mail-server
Varios problemas con esto ocurrieron cuando probamos esto: Primero instala Dovecot, lo cual está bien para la mayoría, pero hemos considerado que Courier es el mejor de los dos para nuestras necesidades. En segundo lugar, utiliza Postfix, que es excelente, pero también necesitamos Exim, ya que es un servidor MTA / SMTP más potente. En tercer lugar, instala MySQL: en la configuración que utilizo, preferimos los archivos planos para la configuración, ya que es un punto de ruptura menos. Piensa en lo que sucedería si MySQL fallara por alguna razón desconocida. De lo contrario, el resto de los paquetes es bastante sencillo y fácil de mantener para un servicio de correo pequeño (piense en 1-2 dominios de correo electrónico en total).
Nuestra configuración
Estructura de directorios
Nos desviamos un poco del camino de las configuraciones normales, pero facilita la gestión.
Todo nuestro correo electrónico se almacena en /var/mail/virtual/<domain>/<user>/mailAsí que para futuros ejemplos voy a estar utilizando [email protected], [email protected], [email protected]para representar una dirección de correo electrónico, un promotor de ir a [email protected], y una mala dirección, respectivamente. En el ejemplo anterior sería /var/mail/virtual/example.com/email/mail.
También mantengo una lista de todos los dominios en el servidor /etc/valiasespero más sobre eso más adelante.
Sufijo
Esta es más o menos la parte fácil de la configuración. Simplemente instale el postfixpaquete.
Exim
Instale Exim con apt-get install exim4 exim4-base exim4-config exim4-daemon-heavyUna vez instalado, deberá editar la configuración predeterminada de Exim para reemplazar o agregar los siguientes valores:
Sinceramente, no hay mucha configuración fuera del estándar. Solo tendrá que crear una base de datos de usuarios.
Cuentas
Exim y Courier verifican algunos lugares para ver si un inicio de sesión o un correo electrónico entrante son válidos. Exim comprueba si el dominio aparece como un nombre de host local, o si el dominio está dentro /var/mail/virtualo si está dentro /etc/valiases.
Crear cuentas de correo electrónico
Finalmente creé varias herramientas para agilizar este proceso, pero agregar un nuevo usuario se ajusta a:
Si ve "Error de autenticación: operación no permitida", edite / etc / courier / authdaemonrc y agregue authuserdb a la línea authmodulelist.
Una vez que se hayan confirmado todas las pruebas, reinicie los diversos servicios involucrados ( courier-authdaemon, exim4), abra los puertos 143, 25, 586, 495, 110 y configure las cuentas en su cliente de correo favorito.
Crear alias de correo electrónico
Para cada dominio, debe crear un archivo /etc/valiases(crear si no existe) con al menos la siguiente línea:
*: :fail: No user at this address.
Qué dice esto: si el correo entrante no coincide con ninguna cuenta de correo electrónico que tengo en el archivo, entonces el correo debe fallar y rebotar con un mensaje: "Ningún usuario en esta dirección". Por lo tanto, todo el correo enviado a decir: [email protected]sería rechazado como un fracaso.
Sin embargo, tenemos algunas direcciones de correo electrónico que deseamos mantener en otro lugar, por ejemplo, [email protected], para hacerlo necesitamos crear /etc/valiases/example.comy el contenido del archivo debe ser el siguiente:
De esa manera, aunque [email protected] no coincide con ninguna cuenta de correo electrónico en el servidor, coincide con el /etc/valiasesarchivo y el correo se reenviará a [email protected]. Sin embargo, [email protected] seguirá fallando con un mensaje "Ningún usuario en esta dirección".
@WesleyDavid No creo que mi historia de bash se muestre como un ISBN :)
Marco Ceppi
Solo siguiendo esto, muy apreciado, he editado anteriormente para cubrir un error que obtuve con la línea de prueba automática.
Darren Greaves
@DarrenGreaves Gracias! ¡Me alegra que haya ayudado y gracias por la actualización!
Marco Ceppi
Estoy luchando para que todo esto funcione: solo obtuve el enrutamiento de valiases para trabajar cuando agregué el archivo de enrutamiento 350 (editado para rutas) de debian-administration.org/articles/140 : las cosas de dominios virtuales no funcionan en absoluto - ¿Tuviste que agregar algún archivo de enrutamiento? Ejército de reserva.
Darren Greaves
14
La forma más fácil es correr sudo tasksel install mail-server. Eso le dará un servidor de correo electrónico con valores predeterminados sanos. Todo lo que tiene que hacer es responder algunas preguntas. Obviamente, aún puede hacer configuraciones manuales después si es necesario, pero en la mayoría de los casos no lo será. Simplemente siga las instrucciones en pantalla y debería estar bien.
Sin embargo, leer sobre la administración de los servicios de correo electrónico es absolutamente recomendable.
¿Hay una manera perezosa de ver qué va a hacer (paquetes que instalará, configuración predeterminada)? Por perezoso quiero decir sin instalarlo yo mismo.
Javier Rivera
@Javier puede ver qué contenido se instala ejecutandosudo tasksel --task-packages mail-server
Marco Ceppi
Configuración almacenada en MySQL, sin anti-spam, sin antivirus ... no es realmente útil para nosotros :(.
Acabo de hacer esto yo mismo, de hecho necesitas postfix, y en mi caso también quería un servidor imap para poder usar un buen cliente gui (sin mencionar ningún nombre) en otra máquina. Usé estos documentos:
En realidad es bastante simple, lo puse en funcionamiento en unos minutos y estoy recibiendo correos electrónicos. Esto también es útil para comprobar que todo está configurado bien pingability .
Ah, y por supuesto, tendrá que configurar sus entradas de dns correctamente como se muestra a continuación (según la configuración que funcionó para mí):
name type content
@ A ???.???.??.??
mail A ???.???.??.??
y
MX Records
Name Priority
mail.mydomain.com. 1
mail2.mydomain.com. 2
Tenga en cuenta la parada completa al final de los servidores de correo e inserte su dirección IP y nombre de dominio cuando corresponda.
Respuestas:
Así es como configuré el correo en nuestras máquinas de producción. Estos son los criterios que necesitábamos:
"Fácil" (tl; dr)
Primero, quiero abordar lo que parece ser la solución más fácil .
Varios problemas con esto ocurrieron cuando probamos esto: Primero instala Dovecot, lo cual está bien para la mayoría, pero hemos considerado que Courier es el mejor de los dos para nuestras necesidades. En segundo lugar, utiliza Postfix, que es excelente, pero también necesitamos Exim, ya que es un servidor MTA / SMTP más potente. En tercer lugar, instala MySQL: en la configuración que utilizo, preferimos los archivos planos para la configuración, ya que es un punto de ruptura menos. Piensa en lo que sucedería si MySQL fallara por alguna razón desconocida. De lo contrario, el resto de los paquetes es bastante sencillo y fácil de mantener para un servicio de correo pequeño (piense en 1-2 dominios de correo electrónico en total).
Nuestra configuración
Estructura de directorios
Nos desviamos un poco del camino de las configuraciones normales, pero facilita la gestión.
Todo nuestro correo electrónico se almacena en
/var/mail/virtual/<domain>/<user>/mail
Así que para futuros ejemplos voy a estar utilizando[email protected]
,[email protected]
,[email protected]
para representar una dirección de correo electrónico, un promotor de ir a[email protected]
, y una mala dirección, respectivamente. En el ejemplo anterior sería/var/mail/virtual/example.com/email/mail
.También mantengo una lista de todos los dominios en el servidor
/etc/valiases
pero más sobre eso más adelante.Sufijo
Esta es más o menos la parte fácil de la configuración. Simplemente instale el
postfix
paquete.Exim
Instale Exim con
apt-get install exim4 exim4-base exim4-config exim4-daemon-heavy
Una vez instalado, deberá editar la configuración predeterminada de Exim para reemplazar o agregar los siguientes valores:(Estas líneas aparecerán en diferentes partes del archivo, reemplácelas en consecuencia)
Una vez que esté completo, reconstruya la configuración
update-exim4.conf
de Exim con Esto concluye los cambios necesarios para Eximmensajero
Instalar mensajero con
courier-base
este debe instalarcourier-authdaemon
,courier-authlib*
,courier-imap*
,courier-pop*
,courieruserinfo
,courier-ssl
Sinceramente, no hay mucha configuración fuera del estándar. Solo tendrá que crear una base de datos de usuarios.
Cuentas
Exim y Courier verifican algunos lugares para ver si un inicio de sesión o un correo electrónico entrante son válidos. Exim comprueba si el dominio aparece como un nombre de host local, o si el dominio está dentro
/var/mail/virtual
o si está dentro/etc/valiases
.Crear cuentas de correo electrónico
Finalmente creé varias herramientas para agilizar este proceso, pero agregar un nuevo usuario se ajusta a:
Luego agregue la dirección al servicio de mensajería userdb, para que puedan iniciar sesión
Asegúrese de reemplazar los valores donde corresponda. Además,
uid
ygid
debe ser el ID numérico de usuario / grupo para el usuario de correo.Esto le pedirá una contraseña, ingrese la que desea usar para la cuenta.
Finalmente, genere los archivos hasd / shadow userdb. Reinicie Courier y pruebe si sus cambios funcionan:
Debería producir algo similar a
Si ve "Error de autenticación: operación no permitida", edite / etc / courier / authdaemonrc y agregue authuserdb a la línea authmodulelist.
Una vez que se hayan confirmado todas las pruebas, reinicie los diversos servicios involucrados (
courier-authdaemon
,exim4
), abra los puertos 143, 25, 586, 495, 110 y configure las cuentas en su cliente de correo favorito.Crear alias de correo electrónico
Para cada dominio, debe crear un archivo
/etc/valiases
(crear si no existe) con al menos la siguiente línea:Qué dice esto: si el correo entrante no coincide con ninguna cuenta de correo electrónico que tengo en el archivo, entonces el correo debe fallar y rebotar con un mensaje: "Ningún usuario en esta dirección". Por lo tanto, todo el correo enviado a decir:
[email protected]
sería rechazado como un fracaso.Sin embargo, tenemos algunas direcciones de correo electrónico que deseamos mantener en otro lugar, por ejemplo, [email protected], para hacerlo necesitamos crear
/etc/valiases/example.com
y el contenido del archivo debe ser el siguiente:De esa manera, aunque [email protected] no coincide con ninguna cuenta de correo electrónico en el servidor, coincide con el
/etc/valiases
archivo y el correo se reenviará a [email protected]. Sin embargo, [email protected] seguirá fallando con un mensaje "Ningún usuario en esta dirección".fuente
La forma más fácil es correr
sudo tasksel install mail-server
. Eso le dará un servidor de correo electrónico con valores predeterminados sanos. Todo lo que tiene que hacer es responder algunas preguntas. Obviamente, aún puede hacer configuraciones manuales después si es necesario, pero en la mayoría de los casos no lo será. Simplemente siga las instrucciones en pantalla y debería estar bien.Sin embargo, leer sobre la administración de los servicios de correo electrónico es absolutamente recomendable.
Referencias oficiales:
fuente
sudo tasksel --task-packages mail-server
No tengo una "gran respuesta", pero puede encontrar estos enlaces útiles https://help.ubuntu.com/community/PostfixBasicSetupHowto#Receiving Mail y https://help.ubuntu.com/community/Postfix
fuente
Acabo de hacer esto yo mismo, de hecho necesitas postfix, y en mi caso también quería un servidor imap para poder usar un buen cliente gui (sin mencionar ningún nombre) en otra máquina. Usé estos documentos:
Sufijo
Dovecot (imap y pop3)
En realidad es bastante simple, lo puse en funcionamiento en unos minutos y estoy recibiendo correos electrónicos. Esto también es útil para comprobar que todo está configurado bien pingability .
Ah, y por supuesto, tendrá que configurar sus entradas de dns correctamente como se muestra a continuación (según la configuración que funcionó para mí):
y
Tenga en cuenta la parada completa al final de los servidores de correo e inserte su dirección IP y nombre de dominio cuando corresponda.
fuente