Don't know if it's the 'best' but I use fwbuilder - http://www.fwbuilder.org/
- both at home and at work. Somewhat intuitive, which is saying something when it comes to firewall products. Extensive docs and examples at the homepage, too. Compiling for Slack can sometimes take a bit of hackin' and hewin', but I've found using rpm2tgz allows me to use the slackware package manager on the converted Mandrake RPMs just fine.