La instalación del paquete fetchmail permite la descarga de e-mails alojados en servidores externos en nuestro servidor local. fetchmail soporta varios protocolos de acceso y esquemas de autenticación.
root@server:~# apt-get install fetchmail
La configuración será definida por el usuario. Consiste en la creación del archivo de configuración de fetchmail y en la creación de una tarea periódica que ejecuto el fetchmail para que recoja los e-mails.
Cada usuario debe crear en su home el archivo .fetchmailrc.
Por ejemplo, el usuario fribeiro deberá guardar su configuración personal de fetchmail en /home/fribeiro/.fetchmailrc:
poll pop.gmail.com proto pop3 user "pinguim.ribeiro" pass "password" is "fribeiro@home.lan" options ssl keep
En este ejemplo, fetchmail descargará los e-mails del usuario pinguim.ribeiro del servidor pop.gmail.com, utilizando el protocolo pop3 y una conexión ssl, para luego redirigirlos al usuario fribeiro@home.lan.
La opción keep mantiene los mensajes en el servidor, lo que es útil en la fase de pruebas. Después, esta opción puede ser retirada. Con algunos servidores pop3, es necesario añadir la opción uidl, que obliga al cliente a mantener una lista de los mensajes ya descargados, lo que garantiza que los nuevos mensajes serán descargados.
Por seguridad, como el archivo contiene contraseñas, sólo puede ser accesible al propio usuario:
fribeiro@server:~$ chmod 600 .fetchmailrc
Luego, debe ser creada una tarea periódica para ejecutar el fetchmail cada 5 minutos, por ejemplo:
fribeiro@server:~$ crontab -e # m h dom mon dow command */5 * * * * /usr/bin/fetchmail &> /dev/null
Es posible probar la ejecución del fetchmail con el comando fetchmail -v, desde uno de los clientes:
fribeiro@server:~$ fetchmail -v fetchmail: 6.3.21 querying pop.gmail.com (protocol POP3) at Sun 26 May 2013 02:26:06 PM WEST: poll started Trying to connect to 173.194.67.108/995...connected. fetchmail: Server certificate: fetchmail: Issuer Organization: Google Inc fetchmail: Issuer CommonName: Google Internet Authority fetchmail: Subject CommonName: pop.gmail.com fetchmail: Subject Alternative Name: pop.gmail.com fetchmail: pop.gmail.com key fingerprint: 55:2B:58:4A:12:14:4F:98:1A:E6:C8:A4:08:40:0D:55 fetchmail: POP3< +OK Gpop ready for requests from 89.152.78.77 gc1pf13823368wic.15 fetchmail: POP3> CAPA fetchmail: POP3< +OK Capability list follows fetchmail: POP3< USER fetchmail: POP3< RESP-CODES fetchmail: POP3< EXPIRE 0 fetchmail: POP3< LOGIN-DELAY 300 fetchmail: POP3< TOP fetchmail: POP3< UIDL fetchmail: POP3< X-GOOGLE-VERHOEVEN fetchmail: POP3< X-GOOGLE-RICO fetchmail: POP3< . fetchmail: POP3> USER pinguim.ribeiro fetchmail: POP3< +OK send PASS fetchmail: POP3> PASS * fetchmail: POP3< +OK Welcome. fetchmail: POP3> STAT fetchmail: POP3< +OK 0 0 fetchmail: No mail for pinguim.ribeiro at pop.gmail.com fetchmail: POP3> QUIT fetchmail: POP3< +OK Farewell. fetchmail: 6.3.21 querying pop.gmail.com (protocol POP3) at Sun 26 May 2013 02:26:08 PM WEST: poll completed fetchmail: normal termination, status 1