qmailrocks domainkeys

September 29, 2008 by gregorgede · Leave a Comment
Filed under: Spam Filtering, spamassassin 

Using a private key to encrypt (thus signing) ...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

Reblog this post [with Zemanta]

Model Viewer Controller (MVC) tutorial or howto

September 22, 2008 by gregorgede · Leave a Comment
Filed under: MVC, codeigniter 

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

September 20, 2008 by gregorgede · Leave a Comment
Filed under: firefox 

please participate on mozilla firefox survey . even when you don’t use it, you’re welcomed :)

adding yahoo buzz to blogger

September 19, 2008 by gregorgede · Leave a Comment
Filed under: yahoo buzz 

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

September 17, 2008 by gregorgede · Leave a Comment
Filed under: convert bind to tinydns 

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

Next Page »