It's not only OK to use both a hardware firewall and a software firewall, it's recommended. Your hardware firewall provides NAT which separates your network from the internet, and should be checking packets on their way in to make sure they're legitimate. Your software firewall should be checking not only inbound traffic, but also outbound traffic. This is important so that if a rogue application gets installed you should be notified of unusual behavior.
|