Difference between revisions of "Postfix greylisting"

From Finninday
Jump to: navigation, search
Line 1: Line 1:
 +
=[http://odygobyciqi.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=
 
[[Category:Computers]]
 
[[Category:Computers]]
On a lark, I decided to implement greylisting on my mail server.  It was as easy as "apt-get install postgrey".
+
On a lark, I decided to implement greylisting on my mail server.  It was as easy as "apt-get install postgrey".
 
Well, almost that easy.  I also had to add this to my /etc/postfix/main.cf:
 
Well, almost that easy.  I also had to add this to my /etc/postfix/main.cf:
  
Line 10: Line 11:
  
 
The full smtpd_recipient_restrictions looks like this:
 
The full smtpd_recipient_restrictions looks like this:
<pre>
+
&lt;pre&gt;
 
smtpd_recipient_restrictions = reject_invalid_hostname, reject_non_fqdn_hostname,  reject_non_fqdn_sender, reject_non_fqdn_recipient,  reject_unknown_sender_domain,  reject_unknown_recipient_domain,    reject_unauth_pipelining,  permit_mynetworks,  permit_sasl_authenticated,  reject_unauth_destination,  check_policy_service inet:127.0.0.1:10023, check_policy_service unix:private/policy-spf
 
smtpd_recipient_restrictions = reject_invalid_hostname, reject_non_fqdn_hostname,  reject_non_fqdn_sender, reject_non_fqdn_recipient,  reject_unknown_sender_domain,  reject_unknown_recipient_domain,    reject_unauth_pipelining,  permit_mynetworks,  permit_sasl_authenticated,  reject_unauth_destination,  check_policy_service inet:127.0.0.1:10023, check_policy_service unix:private/policy-spf
</pre>
+
&lt;/pre&gt;
  
 
Now I have a new service in /etc/init.d: postgrey
 
Now I have a new service in /etc/init.d: postgrey
Line 19: Line 20:
  
 
And my logs look like this:
 
And my logs look like this:
<pre>
+
&lt;pre&gt;
 
Oct 17 16:16:32 localhost postfix/smtpd[32484]: connect from unknown[201.226.226.55]
 
Oct 17 16:16:32 localhost postfix/smtpd[32484]: connect from unknown[201.226.226.55]
Oct 17 16:16:35 localhost postfix/smtpd[32484]: NOQUEUE: reject: RCPT from unknown[201.226.226.55]: 450 <rday@finninday.net>: Recipient address rejected: Greylisted for 300 seconds (see http://isg.ee.ethz.ch/tools/postgrey/help/finninday.net.html); from=<lingrossfastenrathmet@grossfastenrath.de> to=<rday@finninday.net> proto=ESMTP helo=<auditoria01.cwpanama.net>
+
Oct 17 16:16:35 localhost postfix/smtpd[32484]: NOQUEUE: reject: RCPT from unknown[201.226.226.55]: 450 &lt;rday@finninday.net&gt;: Recipient address rejected: Greylisted for 300 seconds (see http://isg.ee.ethz.ch/tools/postgrey/help/finninday.net.html); from=&lt;lingrossfastenrathmet@grossfastenrath.de&gt; to=&lt;rday@finninday.net&gt; proto=ESMTP helo=&lt;auditoria01.cwpanama.net&gt;
 
Oct 17 16:16:35 localhost postfix/smtpd[32484]: lost connection after DATA from unknown[201.226.226.55]
 
Oct 17 16:16:35 localhost postfix/smtpd[32484]: lost connection after DATA from unknown[201.226.226.55]
 
Oct 17 16:16:35 localhost postfix/smtpd[32484]: disconnect from unknown[201.226.226.55]
 
Oct 17 16:16:35 localhost postfix/smtpd[32484]: disconnect from unknown[201.226.226.55]
</pre>
+
&lt;/pre&gt;
  
 
My Bayes filter might get rusty from lack of use now.  Hardly anything is persistent enough to get through the greylist.
 
My Bayes filter might get rusty from lack of use now.  Hardly anything is persistent enough to get through the greylist.

Revision as of 03:28, 24 November 2010

This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page

On a lark, I decided to implement greylisting on my mail server. It was as easy as "apt-get install postgrey". Well, almost that easy. I also had to add this to my /etc/postfix/main.cf:

   check_policy_service inet:127.0.0.1:60000

This was slipped in at the end of smtpd_recipient_restrictions.

update Now postgrey is running on port 10023, so that line is now

check_policy_service inet:127.0.0.1:10023

The full smtpd_recipient_restrictions looks like this: <pre> smtpd_recipient_restrictions = reject_invalid_hostname, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, check_policy_service unix:private/policy-spf </pre>

Now I have a new service in /etc/init.d: postgrey

Every attempt to deliver mail to my server generates a to, from, sending-host triplet and the request is bounced. After 5 minutes, any requests bearing that same triplet are allowed. After 5 successful mails are sent associated with a single triplet it is whitelisted.

And my logs look like this: <pre> Oct 17 16:16:32 localhost postfix/smtpd[32484]: connect from unknown[201.226.226.55] Oct 17 16:16:35 localhost postfix/smtpd[32484]: NOQUEUE: reject: RCPT from unknown[201.226.226.55]: 450 <rday@finninday.net>: Recipient address rejected: Greylisted for 300 seconds (see http://isg.ee.ethz.ch/tools/postgrey/help/finninday.net.html); from=<lingrossfastenrathmet@grossfastenrath.de> to=<rday@finninday.net> proto=ESMTP helo=<auditoria01.cwpanama.net> Oct 17 16:16:35 localhost postfix/smtpd[32484]: lost connection after DATA from unknown[201.226.226.55] Oct 17 16:16:35 localhost postfix/smtpd[32484]: disconnect from unknown[201.226.226.55] </pre>

My Bayes filter might get rusty from lack of use now. Hardly anything is persistent enough to get through the greylist.