{"id":1277,"date":"2018-01-07T11:41:11","date_gmt":"2018-01-07T10:41:11","guid":{"rendered":"http:\/\/diablo.craem.net\/?p=1277"},"modified":"2018-01-07T11:41:11","modified_gmt":"2018-01-07T10:41:11","slug":"outlook-com-y-greylisting","status":"publish","type":"post","link":"https:\/\/diablo.craem.net\/?p=1277","title":{"rendered":"outlook.com y greylisting"},"content":{"rendered":"<p>Desde hace a\u00f1os, tengo mi propia soluci\u00f3n antispam, basada en:<br \/>\n&#8211; debian<br \/>\n&#8211; postfix<br \/>\n&#8211; Greylist<br \/>\n&#8211; openSPF<br \/>\n&#8211; RBL<br \/>\n&#8211; Spam Assassin<br \/>\n&#8211; MailScanner &amp; MailWatch<br \/>\nFunciona bastante bien y tengo muy pocas quejas, ya que con los filtros de postgrey, descarto de un plumazo el 70% de spam.<br \/>\nComo era de esperar, el servicio de greyList y microsoft no son amigos&#8230;. cuando env\u00edas un mail por primera vez, devuelves un <strong>4.5.0 try later<\/strong> y en 300 segundos, deber\u00edas de volver a intentarlo desde la misma IP, peeeero Microsoft no y vuelve a intentarlo desde otra, con lo que se van sumando as\u00ed 5 minutos cada vez.<br \/>\nGoogle, con su servicio bastante extendido (\u00bfqui\u00e9n no tiene un gmail?), hace la entrega desde la misma IP, con lo que el servicio greyList funciona bien.<br \/>\nComo no voy a desactivar el greyList y por fuerza tengo que comunicarme con gente que usa outlook.com o tiene el office365 contratado, tengo que solucionar el problema&#8230;. no puedo permitir que un mail tarde 12 horas en llegar.<br \/>\nGoogleando un poco, veo bastante gente que se ha dado por vencido y ha acabado desactivando el greylisting, pero si observamos bien, Microsoft tiene unos rangos:<br \/>\n<code><br \/>\nhttpss:\/\/technet.microsoft.com\/en-us\/library\/dn163583(v=exchg.150).aspx<br \/>\n<\/code><br \/>\nResumiendo:<br \/>\n<a href=\"https:\/\/diablo.craem.net\/wp-content\/uploads\/2018\/01\/outlook.com_.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone size-medium wp-image-1278\" src=\"https:\/\/diablo.craem.net\/wp-content\/uploads\/2018\/01\/outlook.com_-300x223.png\" alt=\"\" width=\"300\" height=\"223\" \/><\/a><br \/>\nTengo que hacer un bypass de estos rangos en el greyList.<br \/>\nVamos a nuestro postgrey:<br \/>\n<code><br \/>\n# nano \/etc\/postgrey\/whitelist_clients<br \/>\n<\/code><br \/>\nEditamos este fichero y a\u00f1adimos los rangos de M$<br \/>\n<code><br \/>\n# postgrey whitelist for mail client hostnames<br \/>\n# --------------------------------------------<br \/>\n# put this file in \/etc\/postgrey or specify its path<br \/>\n# with --whitelist-clients=xxx<br \/>\n#<br \/>\n# postgrey version: 1.34, build date: 2011-05-04<\/code><br \/>\n<code><br \/>\n<\/code><br \/>\n<code># Debian-specific additions<br \/>\n# I *know* they run real mail queues, so greylisting only creates<br \/>\n# bigger load for them.<br \/>\n23.103.132.0\/22<br \/>\n23.103.136.0\/21<br \/>\n23.103.144.0\/20<br \/>\n23.103.156.0\/22<br \/>\n23.103.191.0\/24<br \/>\n23.103.198.0\/23<br \/>\n23.103.198.0\/24<br \/>\n23.103.199.0\/24<br \/>\n23.103.200.0\/22<br \/>\n23.103.212.0\/22<br \/>\n40.92.0.0\/14<br \/>\n40.107.0.0\/17<br \/>\n40.107.128.0\/18<br \/>\n52.100.0.0\/14<br \/>\n65.55.88.0\/24<br \/>\n65.55.169.0\/24<br \/>\n94.245.120.64\/26<br \/>\n104.47.0.0\/17<br \/>\n104.212.58.0\/23<br \/>\n134.170.132.0\/24<br \/>\n134.170.140.0\/24<br \/>\n157.55.234.0\/24<br \/>\n157.56.110.0\/23<br \/>\n157.56.112.0\/24<br \/>\n207.46.51.64\/26<br \/>\n207.46.100.0\/24<br \/>\n207.46.163.0\/24<br \/>\n213.199.154.0\/24<br \/>\n213.199.180.128\/26<br \/>\n216.32.180.0\/23<br \/>\n2a01:111:f400:7c00::\/54<br \/>\n2a01:111:f403::\/48<br \/>\n104.47.0.0\/17<br \/>\n40.107.0.0\/16<br \/>\n\/.*outbound.protection.outlook.com$\/<br \/>\n\/outlook\/<br \/>\n<\/code><br \/>\nA\u00f1adimos las ip&#8217;s al principio.<br \/>\nahora, para que el postgrey use este fichero, tenemos que editar el siguiente fichero:<br \/>\n<code><br \/>\n# nano \/etc\/default\/postgrey<br \/>\n<\/code><br \/>\nY lo dejamos tal que:<br \/>\n<code><br \/>\n# postgrey startup options, created for Debian<\/code><br \/>\n<code><code><\/code><\/code><br \/>\n# you may want to set<br \/>\n# &#8211;delay=N how long to greylist, seconds (default: 300)<br \/>\n# &#8211;max-age=N delete old entries after N days (default: 35)<br \/>\n# see also the postgrey(8) manpage<br \/>\n<code><code><\/code><\/code><br \/>\n# POSTGREY_OPTS=\u00bb&#8211;inet=60000&#8243;<br \/>\n<strong>POSTGREY_OPTS=\u00bb&#8211;inet=60000 &#8211;whitelist-clients=\/etc\/postgrey\/whitelist_clients\u00bb<\/strong><br \/>\n# the &#8211;greylist-text commandline argument can not be easily passed through<br \/>\n# POSTGREY_OPTS when it contains spaces. So, insert your text here:<br \/>\n#POSTGREY_TEXT=\u00bbYour customized rejection message here\u00bb<br \/>\n<code><br \/>\n<\/code><br \/>\n<code><\/code><br \/>\nUna vez hecho esto, nos toca reiniciar servicios&#8230;.<br \/>\nEn mi caso, el postgrey 1.34 con debian 7, el <strong>\/etc\/init.d\/postgrey restart<\/strong> no acaba de ir bien, con lo que tengo que acabar matando el servicio con kill 9 y el postfix, de la manera habitual<br \/>\nenjoy \ud83d\ude09<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Desde hace a\u00f1os, tengo mi propia soluci\u00f3n antispam, basada en: &#8211; debian &#8211; postfix &#8211; Greylist &#8211; openSPF &#8211; RBL &#8211; Spam Assassin &#8211; MailScanner &amp; MailWatch Funciona bastante bien y tengo muy pocas quejas, ya que con los filtros de postgrey, descarto de un plumazo el 70% de spam. Como era de esperar, el [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[21,58,83,102,138,147],"class_list":["post-1277","post","type-post","status-publish","format-standard","hentry","category-linux","tag-antispam","tag-debian","tag-greylist","tag-linux-2","tag-outlook-com","tag-postgrey"],"_links":{"self":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/posts\/1277","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1277"}],"version-history":[{"count":0,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/posts\/1277\/revisions"}],"wp:attachment":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}