"Fácil" (tl;dr)

"Fácil" (tl;dr)

Mi VPS ejecuta Ubuntu y me gustaría poder recibir correo electrónico en mi dominio.

¿Cómo configuro fácilmente un servidor de correo para hacer esto?

Respuesta1

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)

En primer lugar, quiero abordar lo que parece ser elmás fácilsolución.

sudo tasksel install mail-server

Se produjeron varios problemas cuando lo intentamos: Primero, instala Dovecot, lo cual está bien para la mayoría, pero consideramos que Courier es el mejor de los dos paranuestronecesidades. En segundo lugar, utiliza Postfix, lo cual 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 archivos planos para la configuración, ya que es un punto de ruptura menos. Piense 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 o 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 se almacena en /var/mail/virtual/<domain>/<user>/mailAsí que para futuros ejemplos usaré [email protected], [email protected], [email protected]para representar una dirección de correo electrónico, un reenviador al que ir [email protected]y una dirección incorrecta, 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 hablaremos de 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:

domainlist local_domains = @:localhost:dsearch;/etc/valiases:dsearch;/var/mail/virtual
daemon_smtp_ports = smtp : 587 : 465
MAIN_TLS_ENABLE = yes

(Estas líneas aparecerán en diferentes partes del archivo; reemplace cada una en consecuencia)

Una vez que se haya completado, reconstruya la configuración de Exim. update-exim4.confEsto concluye los cambios necesarios para Exim.

mensajero

Instale Courier con courier-baseesto debería instalar courier-authdaemon, courier-authlib*, courier-imap*, courier-pop*, courieruserinfo,courier-ssl

Sinceramente, no hay mucha configuración fuera del estándar. Sólo necesitarás 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 verifica si el dominio aparece como un nombre de host local, o si el dominio está /var/mail/virtualen /etc/valiases.

Crear cuentas de correo electrónico

Finalmente creé varias herramientas para agilizar este proceso, pero agregar un nuevo usuario implica lo siguiente:

mkdir -p /var/mail/virtual/example.com/email
chown -R mail.mail /var/mail/virtual/example.com/
maildirmake /var/mail/virtual/example.com/email/mail
chown -R mail.mail /var/mail/virtual/example.com/

Luego agregue la dirección a la base de datos de usuario del mensajero, para que puedan iniciar sesión.

userdb [email protected] set uid=8 gid=8 home=/var/mail/virtual/example.com/email mail=/var/mail/virtual/example.com/email/mail

Asegúrese de reemplazar los valores cuando corresponda. También - uidygid necesidadser los identificadores numéricos de usuario/grupo para el usuario de correo.

userdbpw -md5 | userdb [email protected] set systempw

Esto le pedirá una contraseña, ingrese la que desea usar para la cuenta.

makeuserdb

Finalmente, genere los archivos hash/shadow de userdb. Reinicie Courier y pruebe si sus cambios funcionan:

authtest [email protected]

Debería producir algo similar a

Authentication succeeded.

     Authenticated: [email protected]  (uid 8, gid 8)
    Home Directory: /var/mail/virtual/example.com/email
           Maildir: /var/mail/virtual/example.com/email/mail
             Quota: (none)
Encrypted Password: $1$LOLCATS$THISWILLBEAHASH.
Cleartext Password: (none)
           Options: (none)

Si ve "FALLO de autenticación: Operación no permitida", edite /etc/courier/authdaemonrc y agregue authuserdb a la línea authmodulelist.

Una vez confirmadas todas las pruebas, reinicie los distintos 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 debes crear un archivo /etc/valiases(crearlo 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 registrada, entonces el correo debería fallar y rebotarse con un mensaje: "No hay usuario en esta dirección". Entonces, todo el correo enviado que diga: [email protected]será rechazado como un error.

Sin embargo, tenemos algunas direcciones de correo electrónico que deseamos mantener en otro lugar, por ejemplo[correo electrónico protegido]- para hacerlo necesitamos crear /etc/valiases/example.comy el contenido del archivo debe ser el siguiente:

fwd: [email protected]
*: :fail: No user at this address.

De esa manera, aunque[correo electrónico protegido]no coincide con ninguna cuenta de correo electrónico en el servidor, coincide en el /etc/valiasesarchivo y el correo se reenviará a[correo electrónico protegido]- Sin embargo,[correo electrónico protegido]seguirá fallando con el mensaje "No hay usuario en esta dirección".

Respuesta2

La forma más sencilla es correr sudo tasksel install mail-server. Eso le dará un servidor de correo electrónico con valores predeterminados sensatos. Todo lo que tienes que hacer es responder algunas preguntas. Obviamente, aún podrás realizar 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 todo estará bien.

Sin embargo, es absolutamente recomendable leer sobre administración de servicios de correo electrónico.

Referencias oficiales:

Respuesta3

No tengo una "gran respuesta", pero estos enlaces pueden resultarle útiles.https://help.ubuntu.com/community/PostfixBasicSetupHowto#Receivingcorreo yhttps://help.ubuntu.com/community/Postfix

Respuesta4

He estado haciendo 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

Palomar(imapa 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 correctamente.capacidad de ping.

Ah, y por supuesto tendrás que configurar tus entradas 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 el punto al final de los servidores de correo e inserte su dirección IP y nombre de dominio cuando corresponda.

información relacionada