Posted by: Eric Hansen
Software like Shorewall is awesome. It makes managing software firewall easier than eating pie without a fork. However, it has one issue: global variables.
A good example of this happened to a friend not too long ago. In the config files existed some variables (we’ll call them SOME_NET and ANOTHER_NET). However, they were never defined anywhere. Not even doing my favorite grep -r -H “\$SOME_NET” . did any good. As far as I know he still never found out where or what it was defined as, but the horrific troubleshooting still seemed too unfair.
Learn where variables are set, and please keep it there.