Documentos de Académico
Documentos de Profesional
Documentos de Cultura
porAlejandroMoreno
amperisblog[@]gmail.com
http://www.amperisblog.com
14deseptiembre2009
Configuracinyusodefetchmail
Introduccin
FetchmailesunutilidadLinuxparalarecuperacinyreenvodecorreoselectrnicosdesdeun
mailserveralamaquinalocaldondeseejecuta.EscapazdeaccederabuzonesPOPoIMAP
bajodiferentesmtodosdeautentificacin.
Puedefuncionardedosmanerasdiferentes:
1. modosigledrop:todosloscorreosdelbuznaccedidoporFetchamilvanaunmismo
destinatario,yaseaelusuariodelamaquinalocaldondeseejecutaFetchmailuotroque
deberserespecificadoenlaconfiguracin.
2. modo multidrop: todos los correos del buzn accedido por Fetchmail pueden ir a
multituddeusuariosdiferentes.PorestemotivoFetchmaildebebuscardentrodelos
encabezadosdelcorreoeldestinatarioreal.SutrabajoesmuyparecidoaldeunMTA
perotenemosquetenerpresentequealdescargarelcorreobajoPOP/IMAPesposible
queFetchmailnoencuentrecorrectamenteeldestinatario.Estonospuedepasarpor
ejemploconcorreoselectrnicosdelistasocorreosconcopiasocultas.
LosprotocolosPOP/IMAPnofueronpensadoparaenrutarcorreocomopuedeserel
SMTP.
Fetchmailsigueelsiguienteordenparaaveriguarquieneselorigendelmensaje:
ReturnPath:
ResentSender:
Sender:
ResentFrom:
From:
ReplyTo:
ApparentlyFrom:
Fetchmailesunautilidaddelineadecomandosquepuedefuncionarcomodaemonleyendosu
archivodeconfiguracinquegeneralmenteseencuentraen~/.fetchmailrc.
Instalacin
Fetchmail se puede instalar directamente desde cualquier herramienta de actualizacin
automarica(aptoyum).Tambinesposibledescargassuultimaversin,la6.3.11,desdela
Webdelautor(http://fetchmail.berlios.de).
#aptgetinstallfetchmail(paraDebian's)
#yuminstallfetchmail(paraRedHat's)
#touch~/.fetchmailrc
#chmod0700~/.fetchmailrc
2
Configuracinyusodefetchmail
Configuracin
EmpezamosescribiendoelarchivodeconfiguracindeFetchmailquebsicamenteconsisteen
decirle cuales son los buzones (POP o IMAP) a los que debe acceder. Un ejemplo de
configuracinseraalgocomoas:
setlogfile/var/log/fetchmail.log
pollpop.miserver.com
protopop3
localmiserver.com
userbuzon@miserver.com
pass1234
Elarchivodeconfiguracinsecomponededospartes,laconfiguracingeneralylaconfiguracinde
cadaunodelosservidoresdondedebemosacceder.
Opcionesdelaconfiguracingeneral:
Opcionesdeconfiguracindelosbuzones:
1. via|poll:especificalaIPoelnombreDNSdelservidordondeseencuentraelbuzn.
2. proto:especificaelprotocoloparaaccederalbuzn.Puedeser:POP2,POP3,IMAP,APOP,
KPOP.
3. local:especificalosdominiosquedebenconsiderarsecomolocales.
4. timeout:especificauntimeout.Pasadoestetimeoutsecancelaelaccesoyseesperahastael
siguiente.Pordefectoson300segundos.
5. user:especificaelnombredeusuariodeaccesoalbuzn.
6. pass:especificalacontraseadeaccesoalbuzn.
7. ssl:seconectaalservidorbajoelprotocolosegurossl.
8. sslcertck:obligamosafetchmailaquecompruebelavalidezdelcertificadodelservidorconel
conjuntodecertificadosdelamaquinalocal.Verlaopcinsslcertpath.
9. sslcertpath:indicalarutaendondeseencuentraninstaladosloscertificadoslocales.
10. tracepolls:aadeunacabeceradeReceivedenelcorreoelectrnicoparaindicarqueesecorreo
apasadoporFetchmailantesdeserentregado.
11. smtphost:indicaunoovarioshostaloscualessernreenviadosloscorreos.Pordefectoes
localhost.
12. preconnect|postconnect:programasoscriptsquequeremosejecutarantes|despusderealizar
elfetchdeloscorreos.
13. uidl: si utilizamos POP3,el correo una vez descargado porel fetchmail permanecer enel
servidor.
14. nouidl:siutilizamosPOP3,unavezdescargadoelcorreodelservidor,estsereliminado.Es
elfuncionamientopordefecto.
15. fetchall:descargamostodoslosmensajessehayanvistoono.
16. nofetchall:descargasololosmensajesnuevos.Pordefecto.
3
Configuracinyusodefetchmail
17. fetchlimit:nmeromximodemensajesquepodemosdescargarduranteunaconexinconel
servidor.
18. flush:unavezdescargadoslosmensajesdelservidor,estossonborrados.
19. defaults:estableceunaseriedeopcionescomopordefectoparatodoslosservidores.
20. to|is:indicaelusuariolocalparaelcualsonloscorreos.
21. envelope:especificaelnombreoriginalquetienelacabeceradeenvelope.
Ejemplos
+ElusuariolocalasanchezaccedeasucuentadecorreodeYahoovaPOP3.
defaults
flush
fetchall
protopop3
pollpop.yahoo.com
userasanchez@yahoo.com
pass123456
toasanchez
+Lacuentadecorreobackup@gmail.comseutilizacomobackupdecorreodenuestroservidorPostfix.
Loscorreosdeestacuentadebenenrutarseacadaunodelosbuzonesdesusdestinatarios.
setlogfile"/var/log/fetchmail.log"
setspambounce
pollpop.gmail.com
protopop3
nodns
localmidominio.com
user"backup@gmail.com"
pass"123456"
sslsslcertck
sslcertpath"/root/.certs"
is*
fetchall
+Elusuarioasanchezutilizafetchmailparaaccederasubuzn,perotieneproblemasconlaslistasde
distribucinyaquenolelleganingncorreo.
Esteproblemaesnormalcuandofetchmailnosabeidentificarexactamentealdestinatariodelmensaje.En
estecasovemoscomoenelcampoTo:encontramosalgocomolistazimbra@google.comquerealmente
noeselusuariofinal.Elusuariofinaldelmensajeloencontramosenunacabeceranoestandarddel
protocoloSMTPllamadaXEnvelopeto.Dadoqueestacabeceranoesestandardfetchmailnecesita
sabercomosellamaencasodetenerquebuscareldestinatariofinal.Enelcasoqueselepresentaa
asanchez,noencuentraeldestinatarioporquesuISPllamaaestacabeceraconelnombredeXOriginal
to.
Debemosindicrseloafetchmaildelasiguienteforma:
pollmail.servermail.uk
envelope"XOriginalTo"
localservermail.uk
user"info@servermail.uk"
pass"12345"
4
Configuracinyusodefetchmail
Ayudaparalaescrituradelaconfiguracin
ExisteunautilidadGUIllamadafetchmailconfquenospermiteescribirtodaestaconfiguracindeuna
maneramuchomsfcilsinsabercomofuncionancadaunadelasopciones.
Arrancarelservicio
Unavezconfiguradonuestro~/.fetchmailrceshoradearrancareldaemonquecadaciertotiempo
irleyendodecadaunodelosbuzonesquehayamosconfigurado.Explicartrescomandos
bsicos:elinicioenmododebug,elinicionormalylaparada.
Enelinicioenmododebugdebemosutilizarelparmetrov.Elparmetrodindicacadacuantotiempo
ensegundosdebemosaccederalbuzn.Lgicamentesiestamosenmododebugpodremosunospocos
minutos,delocontrariotendremosqueesperarbastantesiqueremosqueelbuznvuelvaaseraccedido.
#fetchmaildXXXv
Elelarranquenormalsimplementeutilizaremoselparmetrosd.
#fetchmaildXXX
Paralaparadadeldaemonutilizaremoselparmetroq.
#fetchmailq
Podemoscomprobarqueeldaemonestfuncionadomirandolosprocesos:
#psx|grepfetchmail
25435 ? Ss 0:00 fetchmaild60v
Paralosmsperezososesposiblecrearunscriptdearranqueyparadadefetchmaildentrode/etc/init.d:
#catfetchmail
#!/bin/sh
case"$1"in
5
Configuracinyusodefetchmail
'start')
echon"Startingfetchmail..."
fetchmaild60v
touch/var/lock/subsys/fetchmail
;;
'stop')
echon"Shuttingdownfetchmail..."
fetchmailq
rmf/var/lock/subsys/fetchmail
;;
'restart')
echon"Restartingfetchmail..."
fetchmailq
fetchmaild60v
;;
*)
echon"Usage:$0{start|stop|restart}"
;;
esac
echo
exit0
Msinformacin
Manualoficialdefetchmailhttp://fetchmail.berlios.de/fetchmailman.html
FAQdefetchmailhttp://fetchmail.berlios.de/fetchmailFAQ.html