Dec 032010

Postfix implements the header_checks as built-in content inspection classes while receiving mail. Usually the best performance is obtained with pcre (Perl Compatible Regular Expression) tables or slower regexp (POSIX regular expressions). Googling on the net, i’ve found tiny perl script that can queries to,, ( Sahil Tandon wrote it, based on  João Gouveia perl script, i think..)

first download the script

# cd /etc/postfix
# wget

Rename and make it executable

# mv
# chmod 755

Edit add this two lines inet  n       n       n       -       0      spawn
user=nobody argv=/etc/postfix/

Make preliminary test, to ensure sih really spawned and answering our queries

# postfix reload
# telnet 2526

Continue reading »

Aug 082009

Even though spammers may not have thought to do the email forgery yet, I’m publishing SPF txt record in dns.

# dig txt +short
"v=spf1 ip6:2001:470:19:13c::2 -all"

I don’t even know whose gonna validate my spf record anyway 😀 But for the sake of my curiousity, i’m continue developing SPF on my ipv6 postfix smtp. first i need to publish spf txt record    86400   IN      SPF     "v=spf1 ip6:2001:470:19:13c::2 -all"

for the scanner, i’m using postfix-policyd-spf-perl, can be download at The following Perl version and packages are required for running postfix-policyd-spf-perl: Perl 5.6 NetAddr-IP 4 Mail-SPF (not Mail-SPF-Query) perl-Net-DNS >= 0.65 perl-Net-IP >= 1.25 Test the postfix-policyd-spf-perl script, just make sure it works with ipv6 address.

# ./postfix-policyd-spf-perl

action=PREPEND Received-SPF: pass ( 2001:470:19:13c::2 is authorized to use '' in 'mfrom' identity (mechanism 'ip6:2001:470:19:13C::2' matched)) receiver=unknown; identity=mailfrom; envelope-from="";; client-ip="2001:470:19:13c::2"

Continue reading »