Dspam

Keeping DSpam in a good shape

I noticed that my spam filter wan’t performing as well as it used to do. Somehow more and more spam wasn’t blocked anymore. It was becoming annoying. I didn’t have this problem on my system at home before I migrated to macminicolo.net. I looked around on my old system which is still doing it’s work as a backup-mx for my primary server in Vegas.

I found out that a weekly cron job which was purging the DSpam database and removed the old “out-of-date” stuff wasn’t there. I never got around to document it so therefore I had not installed it during the migration. Well there is no better time than the now to correct it. I’ve documented it (Purging the Dspam database automatically) and installed it on my machine. Spam filtering will improve now!

I’m sorry about having left this out for you all!

DSpam documentation updated for Leopard

I’ve finished the documentation set for the DSpam installation on Leopard. There are some minor changes that would cause many problems between Tiger and Leopard. Most, if not all, of the changes are the result of the new user name creation and naming in Leopard. The last change is in the startup procedure, we are now using the lanchd system for DSpam as well.

Quick update on installing the mailserver on Leopard

I’m still very busy and I haven’t had time to rewrite the documentation to reflect all the changes needed to install the mailserver components on a Leopard based Mac.

But here is a quick instruction set on how to get every item compiled on Leopard. Use the documentation set for all the other instructions, here are only the differences in use for Leopard.

As a first you don’t need to install SASL anymore, it all works without it.

Postfix:
make -f Makefile.init makefiles \
CFLAGS=’-arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk’ \
CCARGS=’-DUSE_TLS -DUSE_SASL_AUTH -DUSE_CYRUS_SASL \
-I/usr/include/sasl \
-DHAS_PCRE -I/usr/local/include \
-DHAS_SSL -I/usr/include/openssl \
-DHAS_MYSQL -I/usr/local/mysql/include/mysql’ \
AUXLIBS=’-L/usr/lib -lldap -lsasl2 -L/usr/lib -llber -L/usr/local/lib \
-L/usr/local/lib -lpcre \
-lssl -L/usr/local/mysql/lib/mysql \
-lmysqlclient -lz -lm’

Courier Auth:
export MACOSX_DEPLOYMENT_TARGET=10.5
./configure --with-authmysql \
--without-authpam \
--with-mysql-libs=/usr/local/mysql/lib/mysql \
--with-mysql-includes=/usr/local/mysql/include/mysql

Courier Imap:
./configure --prefix=/usr/local \
--with-authpwd=YES \
--without-authcram \
COURIERAUTHCONFIG=/usr/local/bin/courierauthconfig

Create the vmail user:
sudo dscl . -create /Users/_vmail
sudo dscl . -create /Users/_vmail UserShell /usr/bin/false
sudo dscl . -create /Users/_vmail UniqueID 102
sudo dscl . -create /Users/_vmail PrimaryGroupID 102
sudo dscl . -create /Users/_vmail NFSHomeDirectory /var/empty
sudo dscl . -passwd /Users/_vmail ”

Create the dspam user:
sudo dscl . -create /Users/_dspam
sudo dscl . -create /Users/_dspam UserShell /usr/bin/false
sudo dscl . -create /Users/_dspam UniqueID 101
sudo dscl . -create /Users/_dspam PrimaryGroupID 101
sudo dscl . -create /Users/_dspam NFSHomeDirectory /usr/local/var/dspam
sudo dscl . -passwd /Users/_dspam ”

DSpam:
/configure --enable-daemon \
--with-storage-driver=mysql_drv \
--with-mysql-includes=/usr/local/mysql/include/mysql \
--with-mysql-libraries=/usr/local/mysql/lib/mysql \
--enable-preferences-extension \
--with-dspam-home-owner=_dspam \
--with-dspam-home-group=_postfix \
--with-dspam-home=/usr/local/var/dspam \
--enable-long-usernames \
--with-dspam-group=postfix \
--enable-mysql4-initialization \
--enable-domain-scale \
--enable-virtual-users \
--enable-debug \
--enable-verbose-debug

Maildrop:
sudo chown _vmail maildroprc

maildrop unix – n n – - pipe
flags=DRhu user=_vmail argv=/usr/local/bin/maildrop /etc/maildroprc -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop} ${sender}

Some of the changes are minor but they are required. I’m still testing most of the setup, sorry that it takes so much time to update the documentation. If someone knows a way to edit WordPress pages offline in an easy way I would like to hear about it.

Updates galore

During my week of absence it looks like there happened a lot. Postfix got a new major release bringing it to 2.4.0 and Courier authlib got an update bringing it to 0.59.2. I haven’t looked at the releases themselves but I will test them this week to see if these releases can be used without breaking anything in our current configuration.

Another thing I’m glad to notice is that there is some movement in the development of Dspam. It’s been rather quiet the last few months but Jonathan Zdziarski has released version 3.8.0 from 3.6.8. Mostly because of a lot of new features. I haven’t tried it myself but the user mailinglist is buzzing with positive results. It is however an unofficial release and he hopes he can announce something really positive in the time to come that will really move the project forward. Can’t wait to find out what that will be…

I will post my findings on Postfix and Courier Authlib as soon as possible. Dspam will take a bit longer as it is more complex and I need time for other stuff as well, sorry…