Por: Carlos A. Leal S.
Requisitos para realizar esta configuración
- Haber configurado adecuadamente los parámetros de red
- Disponer de un servidor DNS, donde ya esté bien definido el dominio que se utilizará para enviar y recibir los correos
- Como vamos a configurar un webmail, necesitamos un servidor web funcionando
Paso 1 – Configuración inicial
Una vez que accedemos al sistema como root, actualizamos el software ya instalado.
apt-get update apt-get upgrade
Iniciemos por instalar algunas herramientas necesarias, es posible que algunas ya estén instaladas.
apt-get install curl net-tools bash-completion wget lsof nano
Ahora vamos a editar el orden en que el cliente DNS hace las consultas
nano /etc/host.conf
lo dejamos así:
order hosts,bind multi on
Con esta configuración nos aseguramos de que el cliente DNS primero revise el archivo /etc/hosts antes de hacer la consulta al servidor DNS.
Ahora vamos a modificar el archivo /etc/hosts, vamos a establecer correctamente el nombre del host (es decir el nombre de la computadora que estamos configurando), en este caso vamos a utilizar el dominio hipotético debian.edu.ni.
Para parecer más inteligente (y presumir un poco) todo lo vamos a hacer en dos comandos
hostnamectl set-hostname mail.debian.edu.ni echo "192.168.10.10 debian.edu.ni mail.debian.edu.ni" >> /etc/hosts
Los que se tomaron la molestia de hacer mis tutoriales de comandos básicos me entienden, son 8 tutoriales básicos, de verdad valen la pena, por cierto esto de agregar contenido a un archivo sin necesidad de usar un editor de texto se explica en el tercer tutorial, en caso de que quieran revisarlo.
Hacemos algunas pruebas para asegurarnos que todo está bien
hostname hostname -s hostname -f hostname -A
La salida de estos comandos se ve así:
root@debian32:~# hostname mail.debian.edu.ni root@debian32:~# hostname -s mail root@debian32:~# hostname -f debian.edu.ni root@debian32:~# hostname -A debian.edu.ni root@debian32:~#
También conviene revisar los ajustes del DNS
Nos aseguramos que estamos usando el servidor DNS adecuado
nano /etc/resolv.conf
Ponemos a nuestro servidor como primer DNS
nameserver 192.168.10.10 nameserver 192.168.8.1
Ahora verificar que el registro MX (Mail eXchange) fue creado correctamente
nslookup -type=mx debian.edu.ni
La respuesta debe ser algo similar a esto
root@debian32:~# nslookup -type=mx debian.edu.ni Server: 192.168.10.10 Address: 192.168.10.10#53 debian.edu.ni mail exchanger = 10 mail.debian.edu.ni.
Los linuxeros más puros van a querer usar dig
dig debian.edu.ni mx
A mí no me gusta porque la salida tiene demasiada información
root@debian32:~# dig debian.edu.ni mx ; <<>> DiG 9.10.3-P4-Debian <<>> debian.edu.ni mx ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17760 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;debian.edu.ni. IN MX ;; ANSWER SECTION: debian.edu.ni. 86400 IN MX 10 mail.debian.edu.ni. ;; AUTHORITY SECTION: debian.edu.ni. 86400 IN NS ns.debian.edu.ni. ;; ADDITIONAL SECTION: mail.debian.edu.ni. 86400 IN A 192.168.10.10 ns.debian.edu.ni. 86400 IN A 192.168.10.10 ;; Query time: 0 msec ;; SERVER: 192.168.10.10#53(192.168.10.10) ;; WHEN: Thu Nov 29 14:38:14 CST 2018 ;; MSG SIZE rcvd: 112 root@debian32:~#
Paso 2 – Instalar el servidor de correo Postfix en Debian
Instalamos el software necesario
apt-get install postfix
Durante la instalación aparecerán varias pantallas, aquí sus respuestas
- Postfix Configuration – Aceptar
- Sitio de Internet – Aceptar
- Aceptar
- Nombre del sistema de correo, ponemos el nombre del dominio que estamos configurando, en este caso debian.edu.ni – Aceptar
Si queremos configurar detalladamente todos los parámetros podemos utilizar
dpkg-reconfigure postfix
También van a salir varias pantallas, aquí sus respuestas
- Postfix Configuration – Aceptar
- Sitio de Internet – Aceptar
- Aceptar
- Nombre del sistema de correo, ponemos el nombre del dominio que estamos configurando, en este caso debian.edu.ni – Aceptar
- Recipiente de correo para el administrador y «postmaster» – aquí ponemos root@debian.edu.ni
- En la lista de dominios ponemos:
- debian.edu.ni, mail.debian.edu.ni, localhost.localdomain, localhost
- No forzar actualizaciones
- Bloques de red dejamos: 127.0.0.0/8 192.168.10.0/24 (o los bloques de red que tengamos configurados). Si tenemos IPv6, también hay que incluirlos
- Límite de buzón de correo lo dejamos en cero – 0
- Carácter de extensión lo dejamos en +
- Protocolos a usar – todos
Paso 3 – Configuración de Postfix en Debian 9.5
Copia de seguridad del archivo de configuración original
cp /etc/postfix/main.cf /etc/postfix/main.cf.original
Para configurar postfix, es necesario editar el archivo main.cf
nano -c /etc/postfix/main.cf
hay que editar varias líneas
#Línea 9 smtpd_banner = $myhostname ESMTP #Línea 35, nos aseguramos que diga: myhostname = mail.debian.edu.ni #Línea 36, agregamos mydomain = debian.edu.ni #Línea 39, nos aseguramos que diga mydestination = debian.edu.ni, mail.debian.edu.ni, localhost.localdomain, localhost
#Al final agregamos home_mailbox = Maildir/ # Configuracioens SMTP smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
Favor usar las variables myhostname, mydomain y mynetworks, según sea el caso para la red y el servidor que están configurando
El comando postconf -n permite identificar errores en la configuración
Reiniciamos postfix
systemctl restart postfix systemctl status postfix
Paso 3 – Instalar y Configurar Dovecot IMAP en Debian 9.5
Instalar el software necesario
apt-get install dovecot-core dovecot-imapd
Editamos el archivo de configuración /etc/dovecot/dovecot.conf
nano -c /etc/dovecot/dovecot.conf #Línea 30, quitamos comentario listen = *, ::
Ahora editamos el archivo /etc/dovecot/conf.d/10-auth.conf
nano -c /etc/dovecot/conf.d/10-auth.conf #Línea 10 disable_plaintext_auth = no #Línea 100 auth_mechanisms = plain login
Ahora editamos el archivo /etc/dovecot/conf.d/10-mail.conf
nano -c /etc/dovecot/conf.d/10-mail.conf #Línea 30 mail_location = maildir:~/Maildir
El último archivo de configuración a editar es /etc/dovecot/conf.d/10-master.conf
nano -c /etc/dovecot/conf.d/10-master.conf #Línea 96 y 97 quitar comentario, #después agregar… user = postfix y group = postfix #a la línea 100 también quitar comentario, #todo el bloque queda así: unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } Después de hacer todos los cambios reiniciamos los servicios
systemctl restart dovecot systemctl status dovecot
Paso 4 – Crear cuentas de usuario
En caso de que necesiten más información, la creación de usuarios paso a paso está bien explicada aquí, lo único que para recibir los correos necesitamos agregar el directorio Maildir en /etc/skel
mkdir /etc/skel/Maildir
Si ya había usuarios creados, se tendrá que crear este directorio manualmente en el directorio particular de cada usuario.
Creamos un usuario llamado juan
adduser juan
El procedimiento debe ser algo parecido a esto:
root@debian32:~# adduser juan Añadiendo el usuario `juan' ... Añadiendo el nuevo grupo `juan' (1001) ... Añadiendo el nuevo usuario `juan' (1001) con grupo `juan' ... Creando el directorio personal `/home/juan' ... Copiando los ficheros desde `/etc/skel' ... Introduzca la nueva contraseña de UNIX: Vuelva a escribir la nueva contraseña de UNIX: passwd: contraseña actualizada correctamente Cambiando la información de usuario para juan Introduzca el nuevo valor, o pulse INTRO para usar el valor predeterminado Nombre completo []: Juan Matus Número de habitación []: Teléfono del trabajo []: Teléfono de casa []: Otro []: ¿Es correcta la información? [S/n] S
Ahora, agregar otro usuario llamado pedro
adduser pedro
podemos revisar si el directorio Maildir se creó en el directorio particular de pedro
ls /home/pedro/
La salida de este comando se ve así:
root@debian32:~# ls /home/pedro/ Maildir root@debian32:~# Lo cual es correcto, porque el directorio Maildir se ha creado y el usuario podrá recibir los correos
Paso 5 – Instalar y configurar el Webmail
Primero instalar el software necesario
apt-get install apache2 php7.0 libapache2-mod-php7.0 php7.0-curl php7.0-xml
Como el servidor web ya está instalado, vamos a crear una carpeta virtual para instalar el webmail
cd /var/www/html/ ls mkdir webmail cd webmail
La salida de estos comandos debe ser algo similar a esto:
root@debian32:~# cd /var/www/html/ root@debian32:/var/www/html# ls cgi-enabled index.html root@debian32:/var/www/html# mkdir webmail root@debian32:/var/www/html# cd webmail/ root@debian32:/var/www/html/webmail#
Ahora descargamos e instalamos el cliente Webmail, si no están en el directorio correcto no va a funcionar
curl -sL https://repository.rainloop.net/installer.php | php
La salida de este comando es algo así:
root@debian32:/var/www/html/webmail# curl -sL https://repository.rainloop.net/installer.php | php #!/usr/bin/env php [RainLoop Webmail Installer] * Connecting to repository ... * Downloading package ... * Complete downloading! * Installing package ... * Complete installing! * [Success] Installation is finished! Ahora sí, vamos a lo bueno, accedemos vía Firefox a
http://localhost/webmail/?admin
Usuario: admin
Clave:12345
En general podemos cambiar el idioma a español, si de verdad lo van a implementar les recomiendo seguir las recomendaciones de seguridad.
El dominio lo agregamos en Dominios haciendo clic en Agregar dominio, hay que completar todo lo señalado en verde
Cerramos la sesión como administrador e iniciamos sesión como pedro, la idea es enviarle un correo a juan.
Tenemos que iniciar sesión en: http://localhost/webmail/
Usuario: pedro@debian.edu.ni
Contraseña: La contraseña de pedro
Una vez adentro hacemos clic en nuevo para escribirle el corro a juan
Escribimos el correo y lo enviamos, favor recordar que el destinatario es juan@debian.edu.ni
Luego de enviar el correo, cerramos la sesión y entramos con el otro usuario, es decir juan
Si podemos ver el correo que enviamos anteriormente, entonces la configuración habrá sido todo un éxito
Muchas felicidades, tenemos un servidor de correo operativo y funcional
Puedo explicarles la manera con figurar un servidor de correo con Zimbra, pero es más complicado y más difícil, déjenme un mensaje en los comentarios
Fuente
https://www.tecmint.com/install-postfix-mail-server-with-webmail-in-debian/
Video 1 de 5
Video 2 de 5
Video 3 de 5
Video 4 de 5
Video 5 de 5