Publica tu how-to

Dinos como hacer lo que sabes hacer, mándanos un email a wdonet@gmail.com y lo publicamos (dos días máximo) o si te interesa unirte al equipo de redactores, también háznoslo saber por correo.

Servidor de correos personal con postfix - Fetchmail

Con este post continuamos con el 'Servidor de correos personal con postfix'. Una vez configurados el MTA, el MDA y el MUA, quedan detalles por afinar...

Fetchmail es un programa para recuperar correos desde servidores remotos. En realidad no es más que un cliente para los protocolos POP, IMAP, entre otros, que en lugar de desplegar los mensajes de correo (como cualquier cliente convencional de estos protocolos) los descarga para que sean recibidos en la máquina especificada y leídos posteriormente.

Es útil para conexiones de internet intermitentes (que no siempre están en línea), o para mantener una bandeja de entrada sincronizada con un servicio de correo remoto, como será el caso de este tutorial.

Obra del renombrado hacker Eric S. Raymond, Fetchmail es incluso el ejemplo clásico utilizado en su escrito 'La Catedral y el Bazar' para ilustrar cómo el proceso de desarrollo open source es un éxito, y no un caso aislado como se pensaba hasta el momento del kernel Linux. Este escrito fue de hecho la chispa que encendió el furor por el open source en el mundo empresarial, con lo que Netscape liberó el código fuente de su navegador (del que Mozilla Firefox es su heredero), y demás aventuras y desventuras del mundo del open source y el software libre desde entonces (1998)...

Aquí lo vamos a utilizar para recuperar los correos de una cuenta de Gmail (aunque podría ser cualquier otra, ¡o varias! siempre y cuando acepten los protocolos POP, IMAP o similares) cada cierto tiempo.



Instalación
Fetchmail se puede descargar desde su sitio oficial. O como siempre, puede instalarse desde la distribución de GNU/Linux que se tenga. En el caso de Debian el paquete es fetchmail.

Si se desea también se puede instalar el paquete fetchmailconf que es un script en Python, modo gráfico, para configurar fácilmente el programa.


Configuración
Aunque se utilice fetchmailconf, aquí describiremos el tras bambalinas de la configuración de Fetchmail, para entender cómo funciona.

Todo se hace en archivos RC, que pueden ser por usuario (~/.fetchmailrc) o de todo el sistema (/etc/fetchmailrc).

El archivo deberá contener las siguientes líneas:

set postmaster "postmaster"
set bouncemail
set no spambounce
set properties ""
set daemon 600

poll pop.gmail.com with proto POP3 port 995
     user 'gmailuser@gmail.com' there with ssl with 
     password 'password' is 'usuarioservidor' here options
     keep
Obviamente, hay que editar la información pertinente para la cuenta de Gmail, el password y el nombre de usuario del sistema.

La línea daemon establece que fetchmail quedará ejecutándose en segundo plano, y que revisará por nuevos correos en la o las cuentas especificadas cada 600 segundos (10 minutos).

Se pueden tener tantas líneas poll como se desee, una por cuenta de correo que se desee sincronizar.

Más información se encuentra en la documentación de Fetchmail.


Uso
Bastará habilitar el script de inicio del servicio de Fetchmail en /etc/init.d para comenzar a ejecutarlo.


¡Listo! el servidor de correo personal ya está tomando forma. Cada 600 segundos (o el tiempo que se hubiera especifidado), Fetchmail debería de revisar la bandeja de la cuenta establecida, y en caso de encontrar nuevos correos, descargarlos. De hecho en el archivo de log de Postfix (/var/log/mail.info) debería de observarse actividad, cada 600 segundos cuando se despierte Fetchmail y se vuelva a dormir, además de cuando llegue a descargar correos.


Por último, vamos a enfocarnos en la seguridad, en el caso particular de este tutorial, a protegernos del spam...

2 comentarios:

  1. Interesante serie de articulos, me han venido bien. Pero ahora una pregunta ¿Es posible por medio de postfix el recoger todos los correos de una cuenta sin tener que usar Fetchmail?
    Gracias por el curro que te has pegado
    Daniel

    ResponderEliminar
  2. bueno, la cuenta pertenece al mismo servidor al que postfix está dando servicio? Porque si es así, si, de hecho esa es una de sus funciones.
    Pero si hablamos de una cuenta externa, de otro dominio, como gmail o cualquier otro servidor SMTP diferente del servidor al que postfix está sirviendo, entonces no, no es posible, desde que esa no es la función de postfix...

    claro, igual estoy mal, pero hasta donde entiendo que funciona el software, no es su función recoger correos de otro servidor, para eso están programas como fetchmail...


    saludos

    ResponderEliminar

Que opinas sobre esta publicación?