# Download

# Shorewall Download

Package Information | Distribution-specific Download Sites | Standard Download Sites | Finding Updates that Correct Known Problems | SVN | Git

2009-04-12

## Package Information

Before trying to install, we strongly urge you to read and print a copy of the Shorewall QuickStart Guide for the configuration that most closely matches your own.

The documentation in both XML and HTML formats is available for download from the Download Sites listed in the table below.

NOTICE: There are three current Shorewall Release Series:

- The STABLE release series is 4.2. Choose this release if you value stability and good documentation.
- The prior STABLE release series is 4.0. We release updates to this series to correct problems but usually don't make enhancements to it.
- The DEVELOPMENT release series is the 4.3 release candidates (found in the 'development' directory). Choose this release if you are very experienced user and you are willing to help test the code and report bugs. THIS VERSION IS EXPERIMENTAL AND IS NOT SUPPORTED.

For additional information, see this article about the Shorewall Release Model.

Beginning with Shorewall version 4.0.0 RC1, there are four related packages:

- Shorewall-shell -- the legacy Shorewall configuration compiler written in Bourne Shell. Not recommended for new installations.
- Shorewall-perl -- an implementation of the Shorewall configuration compiler written in the Perl programming language. This compiler is much faster than Shorewall-shell and produces a firewall script that runs faster. It is the preferred compiler for new Shorewall installations.
- Shorewall-common -- A base package required by both Shorewall-shell and Shorewall-perl.
- Shorewall Lite -- a light-weight Shorewall version that will run compiled firewall scripts generated on a system with one of the compiler packages installed.

Beginning with Shorewall version 4.2.4, there are two additional packages that provide IPv6 support:

- Shorewall6 -- Provides /sbin/shorewall6 for controlling an IPv6 firewall. Requires Shorewall-common and Shorewall-perl, 4.2.4 or later.
- Shorewall6-lite -- a light-weight Shorewall6 version that will run compiled firewall scripts generated on a system with Shorewall6 installed.

To summarize:

- On at least one system in your network, you must install one or both of the compilers (Shorewall-shell and/or Shorewall-perl), the Shorewall-common package and possibly the Shorewall6 package..
- If you only have a single firewall, then that system should be your firewall system.
- If you have more than one firewall, you may wish to install one or both of the compilers on a single administrative system and install Shorewall-lite and/or Shorewall6-lite on the firewalls. Doing so will allow for centralized administration and configuration of the firewalls.

When RPM is used to install Shorewall, the compiler (shorewall-shell and/or shorewall-perl) and shorewall-common must be installed in a single execution of the rpm utility.

Here are the installation instructions.

## Distribution-specific Download Sites

Once you've printed the appropriate QuickStart Guide, download the appropriate modules:

- Simon Matter provides RPMs tailored for Redhat and Fedora. You can download them from his site.

- Fabio Longarai provides a package for OpenWRT (Open firmware for Linksys® WRT54G). You can download it from his site.

- jMCg provides a package for Arch Linux. You can download it from the Arch Linux site.

- If you run a SUSE, Linux PPC, Trustix or TurboLinux distribution with a 2.4 or 2.6 kernel, you can use the standard RPM version (note: the RPM should also work with other distributions that store init scripts in /etc/init.d and that include chkconfig or insserv). If you find that it works in other cases, let me know so that I can mention them here (Note: the standard RPM is known to work on Redhat, Fedora and Mandriva with issues ranging from trivial (Redhat and Fedora) to moderate (Mandriva)). See the Installation Instructions if you have problems installing the RPM.

- If you run Debian and would like a .deb package, Shorewall is included in both the Debian Testing Branch and the Debian Unstable Branch. Additionally, packages for the current Debian stable release are available from the package maintainer's personal page.

- If you run Ubuntu, Benjamin Montgomery maintains a repository for Hardy Heron.

- If you run LEAF/Bering or one if it's derivatives, you can download a .lrp file from the Leaf site.
  From the LEAF Bering-uClibc Team:

  We try to provide the latest stable version shortly after release, but we also want to do some internal tests before making it available. So we may be behind sometimes. But better be sure that the new version is running on LEAF, than being too fast...
  I know it's not obvious for newbies where to find the lrp on our pages.
  shorewall.lrp is part of the packages page:
  http://leaf.sourceforge.net/bering-uclibc/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=3&MMN_position=3:3
  which itself links to cvs:
  http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/leaf/bin/bering-uclibc/packages/shorwall.lrp?rev=HEAD&content-type=application/octet-stream
- Shorewall packages for Slackware are available at http://slackbuilds.org/result/?search=shorewall&sv=.

- Otherwise, download the appropriate tarballs (.tgz or tar.bz2) from one of the standard download sites below.

You will probably also want to download the HTML version of the documentation for easy reference.

## Standard Download Sites

Use the sites below to download the tarball, the documentation and the standard RPM for (SUSE, Power PPC, Trustix and TurboLinux).
Packages are GPG signed, please verify the integrity of the files using our public key https://lists.shorewall.net/shorewall.gpg.key

  SERVER LOCATION | DOMAIN | HTTP | FTP
  Slovak Republic | Shorewall.net | Browse | Browse
  Seattle, Washington, USA | Shorewall.net | Browse | Browse
  Frankfurt/Main, Germany | Shorewall.de | Browse | N/A
  Moscow, Russia | Shorewall.ru | Browse | Browse
  Shoreline, Wa, USA | Shorewall.net | Browse | Browse
  Australia | Shorewall.com.au | Browse | N/A
  Argentina | Shorewall.net | Browse | N/A
  Chicago, Illinois, USA (Incomplete) | Sourceforge.net | Browse | N/A

## Finding Updates that Correct Known Problems

Beginning with Shorewall 4.0.6, updated packages that include fixes to known problems are made available.

Example:

>     ftp> cd pub/shorewall/4.0/shorewall-4.0.6
>     250 OK. Current directory is /pub/shorewall/4.0/shorewall-4.0.6
>     ftp> ls
>     200 PORT command successful
>     150 Connecting to port 36018
>     drwxr-sr-x    4 1006     8            4096 Dec  1 08:16 .
>     drwxr-sr-x    9 1006     8            4096 Nov 23 08:22 ..
>     -rw-r--r--    1 1006     8             194 Nov 24 07:38 4.0.6-2.md5sums
>     -rw-r--r--    1 1006     8             218 Nov 24 07:38 4.0.6-2.sha1sums
>     -rw-r--r--    1 1006     8             841 Nov 26 13:26 4.0.6.md5sums
>     -rw-r--r--    1 1006     8             945 Nov 26 13:26 4.0.6.sha1sums
>     -rw-r--r--    1 1006     8             322 Nov 26 08:35 README.txt
>     drwxr-xr-x    4 1006     8            4096 Nov 23 08:21 base
>     -rw-r--r--    1 1006     8            1570 Dec  1 08:16 known_problems.txt
>     -rw-r--r--    1 1006     8          148363 Nov 23 08:22 patch-4.0.6
>     -rw-r--r--    1 1006     8            4238 Nov 24 16:49 patch-perl-4.0.6.1
>     -rw-r--r--    1 1006     8            5249 Nov 29 07:38 patch-perl-4.0.6.2
>     ...

>     -rw-r--r--    1 1006     8          102295 Nov 24 07:38 shorewall-perl-4.0.6-2.noarch.rpm   <=========
>     -rw-r--r--    1 1006     8           99884 Nov 24 07:38 shorewall-perl-4.0.6.2.tar.bz2      <=========
>     -rw-r--r--    1 1006     8             300 Nov 24 07:38 shorewall-perl-4.0.6.2.tar.bz2.asc  <=========
>     -rw-r--r--    1 1006     8          124814 Nov 24 07:38 shorewall-perl-4.0.6.2.tgz          <=========
>     -rw-r--r--    1 1006     8             300 Nov 24 07:38 shorewall-perl-4.0.6.2.tgz.asc      <=========
>     -rw-r--r--    1 1006     8           59124 Nov 23 08:22 shorewall-shell-4.0.6-0base.noarch.rpm
>     -rw-r--r--    1 1006     8           76500 Nov 23 08:22 shorewall-shell-4.0.6.tar.bz2
>     -rw-r--r--    1 1006     8             300 Nov 23 08:22 shorewall-shell-4.0.6.tar.bz2.asc
>     -rw-r--r--    1 1006     8           95193 Nov 23 08:22 shorewall-shell-4.0.6.tgz
>     -rw-r--r--    1 1006     8             300 Nov 23 08:22 shorewall-shell-4.0.6.tgz.asc
>     drwxr-sr-x    2 1006     8            4096 Nov 26 08:33 superseded
>     226-Options: -a -l
>     226 41 matches total
>     ftp

> The lines flagged with <====== show that the Shorewall-perl package has been updated to include two bug fixes (note the "-2" and ".2" in the file names). The base tarballs for the release are found in the base directory. The unified diff files patch-4.0.6.* may be applied sequentially to the base (4.0.6) Shorewall-perl release (from the base directory) to produce 4.0.6.2. The obsoleted 4.0.6 Shorewall-perl packages may be found in the superseded directory. The known_problems.txt file indicates which problems are fixed in each updated package.

## SVN

> The SVN Repository at Sourceforge is used as a safe-store for Shorewall releases.
> You should download and use the latest SVN version only at your own risk -- please do not attempt to install Shorewall from the SVN components; you will end up with an incomplete and non-working installation.

> If you want to build your own packages from the SVN images, use the build script found in tools/build/buildshorewall.

> If you are looking for bug fixes for the current release, see above.
> The following SVN projects are currently active:

1. > branches

   > This project contains sub-projects for each of the stable releases.

   > The current stable version is branch named x.y where x.y is the major version. Example: 3.4.

   > You can download it using the following commands:
   > svn co https://shorewall.svn.sourceforge.net/svnroot/shorewall/branches/x.y/Shorewall

2. > Shorewall
   > This project contains the Shorewall code.
   > You can download it using the following commands:
   > svn co https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk/Shorewall

3. > manpages
   > Beginning with Shorewall 3,4,0, this project contains the man pages for Shorewall. 'trunk' is the current development version.
   > You can download it using the following commands:
   > svn co https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk/manpages

4. > manpages-lite
   > Beginning with Shorewall 3.4.0, this project contains the man pages for Shorewall Lite. 'trunk' is the current development version.
   > You can download it using the following commands:
   > svn co https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk/manpages-lite

5. > docs
   > This project contains the Shorewall documenation.
   > trunk is the current development version.
   > You can always get the current documentation in XML Docbook format using the following command:
   > svn co https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk/docs

6. > web
   > The project contains the part of this Web site not included in the "docs" project.

7. > tools
   > This project includes the tools used by the Shorewall developers to build Shorewall releases and to publish content to the web sites.

8. > Samples
   > This project contains the sample configurations.

9. > Shorewall-lite
   > This project contains Shorewall Lite -- introduced in Shorewall version 3.2.0 RC1.

10. > Shorewall6
    > This project contains Shorewall6 -- introduced in Shorewall version 4.2.4.

11. > Shorewall6-lite
    > This project contains Shorewall6 Lite -- introduced in Shorewall version 4.2.4.

## Git

Beginning with Shorewall 4.3, the Shorewall project is migrating from SVN to Git. You may browse the Shorewall Git repository at Sourceforge.
To create your own copy of the repository, use this command:
git clone git://shorewall.git.sourceforge.net/gitroot/shorewall

Copyright © 2001-2009 Thomas M. Eastep

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover, and with no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”.