A firewall is a hardware or software device which is configured to permit, deny, or proxy data through a computer network which has different levels of trust.