Sophie

Sophie

distrib > Mandriva > mes5 > x86_64 > by-pkgid > 45723c51178a73df679c2a8284d8eeff > files > 26

shorewall-doc-4.0.15-0.2mdvmes5.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Shorewall Modularization</title><link rel="stylesheet" href="html.css" type="text/css" /><meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /></head><body><div class="article" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="id257527"></a>Shorewall Modularization</h2></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Tom</span> <span class="surname">Eastep</span></h3></div></div></div><div><p class="copyright">Copyright © 2006 Thomas M. Eastep</p></div><div><div class="legalnotice"><a id="id292634"></a><p>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
      “<span class="quote"><a class="ulink" href="GnuCopyright.htm" target="_self">GNU Free Documentation
      License</a></span>”.</p></div></div><div><p class="pubdate">2008/12/15</p></div></div><hr /></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#Intro">Introduction</a></span></dt><dt><span class="section"><a href="#Required">Required Libraries</a></span></dt><dt><span class="section"><a href="#Optional">Optional Libraries</a></span></dt></dl></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Intro"></a>Introduction</h2></div></div></div><p>One of the major changes in Shorewall version 3.4 involved breaking
    much of the code into <em class="firstterm">libraries</em>. This
    modularization is expected to be used primarily by embedded distributions
    that wish to minimize the Shorewall disk and RAM footprint.</p><p>Shorewall libraries are Bourne shell source files that contain
    nothing but function declarations. Shorewall libraries may be loaded into
    a running shell program using the shell's "." operator. The library files
    have names which begin with "lib." and are installed in <code class="filename">/usr/share/shorewall/</code>.</p><p>Individual libraries are of one of two classes. The first class of
    libraries are <em class="firstterm">required libraries</em> which, as their
    name implies, must be included in any Shorewall installation. The other
    libraries are <em class="firstterm">optional libraries</em> that implement a
    particular function. Each optional library may be included or omitted
    based on the requirements of the individual installation.</p></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Required"></a>Required Libraries</h2></div></div></div><p>Shorewall 3.4 includes the following required libraries.</p><div class="itemizedlist"><ul type="disc"><li><p>lib.base — includes functions needed by all Shorewall
        programs.</p></li><li><p>lib.cli — includes functions common to both
        <code class="filename">/sbin/shorewall</code> and
        <code class="filename">/sbin/shorewall-lite</code>.</p></li><li><p>lib.config — contains functions common to both
        <code class="filename">/sbin/shorewall</code> and
        <code class="filename">/usr/share/shorewall/firewall</code>.</p></li></ul></div><p>lib.base and lib.cli are installed in /usr/share/shorewall-lite/ on
    Shorewall Lite systems.</p></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="Optional"></a>Optional Libraries</h2></div></div></div><p>Optional libraries are loaded upon demand based on the user's
    configuration.</p><p>In Shorewall 3.4, the optional libraries are as follows.</p><div class="itemizedlist"><ul type="disc"><li><p>lib.accounting — required if the
        <code class="filename">/etc/shorewall/accounting</code> file is
        non-empty.</p></li><li><p>lib.actions — required if USE_ACTIONS=Yes in
        <code class="filename">/etc/shorewall/shorewall.conf</code>.</p></li><li><p>lib.dynamiczones — required if DYNAMIC_ZONES=Yes in
        <code class="filename">/etc/shorewall/shorewall.conf</code>.</p></li><li><p>lib.maclist — required if the maclist option is specified in any
        entry in <code class="filename">/etc/shorewall/interfaces</code> or
        <code class="filename">/etc/shorewall/hosts</code>.</p></li><li><p>lib.nat — required if the
        <code class="filename">/etc/shorewall/masq</code>,
        <code class="filename">/etc/shorewall/nat</code> or
        <code class="filename">/etc/shorewall/netmap</code> files are non-empty or if
        DNAT[-] rules are present in
        <code class="filename">/etc/shorewall/rules</code>.</p></li><li><p>lib.providers — required if the
        <code class="filename">/etc/shorewall/providers</code> file is
        non-empty.</p></li><li><p>lib.proxyarp — required if the
        <code class="filename">/etc/shorewall/proxyarp</code> file is non-empty or if
        the <span class="bold"><strong>proxyarp</strong></span> option is specified in
        an entry in <code class="filename">/etc/shorewall/interfaces</code>.</p></li><li><p>lib.tc — required if the
        <code class="filename">/etc/shorewall/tcdevices</code> or
        <code class="filename">/etc/shorewall/tcclasses</code> file is
        non-empty.</p></li><li><p>lib.tcrules — required if the
        <code class="filename">/etc/shorewall/tcrules</code> file is non-empty.</p></li><li><p>lib.tunnels — required if the
        <em class="firstterm">/etc/shorewall/tunnels</em> file is
        non-empty.</p></li></ul></div><p>As described, many of the libraries are required when one or more
    configuration files are non-empty and embedded distribution providers are
    encouraged to package each optional library together with its associated
    configuration files.</p><div class="informaltable"><table border="1"><colgroup><col align="left" /><col /></colgroup><tbody><tr><td align="left"><span class="bold"><strong>Library</strong></span></td><td><span class="bold"><strong>Files</strong></span></td></tr><tr><td align="left">lib.accounting</td><td><code class="filename">/etc/shorewall/accounting</code></td></tr><tr><td align="left">lib.actions</td><td><code class="filename">/etc/shorewall/actions</code></td></tr><tr><td align="left">lib.maclist</td><td><code class="filename">/etc/shorewall/maclist</code></td></tr><tr><td align="left">lib.nat</td><td><code class="filename">/etc/shorewall/masq, /etc/shorewall/nat,
            /etc/shorewall/netmap</code></td></tr><tr><td align="left">lib.providers</td><td><code class="filename">/etc/shorewall/route_rules,
            /etc/shorewall/providers</code></td></tr><tr><td align="left">lib.proxyarp</td><td><code class="filename">/etc/shorewall/proxyarp</code></td></tr><tr><td align="left">lib.tc</td><td><code class="filename">/etc/shorewall/tcclasses,
            /etc/shorewall/tcdevices</code></td></tr><tr><td align="left">lib.tcrules</td><td><code class="filename">/etc/shorewall/tcrules</code></td></tr><tr><td align="left">lib.tunnels</td><td><code class="filename">/etc/shorewall/tunnels</code></td></tr></tbody></table></div></div></div></body></html>