A firewall is a part of a computer system or network that is designed to block unauthorized access while permitting authorized communications. It is a device or set of devices that is configured to permit or deny network transmissions based upon a set of rules and other criteria.
There are several types of firewall techniques:
- Packet filter : Packet filtering inspects each packet passing through the network and accepts or rejects it based on user-defined rules. Although difficult to configure, it is fairly effective and mostly transparent to its users.
- Application gateway : Applies security mechanisms to specific applications, such as FTP and Telnet servers. This is very effective, but can impose a performance degradation.
- Circuit-level gateway : Applies security mechanisms when a TCP or UCP connection is established. Once the connection has been made, packets can flow between the hosts without further checking.
- Proxy Server : Intercepts all messages entering and leaving the network. The proxy server effectively hides the true network addresses.