Any of these systems (Debian, FreeBSD, NetBSD, OpenBSD) would be fine for a firewall. Use what you know, or what you have local tech support (i.e. friends) access for.
I have used NetBSD for this, though IPF is a bit of a pain -- PF (OpenBSD) is supposed to be nicer. Of course, I haven't done anything fancy (verified exec, securelevels, etc.).
I don't know what the current state-of-the-art is for linux kernel packet filters. A couple years ago, a friend set up a packet filter for Red Hat and it was a real pain, much worse than IPF.