|This article relies largely or entirely upon a single source. (November 2014)|
|This article relies too much on references to primary sources. (November 2014)|
|Developer(s)||Thomas M. Eastep|
|Stable release||4.6.7 / March 8, 2015|
Shorewall is an open source firewall tool for Linux that builds upon the Netfilter (iptables/ipchains) system built into the Linux kernel, making it easier to manage more complex configuration schemes by providing a higher level of abstraction for describing rules using text files.
It is not a daemon since it does not run continuously, but rather configures rules in the kernel that allow and disallow traffic through the system. Shorewall is configured through a group of plain-text configuration files and does not have a graphical user interface, though a Webmin module is available separately. A monitoring utility packaged with Shorewall can be used to watch the status of the system as it operates and assist in testing.
Shorewall is mainly used in network installations (as opposed to a personal computer firewall), since most of its strength lies in its ability to work with "zones", such as the DMZ or a 'net' zone. Each zone would then have different rules, making it easy to have for example relaxed rules on the company intranet, yet clamp down on traffic coming in from the Internet.
The plain-text configuration files are usually well-commented and easy to use, though Shorewall may be more difficult for new users to handle than other firewall systems with graphical front-ends.
The most recent stable version is 18.104.22.168. Starting with version 4, Shorewall uses also a Perl-based compiler frontend; previously it used only a shell-based compiler frontend. Also, IPv6 is supported starting in version 4.4.3. From version 4.4.3, Shorewall-shell has been removed and Shorewall-perl has been combined with Shorewall-common