<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" ><channel><title>JomPeich d&#039;er Bisente &#187; SPAM</title> <atom:link href="http://www.bisente.com/blog/category/internet/spam/feed/" rel="self" type="application/rss+xml" /><link>http://www.bisente.com</link> <description>Este es mi blog. Hay otros muchos pero este es el mío.</description> <lastBuildDate>Mon, 23 Jan 2012 06:37:00 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Cluster de correo escalable con software libre</title><link>http://www.bisente.com/blog/2008/10/02/cluster-de-correo-escalable-con-software-libre/</link> <comments>http://www.bisente.com/blog/2008/10/02/cluster-de-correo-escalable-con-software-libre/#comments</comments> <pubDate>Thu, 02 Oct 2008 16:55:28 +0000</pubDate> <dc:creator>bisente</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[Linuxadas]]></category> <category><![CDATA[SPAM]]></category> <category><![CDATA[anti-SPAM]]></category> <category><![CDATA[anti-virus]]></category> <category><![CDATA[availability]]></category> <category><![CDATA[cluster]]></category> <category><![CDATA[correo]]></category> <category><![CDATA[csync2]]></category> <category><![CDATA[disponibilidad]]></category> <category><![CDATA[DRBD]]></category> <category><![CDATA[escalabilidad]]></category> <category><![CDATA[farm]]></category> <category><![CDATA[granja]]></category> <category><![CDATA[heartbeat]]></category> <category><![CDATA[IMAP]]></category> <category><![CDATA[MTA]]></category> <category><![CDATA[POP]]></category> <category><![CDATA[rsync]]></category> <category><![CDATA[scalability]]></category> <category><![CDATA[servidor]]></category> <category><![CDATA[SMTP]]></category> <category><![CDATA[SpamAssassin]]></category> <category><![CDATA[virus]]></category> <category><![CDATA[webmail]]></category><guid isPermaLink="false">http://www.bisente.com/?p=672</guid> <description><![CDATA[At my previous job I was responsible for the MTA of a group of companies, handling around 3000 e-mail accounts spread over 20 domains. This MTA received around 150,000 mails daily, and over 95% of them was discarded/marked because it &#8230; <a href="http://www.bisente.com/blog/2008/10/02/cluster-de-correo-escalable-con-software-libre/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<div class="jLanguage"><ul><li><a href="?lan=english"><img alt="english" src="http://www.bisente.com/wp-content/plugins/jLanguage/icons/en.png" /></a></li><li><a href="?lan=spanish"><img alt="spanish" src="http://www.bisente.com/wp-content/plugins/jLanguage/icons/es.png" /></a></li></ul></div><p>At <a title="Recursos en la Red" href="http://www.renr.es">my previous job</a> I was responsible for the MTA of <a title="Editorial Prensa Ibérica" href="http://www.epi.es">a group of companies</a>, handling around 3000 e-mail accounts spread over 20 domains. This MTA received around 150,000 mails daily, and over 95% of them was discarded/marked because it was identified as SPAM or viruses (as of last year, don&#8217;t know how this evolved since I left). We used a homegrown cluster of seven servers, which enabled us to scale as needed. And it was based on free software.</p><p>This is not an step-by-step installation guide with technical details and configuration files, but rather the story of the evolution of the service, the various problems that we faced, how we solved them, and the design decisions in each case.</p><h2>Migration</h2><p>The first incarnation of the server was in 2001 when we had to migrate the old server, which was starting to give lots of trouble, to more current software and hardware. I seem to remember it was a mail server from Netscape (!?) that stored the account information in an LDAP directory, but can&#8217;t recall the exact name or version of the product. The server we chosed for the migration was <a title="qmail-ldap" href="http://www.qmail-ldap.org">qmail-ldap</a>, mainly because of the good reviews we read about its stability, reliability and security, ease of setup (personally I still think qmail is much simpler than eg sendmail) and because it also used an <a title="OpenLDAP" href="http://www.openldap.org">LDAP directory</a>. The latter may seem a silly reason, but in the end the migration had to be done in extremis at a time that the original server wouldn&#8217;t even boot most of the times, and we got away with it with a simple ldapsearch and a little script that &#8220;translated&#8221; the LDAP scheme of one server into that of the other one. Over time the choice of qmail-ldap proved to be the right one, because thanks to its modular design it allowed us to progressively move from a one server deploy to the cluster that I refered about in the introduction.</p><p>This first server was a rack-mounted one, with redundant power supplies and hw RAID5, so that all the data was secure (or so we thought back then). We also rolled <a title="qmail-scanner" href="http://qmail-scanner.sourceforge.net/">qmail-scanner</a> and the <a title="Kaspersky" href="http://www.kaspersky.com/">Kaspersky</a> anti-virus (there was no <a title="ClamAV" href="http://clamav.org/">ClamAV</a> yet, we moved to it some years later). The same server held the SMTP, POP, <a title="Courier IMAP" href="http://www.courier-mta.org/imap/">IMAP</a> and WebMail (<a title="SquirrelMail" href="http://www.squirrelmail.org/">SquirrelMail</a>) services.</p><h2>Active/Passive backup</h2><p>We had to do the first architectural upgrade a couple of months after the migration: a RAID5 hiccup lead to a corrupted filesystem which was quite difficult to fix. It became clear that the RAID discs and the redundant power supplies were not enough to ensure the data integrity and service availability, so we installed another server exactly like the first one, and synchronized the configuration and mailboxes using <a title="rsync" href="http://samba.anu.edu.au/rsync/">rsync</a> and cron jobs. The switching from the primary to the backup server was manual back then, using NAT at the router.</p><p>Over time the server was upgraded to new models several times, but we kept the active/passive backup structure. The syncronization between both servers was also improved, with <a title="DRBD" href="http://www.drbd.org/">DRBD</a> for the mailboxes and <a title="csync2" href="http://oss.linbit.com/csync2/">csync2</a> for the configuration, AV bases, and so on. Master-backup monitoring and service switch was automatized with <a title="heartbeat" href="http://www.linux-ha.org/Heartbeat">heartbeat</a>.</p><h2>The SPAM flood, specialization by resources</h2><p>Sometime around 2002-2003 viruses ceased beeing e-mail&#8217;s biggest problem: the increasing number of SPAM messages received every day was way worse. So we threw <a title="SpamAssassin" href="http://spamassassin.apache.org/">SpamAssassin</a> into the mix. Over time this lead to an ever-increasing CPU and memory consumption, slowing the server to a crawl. At first it seemed that the only option was to migrate every year to a new, more powerful server (and what would we do with the old one then?), or have multiple servers and distribute all the domains among them in an attempt to distribute the load.</p><p>Finally we realized that we had two different kinds of resource needs, with different growth patterns:</p><ul><li> HD space for the mailboxes: the number of mailboxes in our system was fairly stable and the vast majority of our users downloaded their e-mails using POP, so HD scalability wasn&#8217;t really that big of a problem for us. We could easily afford to upgrade disk every few years, moving the service to the backup server while we were upgrading the master one.</li><li> CPU for the filtering: SPAM was growing at an exponential rate, we basically needed to double the CPU power each year.</li></ul><p>So, why not specialize our servers into storage servers and a filtering farm? We moved the SMTP service from the main servers to a front-line of SMTP servers with the follwing characteristics:</p><ul><li> they were off-the-shelf PCs and their configuration was practically identical (no variations appart from hostnames and IP addressess). We prepared a system image we could easily dump in a matter of minutes to a new PC, in case one of the servers went down or we needed more raw CPU power because of an increase in SPAM.</li><li> we had a router load-balaincing port 25 among all these servers.</li><li> all these SMTP servers were independent from the central ones, except for the final step of delivering the already analized mail to its destination mailbox: each server had a local copy of the LDAP directory (synchronized with <a title="Replication with slurpd" href="http://www.openldap.org/doc/admin22/replication.html">slurpd</a>), a copy of all the configuration files and all the AV bases and the <a title="SpamAssassin" href="http://spamassassin.apache.org/">SpamAssassin</a> bayesian database (synchronized with <a title="csync2" href="http://oss.linbit.com/csync2/">csync2</a>), and a DNS resolver/cache (<a title="djbdns" href="http://cr.yp.to/djbdns.html">dnscache</a>).</li><li> they did local logs, but also sent them to a centralized syslog server for easier analysis.</li><li> they didn&#8217;t store the mails locally for later delivery, in other words they had no delivery queue: e-mails were analyzed on the fly during the SMTP session and if one of them met certain anti-SPAM/AV criteria (blacklisted IP, a number of RBL hits, certain keywords, etc.) it was immediatelly rejected with an SMTP error and the connection was closed; on the other hand if the mail was let through (it was either legitimate, or marked as possible SPAM), it was sent to the central server on the spot, and the filtering server never gave the OK to the origin MTA until the mailboxes server acknowledged the delivery. This is done quite simply with qmail by means of replacing the qmail-queue binary with the <a title="mini-qmail" href="http://cr.yp.to/qmail/mini.html">qmail-qmqpc</a> one. By doing this we were able to guarantee that no mail would be lost in the event that a filtering server crashed, as the origin MTA wouldn&#8217;t receive the OK from us and would re-try the delivery after a couple of minutes.</li></ul><p>Mailboxes, the POP and IMAP services, the LDAP master, webmail, and the remote queue remained in the central server, although most of them could have been moved to independent servers if needed, but we never needed to.</p><h2>Specialization by type of client</h2><p>The next problem we faced came about 2-3 years ago when image- and PDF-based SPAM became popular: we added an <a title="SpamAssassin" href="http://spamassassin.apache.org/">SpamAssassin</a> plugin which re-composed animated GIF images and did OCR to all image attachments. This extra analysis greatly increased our CPU needs (we had to go from 2 or 3 filtering servers to 5 in a couple of days) and even so there were times when a server got overloaded for some 5-10 minutes and an e-mail could take not less than 2 minutes to be processed, delivered and SMTP-OK&#8217;d. When this happened and the sending party was another MTA it represented no bigger issue, as in the event of a timeout or disconnection the remote server would re-try the delivery several times; however, if the sender was an end-user with his MUA, a longer-than-usual delivery time or (God forbid) an error message from Outlook because of an eventual dropped connection lead to a phone call to the IT team because &#8220;the mail wouldn&#8217;t work.&#8221; <img src='http://www.bisente.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p><p>The solution was splitting the SMTP and analysis farm into two: one for external mail and another for internal ones, for our users. The first farm is the one the DNS&#8217; MX records pointed to, and had all the SPAM filtering options activated; while the second one retained the domain name end users used as the SMTP server in their MUAs, had all the heavy-weight lifting filters disabled and required SMTP authentication (wouldn&#8217;t accept non-authenticated sesions even for local domains). This way all external e-mail coming from remote MTAs would go through all the filters, and our users went to the privileged servers with somewhat lesser filering capabilities (but enough for internal mail) and great response times.</p><h2>The big picture</h2><h2><a href="http://www.bisente.com/wp-content/uploads/2008/10/esquema-correo.png"><img class="aligncenter size-medium wp-image-677" src="http://www.bisente.com/wp-content/uploads/2008/10/esquema-correo-212x300.png" alt="" width="212" height="300" /></a></h2> ]]></content:encoded> <wfw:commentRss>http://www.bisente.com/blog/2008/10/02/cluster-de-correo-escalable-con-software-libre/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>El lubricante del futuro</title><link>http://www.bisente.com/blog/2008/09/26/el-lubricante-del-futuro/</link> <comments>http://www.bisente.com/blog/2008/09/26/el-lubricante-del-futuro/#comments</comments> <pubDate>Fri, 26 Sep 2008 17:11:38 +0000</pubDate> <dc:creator>bisente</dc:creator> <category><![CDATA[Cine]]></category> <category><![CDATA[SPAM]]></category> <category><![CDATA[futuro]]></category> <category><![CDATA[lubricante]]></category> <category><![CDATA[Terminator]]></category><guid isPermaLink="false">http://www.bisente.com/?p=665</guid> <description><![CDATA[A veces me planteo si vale la pena romperse los cuernos en la lucha contra el SPAM: es una carrera de fondo a ver quién puede más, y de vez en cuando, como sucede con la publicidad &#8220;legítima&#8221;, los creativos &#8230; <a href="http://www.bisente.com/blog/2008/09/26/el-lubricante-del-futuro/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a title="El lubricante del futuro" href="http://www.bisente.com/wp-content/uploads/2008/09/lubricante.jpg"><img class="size-full wp-image-667 alignright" src="http://www.bisente.com/wp-content/uploads/2008/09/terminator.jpg" alt="" width="129" height="130" /></a>A veces me planteo si vale la pena romperse los cuernos en la lucha contra el SPAM: es una carrera de fondo a ver quién puede más, y de vez en cuando, como sucede con la publicidad &#8220;legítima&#8221;, los creativos se lo curran y consiguen un anuncio que te arranca una sonrisa (un lagrimón en este caso).</p><p>Os juro por Snoopy que ésto no es una cafrada mía, me acaba de llegar al correo de GMail. Haced click en el Terminator para ver a lo que me refiero. No apto para menores, espíritus sensibles ni para los que no quieran ver tambalearse un mito del cine.</p> ]]></content:encoded> <wfw:commentRss>http://www.bisente.com/blog/2008/09/26/el-lubricante-del-futuro/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Firmas anti-SPAM para ClamAV</title><link>http://www.bisente.com/blog/2007/08/10/firmas-anti-spam-para-clamav/</link> <comments>http://www.bisente.com/blog/2007/08/10/firmas-anti-spam-para-clamav/#comments</comments> <pubDate>Fri, 10 Aug 2007 07:23:36 +0000</pubDate> <dc:creator>bisente</dc:creator> <category><![CDATA[English]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[Linuxadas]]></category> <category><![CDATA[Seguridad]]></category> <category><![CDATA[SPAM]]></category><guid isPermaLink="false">http://www.bisente.com/blog/2007/08/10/firmas-anti-spam-para-clamav/</guid> <description><![CDATA[A couple of days ago I stumbled upon the SaneSecurity set of ClamAV signatures, that detect a lot of SPAM (mainly the latest batch of GIF and PDF SPAM) and phishing mails. They&#8217;re similar to the MSRBL signatures, only better &#8230; <a href="http://www.bisente.com/blog/2007/08/10/firmas-anti-spam-para-clamav/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<div class="jLanguage"><ul><li><a href="?lan=english"><img alt="english" src="http://www.bisente.com/wp-content/plugins/jLanguage/icons/en.png" /></a></li><li><a href="?lan=spanish"><img alt="spanish" src="http://www.bisente.com/wp-content/plugins/jLanguage/icons/es.png" /></a></li></ul></div><p>A couple of days ago I stumbled upon the <a title="SaneSecurity" href="http://www.sanesecurity.co.uk/clamav/">SaneSecurity</a> set of <a title="ClamAV" href="http://www.clamav.net/">ClamAV</a> signatures, that detect a lot of SPAM (mainly the latest batch of GIF and PDF SPAM) and phishing mails. They&#8217;re similar to the <a title="MSRBL" href="http://www.msrbl.com/site/">MSRBL</a> signatures, only <em>better</em> judging by the results we&#8217;re getting. Or to put it another way, one is the perfect complement to the other. <img src='http://www.bisente.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>By using these two ClamAV signature sets together and some other techniques (<a title="SpamAssassin" href="http://spamassassin.apache.org/">SpamAssassin</a>, DNS, RBL&#8230;) we&#8217;re stopping at work around 80% of all the mails we get, 100000-120000 daily, with a very low false-positive ratio, 2-3 weekly at most. And these figures include all the internal mails too which are supposed not to be SPAM, I&#8217;m sure the real SPAM blocking ratio (just external mails) in our system is way above 90%. One of these days I&#8217;ll do the math.</p><p>I&#8217;ve been thinking for some time about writing an article about the different anti-SPAM techniques we use here. I&#8217;ll see if I can get some free time to do it&#8230;</p><h1><a href="http://forum.12thplayer.com/forumdisplay.php?fid=44" style="color:#FFFEFF;">maç özeti, </a></h1><h1><a href="http://forum.12thplayer.com/forumdisplay.php?fid=44" style="color:#FFFEFF;">live football highlights, </a></h1><h1><a href="http://forum.12thplayer.com/forumdisplay.php?fid=44" style="color:#FFFEFF;">football video, </a></h1><h1><a href="http://forum.12thplayer.com/forumdisplay.php?fid=44" style="color:#FFFEFF;">football videos, </a></h1><h1><a href="http://forum.12thplayer.com/forumdisplay.php?fid=44" style="color:#FFFEFF;">football highlight, </a></h1><h1><a href="http://forum.12thplayer.com/forumdisplay.php?fid=44" style="color:#FFFEFF;">football highlights, </a></h1</p><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live football streaming, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live footbal, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">online footbal, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">free football streaming, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live football stream, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">stream live football, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">free football streaming, </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">lig tv</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">soccer stream</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">football stream</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">ligtv</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">maç izle</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">canlı maç</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">canlı futbol</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">canlı futbol izle</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">canlı futbol tv </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol maçı izle</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol smart</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol smart izle</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol tv izle</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">футбол онлайн</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">трансляция футбол</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">смотреть онлайн футбол</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">смотреть футбол</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">soccer live</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">soccer tv</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live soccer streaming</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">stream soccer</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">online football</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">watch football</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">football match</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">football streaming</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live streaming</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">watch football</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live football</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">football tv</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol vivo</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">partido en vivo</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">juegos futbol</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol gratis</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">roja directa</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">jogos de futebol</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">jogo de futebol</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futebol online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">assistir tv</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">atdhe</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">foot en direct</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">jeux de foot</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">jeux football</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">calcio diretta</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">calcio streaming</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">giochi calcio</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live ποδόσφαιρο</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">podosfairo live</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">αγωνεσ ποδοσφαιρου</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">video sepak bola</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">game bola sepak</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">Siaran Langsung Sepakbola</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">bola siaran langsung</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbol juegos</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">partidos en vivo</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">bóng đá online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">xem bóng đá</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">bóng đá trực tuyến</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">bóng đá trực tiếp</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">ฟุตบอล online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">ฟุตบอลสด </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">บอล online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">ดู ฟุตบอล สด </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">ถ่ายทอด สด </a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">online futball</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live fussball</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fussball live stream</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live stream fußball</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">bundesliga live stream</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fußball live</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">bundesliga fußball</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">piłka nożna na żywo</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">piłka nożna online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotbal live</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotbal online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotbal živě</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotbal zive</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotbollskanalen</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotball live</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">footballl live</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">football online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fotball på tv</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">футбол онлайн</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">футбол трансляція</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">футбол канал</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live voetbal</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live voetbal</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">voetbal kijken</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">voetbal online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">фудбал уживо</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">fudbal uzivo</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live fudbal</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">futbal online</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live futbal</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">live footy</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">مباريات كرة القدم</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">مباشر كرة القدم</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">بث حي مباشر</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">مباشر مباريات</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">כדורגל שידור ישיר</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">שידור חי כדורגל</a></h1><h1><a href="http://www.12thplayer.com" style="color:#FFFEFF;">بث كرة القدم</a></h1><h1><a href="http://forum.12thplayer.com" style="color:#FFFEFF;">football forum</a></h1><h1><a href="http://forum.12thplayer.com" style="color:#FFFEFF;">football forums</a></h1><h1><a href="http://forum.12thplayer.com" style="color:#FFFEFF;">football community</a></h1><h1><a href="http://forum.12thplayer.com" style="color:#FFFEFF;">football talk</a></h1><h1><a href="http://forum.12thplayer.com" style="color:#FFFEFF;">soccer forum</a></h1><h1><a href="http://forum.12thplayer.com" style="color:#FFFEFF;">soccer forums</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">tn115</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">tn115 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">brother tn115</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">tn115bk</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">brother tn115bk</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">tn115bk toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">DCP-9040CN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">DCP-9045CDN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">HL-4040CDN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">HL-4040CN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">HL-4070CDW toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">MFC-9440CN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">MFC-9450CDN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">MFC-9840CDW toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">DCP9040CN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">DCP9045CDN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">HL4040CDN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">HL4040CN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">HL4070CDW toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">MFC9440CN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">MFC9450CDN toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">MFC9840CDW toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6000a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6000a cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 1600 color</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 1600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 1600 ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">laserjet 1600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp color 2600</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp toner 2600</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600 ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600 toners</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600 cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">1600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">2600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner laserjet 2600</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600n color</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 2600n</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600n toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600n toners</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">ink for hp 2600n</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp laserjet 2600n</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laser 2600n toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600n cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2600n cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 2600n ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner laserjet 2600n</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp toner q6003a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6003a cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6000a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6002a cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp color 3800</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 3800</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner hp 3800</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3800 cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">laserjet 3800 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">cartridge q6470a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6470a hp</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner q6470a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6470a black</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q7581a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q7581a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q7583a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q7583a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q7582a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q7582a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3800dn toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp cp3505 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 3600</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 toners</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">laserjet 3600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6470a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6470a cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6470a black</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6470a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6471a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6471a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6473a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner q6473a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6472a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner q6472a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 3600</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 toners</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 3600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 toner cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 3600 cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600 toner cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">laserjet 3600 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600n toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 3600n</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600n cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 3600n toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600n cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600n ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp color laserjet 3600n toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 3600n toner cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp color laserjet 3600n cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6470a hp</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner q6470a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">cartridge q6470a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6470a black</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q6471a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q6471a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner 2550</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 color</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 drum</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">laserjet 2550 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 2550</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 toners</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 ink</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 2550 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 toner cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 toner cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 2550 cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2550 printer cartridges</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3960a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3960a cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3960a black</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3960a hp</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet q3960a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3961a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q3960a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3962a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">q3963a toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q3963a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q3962a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp q3961a</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp toner 2840</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">toner for hp 2840</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2840 toners</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2840 drum</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">drum for hp 2840</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laser 2840 toner</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp 2840 cartridge</a></h1><h1><a href="http://www.cartridgevalley.com" style="color:#FFFEFF;">hp laserjet 2840 drum</a></h1> ]]></content:encoded> <wfw:commentRss>http://www.bisente.com/blog/2007/08/10/firmas-anti-spam-para-clamav/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Cabalgando los gusanos</title><link>http://www.bisente.com/blog/2007/06/21/cabalgando-los-gusanos/</link> <comments>http://www.bisente.com/blog/2007/06/21/cabalgando-los-gusanos/#comments</comments> <pubDate>Thu, 21 Jun 2007 19:28:09 +0000</pubDate> <dc:creator>bisente</dc:creator> <category><![CDATA[Blogs]]></category> <category><![CDATA[Google]]></category> <category><![CDATA[Internet]]></category> <category><![CDATA[lighttpd]]></category> <category><![CDATA[Linuxadas]]></category> <category><![CDATA[SPAM]]></category> <category><![CDATA[Tecnología]]></category> <category><![CDATA[WordPress]]></category><guid isPermaLink="false">http://www.bisente.com/blog/2007/06/21/cabalgando-los-gusanos/</guid> <description><![CDATA[&#8220;Debes cabalgar por la arena a la luz del día, para que Shai-hulud vea y sepa que no tienes miedo.&#8221; &#8211; Dune, de Frank Herbert &#8220;Si no está en Google, no existe&#8221;. Esta frase tan categórica es cierta tanto para &#8230; <a href="http://www.bisente.com/blog/2007/06/21/cabalgando-los-gusanos/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p align="right">&#8220;Debes cabalgar por la arena a la luz del día,<br /> para que Shai-hulud vea y sepa que no tienes miedo.&#8221;</p><p align="right">&#8211; <em><a href="http://es.wikipedia.org/wiki/Dune" title="Dune">Dune</a></em>, de Frank Herbert</p><p>&#8220;Si no está en Google, no existe&#8221;. Esta frase tan categórica es cierta tanto para comercios on-line o webs corporativas, como para nuestro blog personal. Cuando necesitamos localizar información en Internet, vamos a Google. Y quien dice Google, dice Yahoo, MSN, o cualquier otro buscador. <em>Tenemos</em> que estar ahí.</p><p>Éstos buscadores usan &#8220;<em>bots</em>&#8221; o <em>&#8220;spiders&#8221;</em> para indexar el contenido de nuestras páginas, programas que periódicamente recorren todos los sitios que ya conocen en busca de actualizaciones y nuevos enlaces a través de los cuales descubrir, procesar e indexar más y más páginas</p><p>A nadie se le escapa que el trabajo de éstos programas es beneficioso, pero normalmente no tenemos en cuenta que generan tráfico extra a nuestra web. Aunque parezca mentira, conozco sitios en los que el tráfico de GoogleBot y compañía (ojo, hablo del propio bot, no de visitas dirigidas desde el buscador) consumía hasta un tercio del ancho de banda total de los accesos. Estamos hablando de <em>GIGAS</em> de tráfico al día.</p><p>Además los buscadores penalizan la información repetida: si tenemos varias páginas con contenido igual o muy similar, o aún peor, si podemos cargar una misma página con varias URLs distintas, podemos llevarnos sorpresas desagradables como páginas que no aparecen en los resultados de una búsqueda en favor de un feed o un resumen (índice de sección, categoría, etc.) con contenido similar, o páginas con un pagerank bajo porque éste se &#8220;diluye&#8221; entre varias URLs.</p><p>Por ello es importante aprender cómo funcionan éstos bots para saber cómo optimizar su paso por nuestro sitio web, cómo &#8220;llevarlos de la mano&#8221; hasta la información que queremos priorizar para así mejorar nuestro posicionamiento en los resultados, minimizando a su vez cuando sea posible la cantidad de información transmitida para no saturar nuestra conexión y servidores.<br /> <span id="more-103"></span></p><h2>HTTP</h2><p>GoogleBot, Yahoo! Slurp, etc. se comunican con nuestro servidor web mediante el protocolo HTTP, igual que haría cualquier otro cliente. Y son clientes &#8220;educados&#8221; que cumplen el protocolo.</p><p></p><p>Mucha gente desconoce que el protocolo HTTP 1.1 tiene métodos para controlar desde el servidor el funcionamiento de la gestión del contenido por parte de las cachés clientes (en proxies, navegadores, etc.) con una serie de cabeceras que indican la fecha de modificación del contenido, si ha sido modificado desde el último acceso, y una fecha de validez (o caducidad, como queramos verlo) hasta la cual indicamos que no es necesario volver a acceder a la página a refrescar el contenido.</p><p>Usando éstas cabeceras HTTP (Cache-Control, Last-Modified, Etag y Expires, junto con el código de respuesta 304) podemos ajustar cada cuánto tiempo cada cliente, sea Google, Yahoo, un proxie o la caché de nuestro navegador, va a venir al servidor a refrescar el contenido, y una vez que venga, devolverle la página completa si ésta ha sido actualizada o ahorrarnos el tráfico informándole de que la versión que tiene en caché aún es válida, renovando a su vez su periodo de validez. Es una forma de reducir drásticamente el tráfico de nuestros servidores y mejorar los tiempos de respuesta de cara al cliente, visitantes normales con un navegador también. Eso sí, siempre que tengamos muy clara la &#8220;caducidad&#8221; de cada una de las páginas según su contenido, ya que si nos pasamos podemos provocar que no se &#8220;vean&#8221; las actualizaciones.</p><p>Por ejemplo, para un sitio web con contenido actualizado a diario, podríamos configurar: para la portada una validez de cinco minutos; para cada artículo del día, quince, por si se actualizan para corregir cualquier error o puntualizar algún detalle; para el contenido de entre uno y diez días de antigüedad, doce horas o un día; y para lo que tenga más de diez días&#8230; un año, o más si asumimos que el contenido tan viejo no se va a actualizar nunca.</p><p>¿Cómo hacer uso de éstas cabeceras? La mayoría de servidores web (Apache, lighttpd&#8230;) usan la fecha de modificación de ficheros estáticos de forma automática para generar éstas cabeceras. Para el contenido dinámico, o forzamos unos datos según URLs en la configuración del servidor web, o bien generamos éstas cabeceras en programación.</p><p>Aparte de todo el control de caché, hemos comentado que no es conveniente que varias URLs apunten a un mismo contenido para que éste sea único y esté unívocamente identificado por su dirección. Si por ejemplo tenemos varios dominios (.com, .es y .net), o hemos refactorizado recientemente la programación y hemos tenido que reestructurar las URL, lo que lo que deberíamos hacer es redirigir todos los accesos a una URL única (dominio principal y estructura de directorios &#8220;canónica&#8221;) mediante una respuesta HTTP 301, de forma que centralicemos todo el contenido en un único dominio, y que cada página tenga una única ruta.</p><ul><li><a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html">Sección de la especificación HTTP 1.1 sobre control de caché</a></li><li><a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html">Sección de la especificación HTTP 1.1 sobre códigos de respuesta</a></li><li><a href="http://www.mnot.net/cache_docs/" title="Doc sobre cache-control">Excelente tutorial sobre control de caché</a></li></ul><h2></h2><h2>robots.txt</h2><p>En el fichero <em>robots.txt</em> podemos definir una serie de reglas para denegar el acceso a ciertas URLs según el <em>User-Agent</em> del bot que esté consultando la página. Es un protocolo establecido hace muchos años, y de nuevo GoogleBot y sucedáneos lo cumplen al pié de la letra. Y como su nombre indica, es un protocolo exclusivo para bots: un navegador normal no lee éste fichero ni se rige por las reglas que aquí definamos.</p><p>¿Utilidades? Varias: denegar el acceso a determinados bots a ciertas partes &#8220;privadas&#8221;, o que por cualquier motivo no queramos que se indexen, de nuestra web; bloquear completamente el acceso a ciertos bots que no nos interesen (porque es un buscador en el que no queremos aparecer, porque nos consulta demasiado rápido y nos satura&#8230;); bloquear el acceso a los feeds RSS para evitar que se indexen, ya que duplican contenido y pueden llegar a tener precedencia en los resultandos sobre las páginas &#8220;reales&#8221;; etc.</p><p>Sin embargo, este fichero es algo que hay que usar con cuidado: hay que tener muy claro que no le estamos diciendo a un bot que no indexe una página, si no que NO ENTRE en ella. Y si no entra, no descubrirá (ni seguirá e indexará) los enlaces que puedan &#8220;colgar&#8221; de ella. Así que si no somos cuidadosos podemos acabar bloqueando el acceso a partes completas de nuestra web que si que nos interesaría que se indexaran.</p><p>Como mínimo, si tenemos una estructura de carpetas/URLs decentemente organizada, si que podemos filtrar sin peligro feeds, carpetas con estilos CSS, carpetas con ficheros Javascript, carpetas con imágenes (si no queremos aparecer en Google Images), etc.</p><ul><li><a href="http://www.robotstxt.org/wc/robots.html" title="robots.txt">Página sobre el fichero robots.txt</a></li><li><a href="http://www.utheguru.com/seo_wordpress-wordpress-seo-plugin" title="seo wordpres">Plugin SEO para WordPress, much ainformación sobre robots y METAs</a></li></ul><h2></h2><h2>METAs y rel=&#8221;nofollow&#8221;</h2><p>Durante muchos años el protocolo para facilitarle la vida a los bots informándoles nosotros del contenido (content) y carácter (keywords) de nuestras páginas fue mediante tags META en el encabezado (&lt;head&gt;) de las páginas. Sin embargo con el paso del tiempo se vio que al depender sólo del buen hacer (o mejor dicho, de la buena fe) del webmaster eran fáciles de falsear, con lo que hoy en día prácticamente ningún buscador les presta mayor atención y se fijan principalmente en el contenido real en el cuerpo (&lt;body&gt;) del fichero HTML. Sin embargo si que hay un META que nos va a ser útil para marcar el camino a los bots: el meta &#8220;robots&#8221;.</p><p></p><p>Éste META puede contener dos valores de los dos pares (no)index y (no)follow: index/noindex indica al bot que considere (o no) el contenido de la página actual para su indexación, mientras que follow/nofollow le indica que siga o no todos los enlaces que encuentre en la página. Con el primero controlamos si no queremos que el bot se fije en el contenido de la página actual, mientras que con el segundo indicamos si queremos que continúe rastreando a partir de la página actual o que vuelva a la página anterior. Los valores por defecto si no indicamos lo contrario serían &#8220;index, follow&#8221;: indexar la página actual y seguir todos los enlaces.</p><p>Utilidad: evitar contenido repetido evitando la indexación de páginas de resumen, portadas, categorías, etc. en favor de las páginas con los artículos completos. Esto lo haríamos con:</p><div class="codesnip-container" ><div class="html4strict codesnip" style="font-family:monospace;">meta name=&quot;robots&quot; content=&quot;noindex,follow&quot;</div></div><p>&#8220;nofollow&#8221; nos sería útil para evitar el acceso de los bots a ciertas partes de nuestra web (como haríamos con el robots.txt) o para &#8220;ocultarle&#8221; de alguna forma enlaces a webs externas para que no tenga éstas relaciones en cuenta de cara a calcular el PageRank (en el caso de Google).</p><p>follow/nofollow en el meta se aplica de forma global a todos los enlaces de la página. Si sólo queremos controlar que no se sigan ciertos enlaces externos, podemos usar rel=&#8221;nofollow&#8221; en cada enlace de forma individual:</p><div class="codesnip-container" ><div class="html4strict codesnip" style="font-family:monospace;"><span class="sc2">&lt;<a href="http://december.com/html/4/element/a.html"><span class="kw2">a</span></a> <span class="kw3">href</span><span class="sy0">=</span><span class="st0">&quot;http://www.example.com&quot;</span> <span class="kw3">rel</span><span class="sy0">=</span><span class="st0">&quot;nofollow&quot;</span>&gt;</span>Ejemplo<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/a.html"><span class="kw2">a</span></a>&gt;</span></div></div><p>Ésto es útil para evitar enlazar páginas de SPAM, p.ej. añadiendo de forma automática éste atributo a todos los enlaces que se puedan introducir en nuestra página por parte del usuario (comentarios, foros&#8230;)</p><ul><li><a href="http://www.robotstxt.org/wc/meta-user.html" title="META">Información sobre el META ROBOTS</a></li><li><a href="http://www.seoconsultants.com/html/links/nofollow.asp" title="METAS">Más información sobre los METAs</a></li></ul><h2></h2><h2>Google Sitemaps</h2><p>Por último, vamos a ver el método de más reciente aparición de todos: el fichero <em>sitemap.xml</em>.</p><p>Sitemaps es un protocolo originario de Google para ayudar a su bot a conocer mejor la organización y periodicidad de actualización del contenido de nuestra página, aunque Yahoo y MSN lo han adoptado ya también por lo que podemos considerar que es un estándar &#8220;de facto&#8221;. Se trata de un fichero XML con una sintaxis bastante sencilla en el que indicamos todas y cada una de las URL de nuestro sitio, su fecha de creación, modificación, una estimación de con qué periodicidad se puede actualizar (o cuánta validez le damos a la información, cada cuánto tiempo tendría que volver el bot a indexarla), y un &#8220;peso&#8221; con el que indicaríamos la relevancia relativa de cada página con respecto al resto.</p><p>En líneas generales puede parecer que todos éstos datos ya se los estábamos dando con los métodos anteriores: las cabeceras HTTP para indicar la validez, el robots.txt y el follow/nofollow para controlar dónde entra&#8230; la diferencia fundamental radica en que sin el sitemap, el bot de turno accede a nuestra página y va siguiendo enlaces, descubriendo como medianamente puede cada una de los distintos archivos que forman nuestro sitio; mientras que con el sitemap, nosotros le damos una lista de todas y cada una de las URLs que queremos que indexe, además de la importancia relativa que le damos a cada página.</p><ul><li><a href="http://www.sitemaps.org/" title="sitemaps">Información sobre sitemaps</a></li></ul><h2></h2><h2>Resumen</h2><p>Hemos visto varias técnicas para guiar a los bots de los buscadores en su paso por nuestra web, indicándoles dónde entrar y dónde no, qué indexar y qué no, con qué periodicidad volver y si ha habido actualizaciones en nuestra página. Nos hemos centrado en los métodos para minimizar el tráfico extra que nos van a generar las visitas de éstos bots, pero maximizando su productividad.</p><p>Ésto es sólo una pequeña parte de todo lo que deberemos tener en cuenta a la hora de diseñar nuestra web y su contenido de cara a conseguir un buen posicionamiento. En internet hay infinidad de artículos sobre SEO orientados a cómo construir y organizar la maquetación HTML de la página, cómo escribir titulares, resúmenes, cómo y dónde enlazar a otras páginas, etc.</p><p>Por último, recordar que aparte de todo lo que hemos comentado aquí y podamos leer en cualquier otro artículo similar, no hay que olvidar la documentación oficial de cada uno de los buscadores, así como las herramientas que ellos mismos facilitan a los webmasters:</p><ul><li><a href="http://www.google.es/bot.html" title="GoogleBot">Información sobre GoogleBot</a></li><li><a href="http://www.google.com/webmasters/tools/" title="Google Webmaster Tools">Google Webmaster Tools</a></li><li><a href="http://help.yahoo.com/help/us/ysearch/slurp/index.html" title="Yahoo! Slurp">Información sobre Yahoo! Slurp</a></li><li><a href="http://siteexplorer.search.yahoo.com/" title="Yahoo! Site Explorer">Yahoo! Site Explorer</a></li></ul> ]]></content:encoded> <wfw:commentRss>http://www.bisente.com/blog/2007/06/21/cabalgando-los-gusanos/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>http:BL del Proyecto Honey Pot</title><link>http://www.bisente.com/blog/2007/05/07/httpbl-del-proyecto-honey-pot/</link> <comments>http://www.bisente.com/blog/2007/05/07/httpbl-del-proyecto-honey-pot/#comments</comments> <pubDate>Mon, 07 May 2007 06:00:42 +0000</pubDate> <dc:creator>bisente</dc:creator> <category><![CDATA[Internet]]></category> <category><![CDATA[SPAM]]></category> <category><![CDATA[WordPress]]></category><guid isPermaLink="false">http://www.bisente.com/blog/2007/05/07/httpbl-del-proyecto-honey-pot/</guid> <description><![CDATA[El otro día dí con la página del servicio http:BL del proyecto Honey Pot. La idea de las Honey Nets y Honey Pots no es nueva: crear servicios, páginas, direcciones o redes completas artificales para &#8220;engañar&#8221; a los bots que &#8230; <a href="http://www.bisente.com/blog/2007/05/07/httpbl-del-proyecto-honey-pot/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p>El otro día dí con la página del servicio <a href="http://www.projecthoneypot.org/httpbl.php" title="http:BL">http:BL</a> del proyecto <a href="http://www.projecthoneypot.org/" title="The Honey Pot Project">Honey Pot</a>. La idea de las <a href="http://es.wikipedia.org/wiki/Honeypot" title="Honey Pots en Wikipedia">Honey Nets y Honey Pots</a> no es nueva: crear servicios, páginas, direcciones o redes completas artificales para &#8220;engañar&#8221; a los bots que rastrean la red en busca de direcciones o foros donde mandar <a href="http://www.youtube.com/watch?v=ODshB09FQ8w" title="SPAM">SPAM</a> y poder así identificarlos y bloquearlos. La gracia de este nuevo proyecto es que es distribuido y colaborativo: cualquiera puede crear una página que envíe a su BD los datos de los bots que detecte, y a su vez cualquiera puede acceder a ésta BD para consultar si una IP determinada que visite nuestra página es sospechosa, al estilo de las &#8220;listas negras&#8221; o RBL utilizadas en los servidores de correo electrónico.</p><p><span id="more-54"></span><br /> Yo ya me he dado de alta y tengo creada <a href="http://www.bisente.com/cienmilmoscas.php" title="A un panal de rica miel...">una página</a> para enviar datos a éste proyecto. Ellos mismos te proporcionan el código a subir, si véis la página parece la típica parrafada legal pero al mirar el código HTML tiene  en unos DIVs ocultos direcciones y formularios falsos: una persona no los verá pero un bot si, y cada vez que mande algo a esas direcciones el proyecto Honey Pot lo detectará y lo catalogará.</p><p>La primera aplicación práctica es <a href="http://stepien.com.pl/2007/04/28/httpbl_wordpress_plugin/" title="http:BL para Word Press">éste plugin para Word Press</a> que contrastará la IP de cada visita que llegue a nuestro blog contra la BD del proyecto Honey Pot, siguiendo unos parámetros que le indiquemos de nivel de peligrosidad, días desde la última actividad &#8220;sospechosa&#8221; de la IP, etc., y redirigirá de forma automática cualquier acceso de un bot de forma inmediata a la página de nuestro Honey Pot. Con esto se consiguen dos cosas: mandarle directamente donde queremos que vaya, y que no acceda a ninguna página real, con lo que no podrá postear SPAM en nuestros comentarios.</p><p>Os animo a todos a daros de alta en el proyecto, crear una Honey Pot e instalaros el plugin de Word Press. Cuanta más gente lo utilice, más y mejores datos de IPs maliciosas se podrán catalogar, con lo que todos nos veremos beneficiados y aportamos nuestro pequeño granito de arena en la lucha contra el SPAM.</p> ]]></content:encoded> <wfw:commentRss>http://www.bisente.com/blog/2007/05/07/httpbl-del-proyecto-honey-pot/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using apc
Page Caching using disk: enhanced
Database Caching 1/36 queries in 0.026 seconds using apc
Object Caching 750/829 objects using apc

Served from: www.bisente.com @ 2012-02-12 11:05:58 -->
