Lately i've been singing the praises of the iptables part of the netfilter project for linux - and i still think there's nothing better for making your own custom built firewall, but over the weekend i was a bit bored and decided to try out something new, so i gave the latest version of smoothwall from http://www.smoothwall.org a spin on an old 172 meg hard disk i had laying around, i got quite a shock at just how easy it really was to setup - i tried smoothwall on its first release and found it to be a bit limiting but with version 0.99 its a completely different story - it took me 20 minutes to download, install and configure, and it does pretty much everything i need - dhcp, intrusion detection (via snort), port forwarding, remote access (ssh!), vpn, extensive logging and pretty little graphs to show whats happening on your gateway.
If anybody's after a decent firewall and they have an old pentium or 486 they don't need - stick 2 network cards in it (or a network card and modem/isdn/adsl) and give smoothwall a try - it rocks.
I have no association with the smoothwall project btw! i just think its great :-)