Para tener más completo nuestro servidor web, es interesante tener en cuenta el instalar un servidor de correo electrónico. Muy útil y nos servirá para realizar todas las pruebas que necesitemos en nuestros futuros desarrollos.
Lo primero es instalar un servidor de correo electrónico. Nosotros hemos optado por elegir PostFix.
sudo apt-get install postfix
La instalación nos pedirá que configuremos, o mejor dicho, que seleccionemos las opciones que más se adaptan a nuestras necesidades.
- Presionamos la tecla Intro, puesto que tan solo nos muestra información sobre la primera opción
- Ahora dejamos la que viene por defecto «Sitio de Internet» y presionamos Intro
- En este paso indicamos el nombre del dominio, en nuestro caso desarrollo.com puesto que se trata de nuestro servidor local de desarrollo
- Ya lo tenemos instalado, pero faltan unos detalles en cuanto a la configuración se refieren y tenemos que abrir:
sudo gedit /etc/postfix/main.cf
Y al final del fichero añadimos:
inet_protocols = ipv4 home_mailbox = Maildir/
Sirve para indicar que se utilizará el protocolo de red IPv4 y cual será el directorio donde se almacenarán los correos electrónicos. Tenemos que observar con detenimiento el fichero y buscar la siguiente línea mydestination que ha de ser igual a nuestro nombre de servidor. Como ya sabéis en nuestro caso es desarrollo.com Si todo está Ok podemos pasar al reseteo del servidor de correo:
sudo /etc/init.d/postfix restart
Ahora necesitamos instalar un par de servicios que nos permitirán tener bien configurado nuestro servidor de correo de forma correcta. Hemos de instalar Courier PoP y Courier IMAP
sudo apt-get install courier-pop
Al instalarlo nos realizará una pregunta, por defecto viene señalado el no pero podemos fácilmente seleccionar el sí, de hecho, si seleccionamos el sí, tan solo existirá un fichero de configuración para el servicio y podremos gestionarlo fácilmente desde nuestro Webmin.
Ahora instalamos Courier IMAP
sudo apt-get install courier-imap
¿Qué nos falta? Claro, nos falta la interfaz gráfica para poder utilizar nuestras cuentas de correo, ¿verdad? Pues bien, nosotros hemos optado por instalar SquirrelMail, que es una aplicación webmail basada en php que nos permitirá gestionar nuestro correo electrónico.
sudo apt-get install squirrelmail
Ahora necesitamos configurarlo:
squirrelmail-configure
Al teclear esta instrucción en la consola nos aparecerá la aplicación de gestión del aplicativo. Seguimos los pasos:
- Seleccionamos la Opción D (teclear D y pulsar Intro): Set pre-defined settings for specific imap servers
- Después tecleamos courier y pulsamos intro
- Pulsamos una tecla para continuar
- Ahora seleccionamos la opción 2 y pulsamos intro
- Ahora seleccionamos la opción 1 y pulsamos intro
- A continuación tecleamos el nombre de nuestro dominio desarrollo.com y pulsamos intro
- Para finalizar pulsamos la tecla Q para salir y guardamos los cambios
Para poder acceder al SquirrelMail desde la web, tenemos que crear un enlace simbólico. ¿Cómo? Pues con dos sencillos comandos:
cd /var/www
sudo ln -s /usr/share/squirrelmail webmail
Ahora ya podemos visitar nuestro webmail en nuestro servidor de desarrollo. Si lo has hecho todo bien http://localhost/webmail debería de funcionarte correctamente.
Muy buen post, sin embargo algo no me salio ya que al terminar y darle clic en http://localhost/wemail me aparece has escogido abrir un archivo PHTML estoy utilizando el Ubuntu 11.04
Necesitas configurar tu servidor Apache para que pueda procesar los ficheros PHTML. ¿Cómo? Muy sencillo:
Abres una consola y tecleas (recuerda que el símbolo de dólar tan solo es un indicador que confirma que es un comando):
$ sudo vi /etc/apache2/mods-available/dir.conf
Y cambiamos lo siguiente:
#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml index.phtml
Ahora tenemos que reiniciar el servidor de Apache
$ sudo /etc/init.d/apache2 restart
Y ya está, ahora debería correrte a la perfección.
Muy bueno el manual! me ha ayudado mucho! pero cuando estoy dentro de squirrelmail e intento enviar un correo, me da este error:
ERROR:
Message not sent. Server replied:
Connection refused
111 Can’t open SMTP stream.
Sabes a que puede ser debido? Gracias! he mirado la configuración y esta todo bien!
Prueba con lo siguiente:
Edita el fichero /etc/exim.conf
-Donde dice:
#daemon_smtp_ports = 25 : 587
daemon_smtp_ports = 25
Lo cambias por:
daemon_smtp_ports = 25 : 587
#daemon_smtp_ports = 25
A ver que resultado te da!
Consulta ise todo lo que sale aki todo bien pero no me envia mail a ningun sitio que puede ser el problema ????? asta intento enviar mail al mismo user y nada
Si no aportas más datos sobre el error… No podemos ayudarte. No envía mails pero, ¿responde con algún error, advertencia,…?
Excelente post. Es un muy buen punto de partida. Estoy administrando mi servidor por CLI y tambien por Webmin y algo que tuve que hacer fue:
mkdir -p /etc/skel/Maildir/{cur,new,tmp}
Este comando crea carpetas Maildir para todos los usuarios que crees.Si queres crear el Maildir para usuarios que ya habias creado, digitas:
mkdir -p /home/nombredeusuario/Maildir{cur,new,tmp}
Gracias de nuevo!!!
Muy interesante, creo que debería actualizar el post con estos comandos ¿verdad? XD
Muchas gracias compañero!
Hola como estas mira, a mi me ocurre lo siguiente, sigo todos los pasos, y al querer ingresar con un usuario me tira el siguiente error:
ERROR: Connection dropped by IMAP server.
Ya voy haciendo los pasos 2 veces pero resulta lo mismo, y no encuentro a nadie que me pueda decir cual sera el incoveniente. lo que si no instale el servidio de DNS, sera este el problema????
Saludos y gracias
A ver compañero, abre el fichero de log para ver que nos chiva en tu caso. ¿Puede que encuentres estos errores en él?
– [Fecha/Hora] mipc dovecot: IMAP(usuario): mail_location not set and autodetection failed: Mail storage autodetection failed with home=/home/usuario
– [Fecha/Hora] mipc dovecot: IMAP(usuario): Fatal: Namespace initialization failed
Si es así, prueba con lo siguiente:
1: Modificar el archivo dovecot
$ sudo gedit /etc/dovecot/dovecot.conf
Buscar:
# See for full list.
# Some examples:
#
# mail_location = maildir:~/Maildir
# mail_location = mbox:~/mail:INBOX=/var/mail/%u
# mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
#
#
#
Y añade o modifica esta línea justo después de lo anterior
mail_location = mbox:~/mail:INBOX=/var/mail/%u
Ahora deberías tener una carpeta «mail» en tu «home», si no es así, aprovecharemos el comando que nos brinda otro compadre para crear las carpetas pertinentes para el nuevo (nuestro) usuario de mailing:
mkdir -p /home/nombredeusuario/Maildir{cur,new,tmp}
Espero que te halla servido de ayuda. Ya nos comentas que tal.
No es necesario instalar el servicio DNS.
Debo corregir el comando que sugeri :
ERRONEA
mkdir -p /home/nombredeusuario/Maildir{cur,new,tmp}
CORRECTA
mkdir -p /home/nombredeusuario/Maildir/{cur,new,tmp}
Debes crear carpetas Maildir si le estas indicando en el archivo de configuracion que busque Maildir (# mail_location = maildir:~/Maildir)
Espero te sirva
A ver que nos comenta Carlos, ojalá pueda solventar el error. Y sí, es cierto, no es necesario configurar un servidor DNS, esta instalación es para servidores corporativos en los que ya lo hay o es necesaria su instalación para otros menesteres y como tal, se ha de configurar para que reconozca nuestro mail server. De todos modos obtiene una buena solución, esperemos que nos comente que tal le fue o si el error no va por ahí. Todos estamos sedientos de aprender más y más.
Gracias de nuevo @gerardocastroa
Hola, perdona mi ignorancia pero estoy en el mismo error que carlos.
Donde puedo ver el log? he intentado entrar en el dovecot pero creo que no lo tengo..
Gracias
Con gust Alex.
De hecho me interesa mucho ver como se continua desarrollando la discusion acerca de este post ya que debo configurar este servidor para varios cientos de usuarios…
Saludos y gracias a vos por subir esta guia.
De momento que tal va? Todo ok? Espero que funcione de forma adecuada tu servidor de correo. Si tienes alguna curiosidad más adelante, esta es tu casa.
Hola Alex. Buen tutorial y mejores explicaciones. Me ha surgido un problema. Lo instalo todo perfectamente (Ubuntu 11.04) y cuando intento acceder al servicio a través del navegador (http://localhost/webmail/src/login.php) no se que nombre de usuario y contraseña debo utilizar. Ahora que lo pienso desde que empezé instalando mysql, apache2, postfix y courier solo he especificado nombre de usuario y contraseña para mysql… Deberá también de hacerse algo parecido para el servicio SMTP o POP/IMAP, ¿no? En dicho caso, ¿dónde o cómo lo hago? Gracias por tu tiempo.
Saludos.
Deberías poder utilizar tu usuario de Ubuntu, es decir, nombredeusuario@localhost y la pass del mismo. Cada usuario en tu servidor, deberá contener en su carpeta de usuario un directorio llamado Maildir/ ¿Has probado a entrar con tu usuario y pass de linux? También puedes mirar este post, para administrar los servicios de tu servidor de forma rápida y sencilla con webmin.
Hola, que tal gracias por tu guia, estoy empezando a configurar squirremail en centos, en mi pc, (hice una instalacion rapida con un tutorial no muy cimpleto, si logro enviar correos entre usuarios de la misma pc pero hacia el exterior, hotmail no y nose como enviar hacia un usuario de otra pc en lan centos.) mi duda es si con esta guia puedo enviar correo desde squirremail a hotmail, y para usuarios entre pcs en red local en centos, como se indicaria?, gracias y disculpa apenas comienzo :).
En este post puedes encontrar respuesta a tu pregunta: http://albertomolina.wordpress.com/2009/01/04/configurar-postfix-a-traves-de-un-relay-host-autenticado-gmail/
Hola me gustaria saber que usuario y contraseña poner para poder accesar ya que el
nombreusuario@localhost y la constraseña del mismo no entra porfa
Bien, como veo que no estás muy al día con el tema, prueba a iniciarte utilizando una herramienta administrativa de forma gráfica y sin usar consola. Instala PostFix Admin: http://sourceforge.net/projects/postfixadmin/files/postfixadmin/postfixadmin-2.3.3/
Que tal, uso ubuntu 11.04 al instalar me da el siguente error: Se encontraron errores al procesar:
/var/cache/apt/archives/postfix_2.8.2-1ubuntu2.1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Alguna ayuda? gracias!
Encontré esta información en un artículo del siguiente blog: http://www.esdebian.org/articulos/23994/correcion-sistema-paquetes-cuando-no-te-deja-instalar Espero que te sirva. Ya nos cuentas que tal!
(Lamento no profundizar más en tu problema, pero andamos escasos de tiempo para contestar el blog últimamente. Así que espero de veras que te sirva la solución que exponen nuestros compañeros de esdebian.org (Que aun siendo Debian, para tu Ubuntu ha de funcionar). Ok??
Un saludo y disculpa las molestias!
Excelente tutorial.
Yo ya tengo instalado mi servidor de correo y funciona de manera LOCAL. La pregunta es la siguiente: Que debo de hacer para poder recibir y enviar a usuarios externos PJ junito@gamil.com.
Yo instale el postfix, el courrier-pop y el courrier-imap. Adicionalmente instale el mailx para poder enviar los mensajes por consola y el squirrelmail para poder ver los mensajes.
Muchas Gracias
Querido compañero, existe un How To en castellano de lo más sencillo para poder realizar lo que pides: http://pensandoenred.com/2010/01/01/configurar-postfix-con-gmail/ Ya nos cuentas que tal te fue.
Saludos y gracias por leernos!!!
No puedo acceder al webmail cuando pongo http://misitio.com/webmail en el browser, me dice: «objeto no encontrado», tengo instalado el xampp.
Podrías explicarnos brevemente que pasos seguiste para realizar la instalación? Deduzco que trabajas en Windows, ¿verdad?
Gracias por el blog… me ha servido de mucho, pero ahora no entiendo por que no me llegan correos de manera local, se envían pero no llegan.
Este es el log de envío de un correo:
Aug 28 21:54:09 correo imapd: LOGIN, user=edwin, ip=[::ffff:127.0.0.1], port=[34900], protocol=IMAP
Aug 28 21:54:09 correo imapd: LOGOUT, user=edwin, ip=[::ffff:127.0.0.1], headers=0, body=0, rcvd=137, sent=900, time=0
Aug 28 21:54:09 correo imapd: Connection, ip=[::ffff:127.0.0.1]
Aug 28 21:54:09 correo imapd: LOGIN, user=edwin, ip=[::ffff:127.0.0.1], port=[34901], protocol=IMAP
Aug 28 21:54:09 correo imapd: LOGOUT, user=edwin, ip=[::ffff:127.0.0.1], headers=0, body=0, rcvd=119, sent=900, time=0
Aug 28 21:56:40 correo postfix/smtpd[1209]: connect from localhost[127.0.0.1]
Aug 28 21:56:41 correo postfix/smtpd[1209]: 01BB822981: client=localhost[127.0.0.1]
Aug 28 21:56:41 correo postfix/cleanup[1214]: 01BB822981: message-id=
Aug 28 21:56:41 correo postfix/qmgr[932]: 01BB822981: from=, size=833, nrcpt=2 (queue active)
Aug 28 21:56:41 correo imapd: Connection, ip=[::ffff:127.0.0.1]
Aug 28 21:56:41 correo postfix/smtpd[1209]: disconnect from localhost[127.0.0.1]
Aug 28 21:56:41 correo postfix/local[1218]: 01BB822981: to=, relay=local, delay=0.15, delays=0.08/0.03/0/0.04, dsn=2.0.0, status=sent (delivered t$
Aug 28 21:56:41 correo postfix/local[1215]: 01BB822981: to=, relay=local, delay=0.15, delays=0.08/0.03/0/0.05, dsn=2.0.0, status=sent (delivered to c$
Aug 28 21:56:41 correo postfix/qmgr[932]: 01BB822981: removed
Aug 28 21:56:41 correo imapd: LOGIN, user=edwin, ip=[::ffff:127.0.0.1], port=[34903], protocol=IMAP
Aug 28 21:56:41 correo imapd: LOGOUT, user=edwin, ip=[::ffff:127.0.0.1], headers=0, body=0, rcvd=769, sent=203, time=0
Aug 28 21:56:41 correo imapd: Connection, ip=[::ffff:127.0.0.1]
Aug 28 21:56:41 correo imapd: LOGIN, user=edwin, ip=[::ffff:127.0.0.1], port=[34904], protocol=IMAP
Aug 28 21:56:41 correo imapd: LOGOUT, user=edwin, ip=[::ffff:127.0.0.1], headers=0, body=0, rcvd=119, sent=900, time=0
Los estás intentando enviar desde el mismo servidor? O son máquinas cliente mandando a un servidor?
Hola excelente este tutorial, te cuento que trabajo con ubuntu server 11,04 e instale el postfix, dovecot, curier-pop, curier-imap y squirrelmail. Entre los correos locales me envia y recibe perfectamente, pero cuando quiero enviar o recibir desde hotmail,gmail,etc.. no se efctua el envio, que podra estar sucediendo?? gracias de antemano
debes registrar tu dominio de correo «MX», esto normalmente lo hago llamando a mi provedor ISP de internet ellos te ayudan en eso, ahi otra forma pero no la se que es registrarlo por internet el MX, y pues por si las dudas tu servidor DNS apunta el mx a tu servidor de correo
muy buen post solo tengo una duda como administro usuarios para que utilicen el servisio….. Gracias
ok, como imagino abras creado usuarios al momento de instalar ubuntu.
Debes crear otro usuario con nombre y todo, por via de comandos (ctrl + alt + t):
$ useradd «nombre_del_usuario» oprimes enter
$ passwd «nombre_del_usuario» oprimes enter
Ojala se haga un manual de postfix con ubuntu 12.04 y 11.10 saca errores al sacar pop-courier
Hola, siguiendo el tutorial puedo enviar correos a servidores externos como hotmail, gmail, etc. pero no puedo recivir desde ellas, puedieras guiarme para detectar el problema, por ejemplo para ver si el dns está bien cofigurado y esas cosas.
Tengo midominio.com
y quiero usar direcciones tipo mail.midominio.com
si me puedes apoyar lo agradeceré mucho.
Saludos.
Necesitaría ver como configuraste tu servidor DNS y saber si realmente los puertos de escucha del correo están bien configurados. Otra opción podría ser una mala configuración de tu server de correo. Si das más detalles, quizás yo o la comunidad podamos ayudarte. Saludos y disculpa la demora, pero ando liadísimo. Gracias por leernos y si tienes ya la solución, si no es mucho pedir, coméntala para que todos aprendamos de tus errores. Así todos ganaremos en conocimientos. Gracias de nuevo.
De todas formas aqui tienes una guia completiiiisima en español de como instalar el servidor al completo, de pies a cabeza: http://blog.widplay.org/?p=58
Increible enlace! justo lo que buscaba. TODO EXPLICADITO!
IMPRESIONANTE APORTACIÓN ESTE MANUAL QUE PUBLICAS ANGEL! Ojala tenga un dia el suficiente conocimiento para hacer un manual similar.
Todo muy claro, paso a paso, e incluso poniendo de forma evidente como ahorrar miles de euros.
oye una mega preguntotaaaaaaa….al momento de terminar de configurar squirrelmail ya con lujo de cuidado he seguido los pasos…me sale este error….
###############################################R Return to Main Menu
C Turn color on
S Save data
Q Quit
Command >> Q
You have not saved your data.
Save? [Y/n]: y
Error saving config.php: Permission denied
Mis agradecimientos por las prontas atenciones prestadas
Arrturo Gil Ibarra
Una consulta, he seguido los pasos y puedo ingresar correctamente a Squirrelmail, pero los usuarios, las cuotas y demás, como y donde los creo? Muchas gracias.