GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo configurar un servidor de correo con todas las funciones con Postfix, Dovecot y Roundcube en Ubuntu 18.04

Configurar su propio servidor de correo en Linux VPS es una tarea importante para cualquier administrador de sistemas Linux. Postfix es una de las soluciones de servidor de correo más utilizadas y fáciles de usar disponibles. Es un agente de transferencia de correo (MTA) gratuito, de código abierto y potente que se puede utilizar para enviar y recibir correo electrónico. De forma predeterminada, Postfix es el software MTA predeterminado en todas las distribuciones de Linux.

Dovecot es un servidor de correo electrónico IMAP y POP3 de código abierto que puede actuar como un servidor de almacenamiento de correo. Se utiliza para entregar y recuperar correos electrónicos hacia y desde los buzones de correo locales.

Roundcube es un cliente de correo electrónico IMAP basado en la web que puede leer correos electrónicos almacenados por Dovecot en buzones virtuales. Proporciona todas las funciones que espera de un cliente de correo electrónico, incluida la compatibilidad con MIME, múltiples identidades de remitente, revisión ortográfica, manipulación de carpetas y muchas más.

En este tutorial, le mostraremos cómo configurar un servidor de correo con todas las funciones con Postfix, Dovecot y Roundcube en Ubuntu 18.04 VPS.

Requisitos

  • Un Ubuntu 18.04 VPS nuevo en Atlantic.Net Cloud Platform.
  • Un nombre de dominio válido dirigido a su dirección IP de VPS. En este tutorial, usaremos email.example.com.
  • Registros A y MX para su servidor.

Nota :Puede consultar la Guía de DNS de Atlantic para administrar los registros de DNS.

Paso 1:crear el servidor en la nube de Atlantic.Net

Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu 18.04 como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.

Una vez que haya iniciado sesión en su servidor Ubuntu 18.04, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.

apt-get update -y

Paso 2:configurar el nombre de host

A continuación, deberá configurar el nombre de host de su servidor. En este caso, estableceremos el nombre de host en mail.example.com, como se muestra a continuación:

hostnamectl set-hostname email.example.com

A continuación, abra el archivo /etc/hosts y vincule la dirección IP de su servidor con el nombre de host:

nano /etc/hosts

Agregue la siguiente línea:

your-server-ip   email.example.com email

Guarde y cierre el archivo. Luego, ejecute el siguiente comando para aplicar los cambios de configuración:

hostname -f

Paso 3:instale Apache, MariaDB y PHP

Roundcube requiere que Apache, MariaDB y PHP estén instalados en su servidor. Puede instalarlos con el siguiente comando:

apt-get install apache2 mariadb-server php libapache2-mod-php php-mysql -y

Después de instalar todos los paquetes necesarios, deberá habilitar el módulo de reescritura de Apache para que funcione Roundcube. Puede habilitarlo con el siguiente comando:

a2enmod rewrite

A continuación, vuelva a cargar el servicio de Apache para aplicar los cambios:

systemctl restart apache2

Paso 4:instale el certificado SSL de Let's Encrypt

A continuación, deberá instalar el certificado SSL gratuito de Let's Encrypt en su servidor para configurar su servidor de correo con TLS.

Primero, instale el cliente Certbot en su servidor con el siguiente comando:

add-apt-repository ppa:certbot/certbot
apt-get update -y
apt-get install python-certbot-apache -y

A continuación, descargue el certificado SSL gratuito de Let's Encrypt para su dominio email.example.com con el siguiente comando:

certbot certonly --apache -d email.example.com

Este comando descargará el certificado en el directorio /etc/letsencrypt/live/email.example.com/.

Paso 5:instalar y configurar Postfix

A continuación, comencemos a instalar un servidor de correo Postfix con el siguiente comando:

apt-get install postfix

Será redirigido a la siguiente pantalla:

Seleccione Sitio de Internet y presiona TAB y Introducir continuar. Debería ver la siguiente pantalla:

Proporcione su nombre de dominio y presione Tab y Introducir para finalizar la instalación.

El archivo de configuración predeterminado de Postfix se encuentra en /etc/postfix/main.cf. Antes de configurar Postfix, se recomienda hacer una copia de seguridad de este archivo:

mv /etc/postfix/main.cf /etc/postfix/main.cf.bak

A continuación, cree un nuevo archivo de configuración de Postfix como se muestra a continuación:

nano /etc/postfix/main.cf

Agregue las siguientes líneas:

# GENERAL SETTINGS
smtpd_banner = $myhostname ESMTP $mail_name
biff = no
append_dot_mydomain = no
readme_directory = no
# SMTP SETTINGS
smtp_use_tls=yes
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# SMTPD SETTINGS
smtpd_use_tls=yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_cert_file=/etc/letsencrypt/live/email.example.com/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/email.example.com/privkey.pem
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated,  reject_unauth_destination
# SASL SETTINGS
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
# VIRTUAL MAIL BOX AND LMTP SETTINGS
virtual_transport = lmtp:unix:private/dovecot-lmtp
virtual_mailbox_domains = /etc/postfix/virtual_mailbox_domains
# OTHER SETTINGS
myhostname = email.example.com
myorigin = /etc/mailname
mydestination =  localhost.$mydomain, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

Guarde y cierre el archivo.

A continuación, deberá definir su dominio en el archivo /etc/postfix/virtual_mailbox_domains:

nano /etc/postfix/virtual_mailbox_domains

Agregue la siguiente línea:

example.com #domain

Guarde y cierre el archivo, luego conviértalo a un formato que Postfix pueda entender con el siguiente comando:

postmap /etc/postfix/virtual_mailbox_domains

A continuación, edite el archivo de configuración principal de Postfix:

nano /etc/postfix/master.cf

Descomente la siguiente línea:

submission inet n       -       y       -       -       smtpd

Guarde y cierre el archivo cuando haya terminado.

Paso 6:instalar y configurar Dovecot

A continuación, deberá instalar Dovecot con otros paquetes necesarios. Puede instalarlos usando el siguiente comando:

apt-get install dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd -y

A continuación, deberá definir la ubicación de correo de Dovecot para comunicarse con Postfix y los dominios de buzón virtual. Puede definirlo editando el archivo /etc/dovecot/conf.d/10-mail.conf:

nano /etc/dovecot/conf.d/10-mail.conf

Busque la siguiente línea:

mail_location = mbox:~/mail:INBOX=/var/mail/%u

Y reemplácelo con lo siguiente:

mail_location = maildir:/var/mail/vhosts/%d/%n

Guarde y cierre el archivo.

A continuación, cree el directorio vhosts de Dovecot y el subdirectorio para su nombre de dominio.

mkdir /var/mail/vhosts
mkdir /var/mail/vhosts/example.com

A continuación, cree un usuario de vmail y un grupo, y asigne la propiedad de los directorios al usuario de vmail.

groupadd -g 5000 vmail
useradd -r -g vmail -u 5000 vmail -d /var/mail/vhosts -c "virtual mail user"
chown -R vmail:vmail /var/mail/vhosts/

A continuación, edite el archivo de configuración principal de Dovecot y habilite los servicios seguros IMAP y POP3:

nano /etc/dovecot/conf.d/10-master.conf

Encuentra las siguientes líneas:

inet_listener imaps {
    #port = 993
    #ssl = yes
  }

Y reemplácelos con los siguientes:

inet_listener imaps {
    port = 993
    ssl = yes
  }

En el mismo archivo, busque las siguientes líneas:

inet_listener pop3s {
    #port = 995
    #ssl = yes
  }

Y reemplácelos con los siguientes:

inet_listener pop3s {
    port = 995
    ssl = yes
  }

A continuación, busque las siguientes líneas:

service lmtp {
unix_listener lmtp {
#mode = 0666
}

Y reemplácelos con los siguientes:

service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
mode = 0600
user = postfix
group = postfix
}

A continuación, busque las siguientes líneas:

service  auth {
  # Postfix smtp-auth
  #unix_listener /var/spool/postfix/private/auth {
  #  mode = 0666
  #}
}

Y reemplácelos con los siguientes:

service auth {
...
#Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user=postfix
group=postfix
}

Guarde y cierre el archivo cuando haya terminado.

A continuación, configure el proceso de autenticación de Dovecot editando el archivo /etc/dovecot/conf.d/10-auth.conf:

nano /etc/dovecot/conf.d/10-auth.conf

Descomente la siguiente línea:

disable_plaintext_auth = yes

En el mismo archivo, busque la siguiente línea:

auth_mechanisms = plain

Y reemplácelo con lo siguiente:

auth_mechanisms = plain login

Luego, comente la siguiente línea para deshabilitar el comportamiento predeterminado de Dovecot para autenticar a los usuarios.

#!include auth-system.conf.ext

A continuación, descomente la siguiente línea para habilitar la configuración del archivo de contraseña.

!include auth-passwdfile.conf.ext

Guarde y cierre el archivo cuando haya terminado.

A continuación, edite el archivo /etc/dovecot/conf.d/auth-passwdfile.conf.ext :

nano /etc/dovecot/conf.d/auth-passwdfile.conf.ext

Cambie el archivo como se muestra a continuación:

passdb {
  driver = passwd-file
  args = scheme=PLAIN username_format=%u /etc/dovecot/dovecot-users
}
userdb {
driver = static
args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
}

Guarde y cierre el archivo.

A continuación, cree un archivo de contraseña para el usuario al que desea asignar una cuenta de correo electrónico:

nano /etc/dovecot/dovecot-users

Agregue las siguientes líneas:

[email protected]:[email protected]

Guarde y cierre el archivo.

Paso 7:configurar Dovecot para usar Let's Encrypt SSL

A continuación, deberá configurar Dovecot para que funcione con SSL. Puede hacerlo editando el archivo /etc/dovecot/conf.d/10-ssl.conf:

nano /etc/dovecot/conf.d/10-ssl.conf

Busque la siguiente línea:

ssl = yes

Reemplácelo con lo siguiente:

ssl = required

A continuación, busque las siguientes líneas:

#ssl_cert = </etc/dovecot/dovecot.pem
#ssl_key = </etc/dovecot/private/dovecot.pem

Y reemplácelos con los siguientes:

ssl_cert = </etc/letsencrypt/live/email.example.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/email.example.com/privkey.pem

Guarde y cierre el archivo cuando haya terminado, luego reinicie los servicios de Postfix y Dovecot para aplicar los cambios de configuración:

systemctl restart postfix
systemctl restart dovecot

Paso 8:instalar y configurar Roundcube

apt-get install roundcube

Durante la instalación, se le pedirá que configure la base de datos. Elige la opción que desees y pulsa Intro para finalizar la instalación.

A continuación, deberá configurar el host virtual de Apache para Roundcube. Puede hacerlo editando el archivo /etc/apache2/sites-enabled/000-default.conf:

nano /etc/apache2/sites-enabled/000-default.conf

Cambie el archivo como se muestra a continuación:

<VirtualHost *:80>
        Alias /mail /usr/share/roundcube

        ServerAdmin [email protected]
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Guarde y cierre el archivo, luego reinicie el servicio web Apache para aplicar los cambios:

systemctl restart apache2

Paso 9:acceda al correo web de Roundcube

Ahora, abra su navegador web y escriba la URL hhttp://email.example.com/mail. Será redirigido a la página de inicio de sesión de Roundcube:

Proporcione su nombre de usuario y contraseña que ha definido en el archivo de contraseñas de Dovecot y haga clic en Iniciar sesión botón. Debería ver el panel predeterminado de Roundcube en la siguiente página:

Conclusión

¡Felicidades! Ha instalado y configurado con éxito un servidor de correo con Postfix, Dovecot y Roundcube. Ahora puede enviar y recibir correos electrónicos desde el panel de control de correo web de Roundcube. ¿Listo para comenzar con Postfix, Dovecot y Roundcube? ¡Pruébelo hoy en una cuenta de alojamiento VPS de Atlantic.Net!

Obtenga más información sobre nuestros servicios de alojamiento VPS y servidores privados virtuales.


Linux
  1. Cómo instalar y configurar Ubuntu Mail Server en la versión 18.04 LTS

  2. Cómo instalar Spamassassin con Postfix y Dovecot en Ubuntu/Debian Server

  3. Instale el servidor de correo Postfix y Dovecot en Ubuntu o Debian

  4. Cómo configurar Apache con MPM Event y PHP-FPM en Ubuntu 20.04

  5. Cómo configurar un servidor de correo POP3/IMAP con Dovecot en Ubuntu 18.04

Cómo instalar y usar pgAdmin en Ubuntu 18.04

Cómo configurar un servidor FTP con ProFTPD en Ubuntu 18.04

Cómo configurar un servidor de correo con Modoboa en Ubuntu 20.04

Cómo configurar Postfix como un servidor SMTP de solo envío en Ubuntu 20.04

Cómo instalar y configurar una VPN con OpenVPN en Ubuntu 18.04

Cómo configurar un servidor de correo SMTP con Postfix en Ubuntu 18.04