A firewall is a program that controls the incoming and outgoing network traffic on a system. Use this tag for all questions related to firewall configuration and operation.
A firewall is often associated with a packet filter. A packet filter operates on link, network and transport layer. Examples for packet filters are
- pf (OpenBSD; ported to NetBSD, FreeBSD and Mac OS)
- ipfilter (NetBSD, FreeBSD)
- ipfw (FreeBSD)
- npf (NetBSD)
- xtables (i.e. iptables/ebtables/arptables; Linux)
- nftables (Linux; replacement for xtables)
The latest versions support IPv6 and stateful inspection. The latter means that the software keeps track of what happened within a limited time window and can correlate incoming packets to that history.
Firewalls are not limited to packet filters. Any gateway that enforces a security policy can be considered as a firewall. Examples for those are
- web application firewalls
- database firewalls
- mail gateways
- VoIP gateways (of which session border controllers are a particular form)