Configuración de un servidor de correo electrónico: Dovecot-Postfix en Fedora 18 Jorge Enrique Castañeda Moyano Código 1150367 Jonathan Sandoval Ortega Código 1150125 Configuración servidor de correo electrónico con Dovecot-Postfix Un servidor de Correo electrónico es una maquina conectada a internet, que ofrece a los usuarios la posibilidad de envío y recepción de correos electrónicos a través de los protocolos estándar, del nivel de aplicación, de transmisión de correo electrónico a través de TCP/IP. Tipos de protocolos para la configuración de servidores de correo: 1. Que es SMTP Es un protocolo estándar de Internet, del Nivel de Aplicación utilizado, para la transmisión de correo electrónico a través de una conexión TCP/IP. Éste es, de hecho, el único protocolo utilizado para la transmisión de correo electrónico a través de Internet. Es un protocolo basado sobre texto y relativamente simple, donde se especifica un destinatario o múltiples destinatarios, en un mensaje que es transferido. A lo largo de los años han sido muchas las personas que han editado o contribuido a las especificaciones de SMTP, entre las cuales están Jon Postel, Eric Allman, Dave Crocker, Ned Freed, Randall Gellens, John Klensin y Keith Moore. Para determinar el servidor SMTP para un dominio dado, se utilizan los registros MX (Mail Exchanger) en la Zona de Autoridad correspondiente al ese mismo dominio contestado por un Servidor DNS. Después de establecerse una conexión entre el remitente (el cliente) y el destinatario (el servidor) se inicia una sesión SMTP. Instalando SMTP Antes de nada hay que instalar el paquete Postfix de los repositorios. Una vez instalado Postfix en el equipo, son dos los archivos de configuración que habrá que tener en cuenta a la hora de configurar Postfix del modo que mejor nos convenga. La mayor parte de la configuración se lleva a cabo en el fichero main.cf, ya que la funcionalidad primordial del master.cf es la de definir cómo un programa se conecta a un servicio y que dominio corre cuando un servicio es solicitado. 1.- Especificar el Hostname y el Dominio de la máquina: myhostname = joalsaor.asor.local 2.- Indicar el dominio del cual llega el correo local: myorigin = $mydomain 3.- Indicar en que interfaces estará Postfix escuchando en el puerto 25. Si no se le indica nada solo escuchará por defecto en localhost: inet_interfaces = all 4.- Indicar la lista de dominios que la máquina considerará como destino final para el que aceptara el correo: mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain 5.- Para que los clientes de nuestro servidor de correo puedan enviar correos a través de nuestro servidor, debe de habilitarse el relay en la variable mynetworks: mynetworks_style = subnet mynetworks = 192.168.0.0./16, 127.0.0.0/8 Un open relay es cuando un servidor SMTP permite enviar correo a destinatiarios que no pertenecen a nuestro dominio. Un servidor solo ha de ser open relay para sus redes de confianza y redes locales, NUNCA para IP’s que no son de nuestra red, es decir, para los que no estén en la variable mynetworks. Si se quiere que el servidor de correo electrónico envie correo a otros servidores hay que asignar ip´s fijas que permitan acceder mas direcciones. 6.- Tras realizar esta configuración básica inicial se rearranca Postfix (postfix restart) para comprobar que los cambios realizados funcionan correctamente. Puede realizarse una prueba manual de que el correo funciona: telnet 127.0.0.1 25 Trying 127.0.0.1… Connected to 127.0.0.1. Escape carácter is ‘^]’. 220 mail.pfc-server.com ESMTP Postfix mail from: admin.@pfc-server.com 250 Ok rcpt to: admin.@pfc-server.com 250 Ok data 354 End data with <CR><LF><CR><LF> #ejecutando prueba para saber si envio correo 250 Ok: queued as A7CBC33A9C 221 Bye Connection closed by foreign host. Haciendo cat /var/spool/mail/admin Podrá comprobarse si el correo ha llegado al usuario local root. 2. Que es POP3 Es un protocolo estándar de Internet, del Nivel de Aplicación, que recupera el correo electrónico desde un servidor remoto a través de una conexión TCP/IP desde un cliente local. El diseño de POP3 y sus predecesores es permitir a los usuarios recuperar el correo electrónico, mientras están conectados en una red y manipular los mensajes recuperados sin necesidad de permanecer conectados. A pesar de que muchos clientes de correo electrónico incluyen soporte para dejar el correo en el servidor, todos los clientes de POP3 recuperan todos los mensajes y los almacenan como mensajes nuevos en la computadora o anfitrión, utilizado por el usuario, eliminan los mensajes en el servidor y terminan la conexión. Después de establecerse una conexión entre el cliente y el servidor, se inicia una sesión POP3. Instalando y configurando POP3 Habiendo instalado dovecot [root@mail ~]# yum -y install dovecot [root@mail ~]# vi /etc/dovecot/dovecot.conf # line 21: Adicionar una nueva linea protocols = imap imaps pop3 pop3s lmtp # line 27: descomentar y cambiar pero sólo si usa Ipv6 listen = * [root@mail ~]# vi /etc/dovecot/conf.d/10-auth.conf # line 9: Descomentar disable_plaintext_auth = no # line 99: Adicionar la linea auth_mechanisms = plain login [root@mail ~]# vi /etc/dovecot/conf.d/10-mail.conf # line 30: descomentar y cambiar mail_location = maildir:~/Maildir [root@mail ~]# vi /etc/dovecot/conf.d/10-master.conf # line 96-98: descomentar y cambiar # Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix # add group = postfix # add } [root@mail ~]# vi /etc/dovecot/conf.d/10-ssl.conf # line 8: cambiar pero no usar ssl ssl = no [root@mail ~]# systemctl start dovecot.service [root@mail ~]# systemctl enable dovecot.service 3. Que es IMAP Es un protocolo estándar de Internet, del Nivel de Aplicación, utilizado para acceder hacia el correo electrónico almacenado en un servidor remoto, a través de una conexión TCP/IP desde un cliente local. La versión más reciente de IMAP es la 4, revisión 1 y está definida en el RFC 3501. IMAP trabaja sobre TCP en el puerto 143. Fue diseñado por Mark Crispin en 1986 como una alternativa más moderna que resolviera las deficiencias del protocolo POP3. Las características más importantes de IMAP incluyen: Soporte para los modos de operación conectado (connected) y desconectado (disconnected), permitiendo a los clientes de correo electrónico permanezcan conectados el mismo tiempo que su interfaz permanezca activa, descargando los mensajes, por partes o completos, conforme se necesite. A diferencia de POP3, permite accesos simultáneos desde múltiples clientes y proporciona los mecanismos necesarios para que éstos detecten los cambios hechos por otro cliente de correo electrónico que esté conectado de manera concurrente al mismo buzón de correo. Permite a los clientes obtener individualmente cualquier parte MIME (acrónimo de Multi-Purpose Internet Mail Extensions o Extensiones de correo de Internet de propósitos múltiples), así como también obtener porciones de las partes individuales o bien los mensajes completos. A través de banderas definidas en el protocolo, permite vigilar la información de estado de los mensajes de correo electrónico que se mantengan en el servidor. Por ejemplo, si el estado del mensaje es leído, no leído, respondido o eliminado. Incluye soporte para múltiples buzones de correo electrónico, permitiendo crear, renombrar o eliminar, mensajes de correo electrónico presentes en el servidor dentro de carpetas y mover estos mensajes entre distintas cuentas de correo electrónico. Esta característica también permite al servidor proporcionar acceso hacia los carpetas públicas y las compartidas. Incluye soporte para realizar búsquedas del lado del servidor a través de mecanismos que permiten obtener resultados de acuerdo a varios criterios, permitiendo evitar que los clientes de correo electrónico tengan que descargar todos los mensajes desde el servidor. Las especificaciones del protocolo IMAP definen un mecanismo explícito mediante el cual puede ser mejorada su funcionalidad a través de extensiones. Un ejemplo es la extensión IMAP IDLE, la cual permite sincronizar ente el servidor y el cliente a través de avisos. Después de establecerse una conexión entre el cliente y el servidor, se inicia una sesión IMAP. 4. Dovecot a. Que es dovecot Dovecot es un servidor de IMAP y POP3 de código abierto para sistemas GNU/Linux / UNIX-like en la que se basa en la seguridad como su fuerte de trabajo. b. Instalacion Para la instalación y configuración de dovecot en Fedora 18 se deben seguir los siguientes pasos: 1. Instalar los paquetes con la instrucción: yum install dovecot o yum -y install dovecot, con la segunda opción las preguntas que realice el sistema durante la instalación serán respondidas con Si (Yes). 2. En /etc/dovecot/conf.d/10-mail.conf añadimos en la línea 30: mail_location = maildir:~/Maildir 3. En /etc/dovecot/dovecot.conf modificamos: Linea 20: Quitar el # protocols = imap pop3 lmtp Linea 67: Quitar el #, listen = * , :: 4. En /etc/dovecot/conf.d/10-auth.conf modificamos: Linea 9: Quitamos el # y habilitamos la autenticación con texto plano disable_plaintext_auth = no Linea 99: Añadimos login al texto,quedando la línea auth_mechanisms = plain login 5. En /etc/dovecot/conf.d/10-master.conf modificamos: Línea 96 – 99: Quitamos los # y modificamos el texto así # Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } 5. En /etc/dovecot/conf.d/10-ssl.conf modificamos: Linea 8: Deshabilitamos el ssl Ssl = no 6. Modificamos el archivo /etc/postfix/main.cf, añadiendo lo siguiente: Línea 264: Descomentar y especificar la LAN mynetworks = 127.0.0.0/8, 192.168.254.0/24 Linea 574: agregar el texto Smtpd_banner = $myhostname ESMTP Al final del documento añadir las líneas: 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_client_restrictions = permit_mynetworks,reject_unknown_client,permit smtpd_recipient_restrictions =permit_mynetworks, permit_auth_destination, permit_sasl_authenticated, reject_unauth_destination 7. Postfix a. Que es Postfix Postfix es un servidor de correo de software libre / código abierto, un programa informático para el enrutamiento y envío de correo electrónico, creado con la intención de que sea una alternativa más rápida, fácil de administrar y segura al ampliamente utilizado Sendmail. Anteriormente conocido como VMailer e IBM Secure Mailer. b. Instalacion Para la instalación y configuración de postfix en Fedora 18 se deben seguir los siguientes pasos: 1. Instalar los paquetes con la instrucción: yum install postfix o yum -y install postfix, con la segunda opción las preguntas que realice el sistema durante la instalación serán respondidas con Si (Yes). 2. Utilizamos la instrucción nano /etc/postfix/main.cf para editar este archivo, las configuraciones que debemos editar son: Línea 75: quitar el # y especificar el hostname hostname = mail.jc.asor.local Línea 83: quitar el # y especificar el dominio mydomain = jc.asor.local Línea 99: quitar el # myorigin = $mydomain Línea 115: quitar el # inet_interfaces = all Línea 166: añadir la línea mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain Línea 419: quitar el # Home_mailbox = Maildir/ 3. Fedora 18 por defecto viene instalado con el servicio Sendmail, que es un MTA (Mail Transfer Agent) al igual que postfix, por lo que debemos desactivarlo con las siguientes instrucciones en la consola: $ systemctl stop sendmail.service $ systemctl disable sendmail.service Ahora se va a establecer a postfix como el MTA por defecto, para ello ejecutamos la siguiente instrucción: $ alternatives --config mta Esta acción mostrara un mensaje como el siguiente: Escribimos el número 2 y pulsamos enter. 4. Habilitamos el servicio postfix con los siguientes comandos: $ sytemctl start postfix.service $ systemctl enable postfix.service 5. Para que el sistema cree la carpeta /Maildir automáticamente al añadir un usuario al sistema, realizamos las siguientes acciones: $ mkdir /etc/skel/Maildir $ nano /etc/skel/.muttrc de Maildir. Para crear la carpeta Para que el proceso mutt pueda leer el contenido Dentro del archivo escribimos: set mbox_type=Maildir set folder=”~/Maildir” set mask=”!^\\.[^.]“ set mbox=”~/Maildir” set record=”+.Sent” set postponed=”+.Drafts” set spoolfile=”~/Maildir” 8. Bibliografia http://www.server-world.info/en/note?os=Fedora_18&p=mail&f=1 http://www.alcancelibre.org/staticpages/index.php/introduccion-protocolos-correo http://misnotasdelinux.wordpress.com/2011/07/26/como-instalar-un-servidor-postfix-i/ http://docs.fedoraproject.org/en-US/Fedora/16/html/System_Administrators_Guide/chMail_Servers.html