The HOWTO that Andy quoted is very much out-of-date.  You would do
better to go to http://www.netfilter.org/documentation/ and read the
"Linux 2.4 Filtering HOWTO".  The site is pretty slow right now, but the
document is mirrored elsewhere.  It is written by Rusty Russel, the guy
who first wrote the 2.4 filtering framework.  The tool you need is
called iptables.  It is most likely packaged separately on your
distribution of choice.  Another nice tool to have is iproute2, though
you don't need it.  It exposes some of the more advanced features of
Linux advanced routing.  ifconfig is sufficient.

Viruses...  Well, you don't have a whole lot to worry about, but
clamav's "clamscan" is the program you want.  If you're interested in
setting up smtp proxies, look at clamsmtp, which can be set up
transparently for SMTP connections or as a proxy through your smtp
server.  There are a number of plugins you can use with Thunderbird or
your favorite imap/pop downloader to feed it through clamscan.  In fact,
the Firefox extension "Download Statusbar" has an optional virus
scanner that you can specify in the preferences.

Real-time, live-filesystem scanning is possible, but certainly an
advanced topic.  Generally, it's not needed.  It is sufficient to cron a
filesystem scan.  In fact, you could probably script up a find script to
only scan newer files.

Good luck!

Chad