<?xml version="1.0" encoding="utf-8"?>
<section version="5.0" xml:lang="it" xml:id="drakwizard_squid"
         xmlns="http://docbook.org/ns/docbook"
         xmlns:ns5="http://www.w3.org/1998/Math/MathML"
         xmlns:ns4="http://www.w3.org/2000/svg"
         xmlns:ns3="http://www.w3.org/1999/xhtml"
         xmlns:ns2="http://www.w3.org/1999/xlink"
         xmlns:ns="http://docbook.org/ns/docbook">
  <info>
    <title xml:id="drakwizard_squid-ti1">Configura server proxy</title>

    <subtitle>drakwizard squid</subtitle>
  </info>

  <mediaobject>
    <imageobject>
      <imagedata align="center" fileref="drakwizard_squid.png" format="PNG"
                 revision="1" xml:id="drakwizard_squid-im1"/>
    </imageobject>
  </mediaobject>

  <para>This tool<footnote>
      <para>You can start this tool from the command line, by typing <emphasis
role="bold">drakwizard squid</emphasis> as root.</para>
    </footnote> can help you to set up a
proxy server. It is a component of drakwizard which should be installed
before you can access to it.</para>

  <section>
    <title>What is a proxy server?</title>

    <para>A proxy server is a server (a computer system or an application)  that acts
as an intermediary for requests from clients seeking resources from other
servers. A client connects to the proxy server, requesting some service,
such as a file, connection, web page, or other resource available from a
different server and the proxy server evaluates the request as a way to
simplify and control its complexity. (From Wikipedia)</para>
  </section>

  <section>
    <title>Setting up a proxy server with drakwizard squid</title>

    <para>Welcome to the proxy server wizard.</para>

    <procedure>
      <step>
        <title>Introduzione</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step1.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im2"/>
          </imageobject>
        </mediaobject>

        <para>The first page is just an introduction, click <guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Selecting the proxy port</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step2.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im3"/>
          </imageobject>
        </mediaobject>

        <para>Select the proxy port browsers will connect through, then click
<guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Set Memory and Disk Usage</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step3.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im4"/>
          </imageobject>
        </mediaobject>

        <para>Set memory and disk cache limits, then click <guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Select Network Access Control</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step4.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im5"/>
          </imageobject>
        </mediaobject>

        <para>Set visibility to local network or world, then click
<guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Grant Network Access</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step5.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im6"/>
          </imageobject>
        </mediaobject>

        <para>Grant access to local networks, then click <guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Use Upper Level Proxy Server?</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step6.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im7"/>
          </imageobject>
        </mediaobject>

        <para>Cascade through another proxy server? If no, skip next step.</para>
      </step>

      <step>
        <title>Upper Level Proxy URL and Port</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step7.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im8"/>
          </imageobject>
        </mediaobject>

        <para>Provide upper level proxy hostname and port, then click
<guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Sommario</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step8.png"
                       format="PNG" revision="1" xml:id="drakwizard_squid-im9"/>
          </imageobject>
        </mediaobject>

        <para>Take a second to check these options, then click
<guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Start during boot?</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step9.png"
                       format="PNG" revision="1"
                       xml:id="drakwizard_squid-im10"/>
          </imageobject>
        </mediaobject>

        <para>Choose if the proxy server should be started during the boot time, then
click <guibutton>Next</guibutton>.</para>
      </step>

      <step>
        <title>Finisci</title>

        <mediaobject>
          <imageobject>
            <imagedata align="center" fileref="drakwizard-proxy-step10.png"
                       format="PNG" revision="1"
                       xml:id="drakwizard_squid-im11"/>
          </imageobject>
        </mediaobject>

        <para>You're done! Click <guibutton>Finish</guibutton>.</para>
      </step>
    </procedure>
  </section>

  <section>
    <title>What is done</title>

    <para><itemizedlist>
        <listitem>
          <para>Installing the package squid if needed;</para>
        </listitem>

        <listitem>
          <para>Saving <code>/etc/squid/squid.conf</code> in
<code>/etc/squid/squid.conf.orig;</code></para>
        </listitem>

        <listitem>
          <para>Creating a new <code>squid.conf</code> starting from
<code>squid.conf.default</code> and adding the new parameters:</para>

          <itemizedlist>
            <listitem>
              <para><code>cache_dir</code></para>
            </listitem>

            <listitem>
              <para><code>localnet</code></para>
            </listitem>

            <listitem>
              <para>cache_mem</para>
            </listitem>

            <listitem>
              <para>http_port</para>
            </listitem>

            <listitem>
              <para><code>level</code> 1, 2 or 3 and <code>http_access</code> according to level</para>
            </listitem>

            <listitem>
              <para><code>cache_peer</code></para>
            </listitem>

            <listitem>
              <para><code>visible_hostname</code></para>
            </listitem>
          </itemizedlist>
        </listitem>

        <listitem>
          <para>Restarting <code>squid.</code></para>
        </listitem>
      </itemizedlist></para>
  </section>
</section>