qmailrocks domainkeys
Image via Wikipediamost of us may experience that email we send to yahoo users end up in their bulk folder. this happened because yahoo, and also gmail, already implementing a new standard originally proposed by yahoo to fight spam.
domainkeys works by involving the use of private and public key when sending and recieving email. a sender is generating a pair of the keys and then use the private key on the mail transfer agent (MTA) like qmail, postfix,etc. to sign every email that goes out from it. the public key is published in the DNS record. when a recipient MTA receive the email it will check the signed email with the public key on the DNS record. if they are not matched, the email can be considered as spam or sent by unauthorized MTA, so it cannot be trusted.
it’s a very good method to reduce spam, unfortunately it’s not that simple. it would be perfect if only all MTA on the internet already implemented it. so far not many MTA does. and we can’t just reject email that comes from a MTA that has no domainkeys.
with this new standard, it doesn’t mean that the days of spammers are ended. because they can also implement this domainkeys. it’s just that they would be easier and faster for us to recognize and then reject them. but there’s opinion saying that it’s not really a problem for them because domain name is cheap and they can easily buy another and use it to send spam again (with domainkeys). when they feel they had enough (may be some of us reject them), they will leave it and buy another again. this goes on and on again.
but for a case like this, i think there’s already a good method like this one for example.
so if you got here because you use qmailrocks and want to add domainkeys capability on it, i only have suggestion here for you to consider. AFAIK qmailrocks has not provide domainkeys in it’s installation guideline. what we actually need to know is how to put domainkeys on qmail-smtpd, so we need to change the way that we usually run it as according to qmailrocks and find another way. we can use john simpson’s way to do so, but we also need to adjust some of our current installations to his.Related articles by Zemanta
Model Viewer Controller (MVC) tutorial or howto
For you folks who’s figuring out or trying to understand the concept of MVC, i suggest you to learn by doing instead of just reading the theory. The best tutorial that works for me is the codeigniter documentation. They surely helped me to finally understand the basic idea of MVC.
Click here for controller, here for viewer and here for model. Another good series tutorial is from phpeveryday.
indonesia mozilla firefox survey
please participate on mozilla firefox survey . even when you don’t use it, you’re welcomed ![]()
adding yahoo buzz to blogger
1. On blog control panel click Layout then click Edit HTML. Check Expand widget templates
2. Click Download Full Template to backup your current template, just in case….
3. look for line which should look more less like this :<div class='post-body entry-content'><data:post.body/><div style='clear: both;'/></div>
4. paste the code that you’ve got from yahoo buzz like this :
<div class='post-body entry-content'><data:post.body/><br/><script type=”text/javascript”
src=”http://d.yimg.com/ds/badge2.js”
badgetype=”text-votes”><data:post.url/></script><div style='clear: both;'/></div>5. Save
install djbdns(tinydns) on redhat-like system & get data from bind
as normal user :
$wget http://www.djbdnsrocks.org/downloads/djbdnsrocks.tar.gz
$tar zxvf djbdnsrocks.tar.gz
$su -
as root :
1. installation
A. install daemontools:
$mkdir -p /package
$chmod 1755 /package
$cd /package
$tar zxvf /home/normaluser/djbdnsrocks/daemontools-0.76.tar.gz
$cd /package/admin/daemontools-0.76/src
$rpm -qa | grep patch
we need to install patch package if it’s not yet installed.
usually they’re on CD 2.
$rpm -Uvh patch-2.5.4-29.2.1.i386.rpm patchutils-0.2.31-2.2.1.i386.rpm
$patch < /home/normaluser/djbdnsrocks/daemontools_errnopatch
$cd /package/admin/daemontools-0.76/
$rpm -qa | grep gcc
if gcc compiler is not yet installed, here’s what to do :
$rpm -Uvh binutils-2.16.91.0.6-4.i386.rpm
$rpm -Uvh cpp-4.1.0-3.i386.rpm
$rpm -Uvh glibc-headers-2.4-4.i386.rpm
$rpm -Uvh glibc-devel-2.4-4.i386.rpm
$rpm -Uvh libgomp-4.1.0-3.i386.rpm
$rpm -Uvh gcc-4.1.0-3.i386.rpm
$ ./package/install
B. install ucspi-tcp:
$cd /home/normaluser/djbdnsrocks
$tar zxvf ucspi-tcp-0.88.tar.gz
$cd ucspi-tcp-0.88
$patch < /home/normaluser/djbdnsrocks/ucspi-tcp_errnopatch
$make
$make setup check
C. install djbdns :
$cd /home/normaluser/djbdnsrocks
$tar zxvf djbdns-1.05.tar.gz
$cd djbdns-1.05
$patch < /home/normaluser/djbdnsrocks/djbdns_errnopatch
$make
$ make setup check
$ groupadd dnsuser
$ /usr/sbin/useradd -g dnsuser -s /sbin/nologin -d /dev/null tinydns
$ /usr/sbin/useradd -g dnsuser -s /sbin/nologin -d /dev/null dnslog
$/usr/local/bin/tinydns-conf tinydns dnslog /etc/tinydns x.x.x.x
where x.x.x.x is the ip of tinydns server
$ ln -s /etc/tinydns/service
2. get data from bind:
A. edit named.conf on bind server and add the ip of tinydns server to allow zone transfer from tinydns server.
here’s an example:
zone “domain.com” IN { type master;
file “domain.com.zone”;
allow-query { any; };
allow-transfer { x.x.x.x;};
};
where x.x.x.x is the ip of tinydns server
B. back to tinydns server and do these:
$cd /etc/tinydns/root
$tcpclient x.x.x.x 53 axfr-get domain.com zone-domain zone-domain.tmp
where x.x.x.x is the ip of bind server
$sort -u zone-domain > data
$vi data
find a line like this :
Zdomain.com:domain.com.:hostmaster.domain.com.:2008080101:28800:7200:604800:86400:86400
and change it to this :
Zdomain.com:domain.com.:hostmaster.domain.com.::28800:7200:604800:86400:86400
save and exit
$make
C . test it :
$cd /etc/tinydns/root
$tinydns-get a domain.com
$dnsq a domain.com x.x.x.x
where x.x.x.x is the ip of bind server
both should produce the same answers
finish……..
just a little more note
to show and hide line numbers on vi editor, press escape then
type :set number
to show
or type :set nonumber
to hide
references:
http://cr.yp.to/djbdns/run-server-bind.html
http://www.djbdnsrocks.org

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=58ade30a-30d4-423b-ada8-665e0129001c)





