Para hacer funcionar nuestro servidor de correo s en Ubuntu vamos a necesitar tres elementos fundamentales:
· Mail Transfer Agent (MTA)
· Mail Delivery Agent (MDA)
· Webserver (por ejemplo: Apache)
Pasos previos
· Cambiar ip del servidor: nano /etc/networking/interfaces
o Se mueve el servidor al segmento de red que va a atender, es este caso a 192.168.56.0
#línea para que sirva la IP estática
auto eth0
iface eth0 inet static
address 192.168.56.3
gateway 192.168.56.254
netmask 255.255.255.0
network 192.168.56.0
broadcast 192.168.56.255
· Configurar el servidor DNS en caso de que se desee usar en conjunto con nuestro servidor de correo electrónico:
o Los pasos para realizar esta tarea no nos competen en este manual, por lo que se deja como tarea al lector su implementación.
Proceso Mail Transfer Agent (MTA)[1]
Para nuestro caso hemos elegido: postfix
· Instalación de los paquetes necesarios:
o sudo apt-get install postfix
o sudo apt-get install mailx
o
sudo
apt-get
install
mailutils
· Ahora crearemos nuestro usuarios que emplearan nuestro sistema de correos (debido a la opción que elegimos en los cuadros de diálogos anteriores, estos usuario coinciden con las cuentas que tenemos en nuestro sistema operativo)
o Creamos nuestro usuario: sudo useradd -m -s /bin/bash [username]
o
Asignamos una contraseña a nuestro usuario: sudo
passwd
[username]
· Ahora que hemos creado nuestros usuarios realizamos una prueba con el comando:
netcat localhost 25 y debería mostrarnos algo como esto:
220 localhost ESMTP Postfix (Ubuntu)
Nota: Para salirnos copiamos ‘quit’ y presionamos ‘Enter’
· Ahora configuramos nuestro buzón de correos usando los siguientes comandos
o
Especificamos la dirección física donde en nuestro Linux donde se almacenar los mensajes de cada usuario, en este caso, será en /home/[usuario]/Maildir: sudo
postconf -e
"home_mailbox = Maildir/"
o
En este caso no especificaremos ningún comando para nuestro buzón de correos: sudo
postconf -e
"mailbox_command =
· Si deseamos que nuestro MTA escuche peticiones en otras interfaces deberemos configurarlo en el archivo de configuración /etc/postfix/main.cf de la siguiente manera:
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=no
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
myhostname = zonasara.com.co
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = zonasara.com.co, ubuntu.lan, localhost.lan, localhost
relayhost =
mynetworks = 127.0.0.0/8, 192.168.56.0/24, [::ffff:127.0.0.0]/104, [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = 192.168.56.3, 127.0.0.1
default_transport = error
relay_transport = error
home_mailbox = Maildir/
mailbox_command =
Nota: con la línea:
ü inet_interfaces = 192.168.56.3, 127.0.0.1 especifica las ip por las cuales se van a escuchar peticiones.
ü mynetworks = 127.0.0.0/8, 192.168.56.0/24, [::ffff:127.0.0.0]/104, [::1]/128 especifica que redes o host específicos se pueden conectar a nuestro servidor de correos, ejemplo:
Dirección ip | significado |
127.0.0.0/8 | Interface de loopback, nos permite utilizar el servicio con el comando: telnet localhost 25 |
192.168.56.0/24 | Permite conexiones desde un host ubicado en la red 192.168.56.0/24 |
192.168.65.5 | Habilita únicamente a este host para utilizar el servicio |
· Reiniciamos el servicio postfix:
sudo
/etc/init.d/postfix restart
Ahora que hemos configurado nuestro MTA, pasamos a configurar nuestro MDA:
Proceso Mail Delivery Agent (MDA)
Para nuestro caso hemos elegido: Dovecot. Este elemento soporta ambos protocolos el acceso a nuestro correos (IMAP yPOP3).
· Instalamos los paquetes que necesitemos usando el comando:
Si queremos IMPA y POP3:
sudo
apt-get
install
dovecot-imapd dovecot-pop3d
Si queremos IMPA:
sudo
apt-get
install
dovecot-imapd
Si queremos POP3:
sudo
apt-get
install
dovecot-pop3d
· Verificamos que los siguientes parámetros estén configurados dependiendo de los protocolos que instalamos en el paso en el archivo: /etc/dovecot/dovecot.conf
o
protocols = pop3 pop3s imap imaps
o
pop3_uidl_format = %08Xu%08Xv
o ##Para permitir el acceso remoto desde cualquier ip
listen = *
o #si deseamos autentificacion con texto plano
disable_plaintext_auth = no
o
## only set it to no, if the server is to be used with virtual account or internally, else ignore this setting
disable_plaintext_auth = no
o
##the mailbox of each account will be at /home/[user]/Maildir
mail_location = maildir:/home/%u/Maildir
·
Iniciamos el servicio dovecot con el comando: /etc/init.d/dovecot start
En este punto nuestro servidor de correo ya está configurado y listo para funcionar. La utilización de un cliente web está a discreción del lector.
[1] El proceso de instalación del Mail Tranfer Agent es basado en la pagina web: http://www.cowcomputing.com/2010/01/22/simple-mail-server-setup-on-ubuntu-step-by-step-guide/