dovecot-userpassdb: Custom email passwords in Dovecot

I've been meaning to set up IMAP access to mail on my server, since it can be somewhat inconvenient to use SSH to read mail on a phone. The catch was that I wasn't interested in storing my regular password in plain text in a mail application on my phone, and I didn't really feel that installing a LDAP server on a machine used by two people was optimal. After making some research on ways to achieve this with Dovecot, I rolled up my sleeves during Christmas, and wrote an initial version of something.

Then, finally, a few weeks ago, I forced myself to polish it into a good enough state that I would be willing to deploy it on a live server, and at last, today I released the first version of dovecot-userpassdb, a simple implementation of Dovecot's checkpassword interface, which stores every user's email password in their homedir, hashed using passlib.

I invite anyone with a similar use case to try it out, and report any issues you might encounter with it.

Upgrading a year-old Arch Linux installation

Tonight I had some fun dealing with Arch Linux. Some of my friends like to joke about Gentoo (which I've been using for more than four years on my laptops now) being a Tamagotchi. While there might be some truth in those jokes, my own experience indicates that Arch Linux (which has a significantly higher number of users among the people I know) has become orders of magnitude worse in this respect, at least during the past couple of years.

Read more…

Upgrading Postgres from 8.4 to 9.1 on Debian (Squeeze -> Wheezy)

After finally getting a backup server up and running, I could finally proceed with an upgrade of our primary servers. The upgrade path from Squeeze to Wheezy is pretty much smooth, mostly you just need to merge any updates into your config files, which is usually no big deal. Well, except for php.ini, which was about as painful as writing PHP code.

Anyway, the award for the most difficult package to migrate from Squeeze to Wheezy goes to... Postgres. In Squeeze, its version is 8.4; in Wheezy we have 9.1. Read on to find out what you do not want to do and, hopefully, what you might want to do as well.

Read more…

Installing Debian Wheezy on MD RAID + LVM

One of our computers has been slowly rotting for about the past four years. It was running services like RADIUS, DHCP or DNS and also acting as our backup server. After it started showing signs of severe madness, we acquired a replacement machine.

One of the problems with the old machine was that the disk drive used to store our backups wasn't in a RAID of any kind, which turned out to be quite truoblesome since it's the one that started failing. Therefore I decided to put everyting on a RAID1 on the new machine and also stash LVM on top of it -- that's a combination that's been working out quite fine for us on our other servers.

I remember reading a few years ago that it was impossible to have everything on LVM including /boot. However, these days it's quite possible and I was somewhat surprised by how simple it was to set up, considering that all tutorials and HOWTOs I found on installing Debian or other Linux onto LVM instructed people to create a separate /boot partition which would't reside on a logical volume.

Read more…