1. A method for controlling a firewall for a user computing system, said method comprising: receiving, by a processor of a computer system, a data request at the firewall, the data request being associated with control of a program of the user computing system; said processor determining that a process rule exists for the program, the process rule comprising a condition to be satisfied for a process of the user computing system, the process rule having been generated based on preferences received by a process interrogation controller in the firewall, the process rule being stored in a storage unit of the firewall, the user computing system, or a remote server; in response to the determining that the process rule exists for the program, said processor further determining a manner for evaluating a status of the process and determining a current status of the process, wherein said determining the manner for evaluating comprises searching executable file information, calling an application program interface, or querying an operation system database; said processor determining, using the determined manner for evaluating, whether the condition of the process rule is satisfied based on the current status of the process; and in response to determining whether the condition of the process rule is satisfied, said processor performing one or more firewall actions comprising allowing or denying access to data packets, monitoring data packets, or redirecting data packets to another device.