.png)
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>/mail
Así 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/valiases
pero hablaremos de 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:
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.conf
Esto concluye los cambios necesarios para Exim.
mensajero
Instale Courier con courier-base
esto 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/virtual
en /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 - uid
ygid
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.com
y 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/valiases
archivo 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:
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.