I would always run firewalls, for one reason or another, even if it's just simply to close a few ports or just to filter out the abusive hosts.
Software: iptables
Hardware: Cisco ASA series
I'm all for CentOS as well, that's the operating system I use. I've heard that ipfw is a really good firewall, though never tried it myself. Any reviews on it from you guys?