2004-02-14 19:06:39 +01:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
2004-05-09 00:31:54 +02:00
|
|
|
<article id="standalone">
|
|
|
|
<!--$Id$-->
|
|
|
|
|
2004-02-14 19:06:39 +01:00
|
|
|
<articleinfo>
|
|
|
|
<title>Standalone Firewall</title>
|
|
|
|
|
|
|
|
<authorgroup>
|
|
|
|
<author>
|
|
|
|
<firstname>Tom</firstname>
|
|
|
|
|
|
|
|
<surname>Eastep</surname>
|
|
|
|
</author>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<author>
|
|
|
|
<firstname>Patrice</firstname>
|
|
|
|
|
|
|
|
<surname>Vetsel</surname>
|
|
|
|
</author>
|
|
|
|
|
|
|
|
<author>
|
|
|
|
<firstname>Fabien</firstname>
|
|
|
|
|
|
|
|
<surname>Demassieux</surname>
|
|
|
|
</author>
|
2005-11-20 10:49:00 +01:00
|
|
|
|
|
|
|
<author>
|
|
|
|
<firstname>Guy</firstname>
|
|
|
|
|
|
|
|
<surname>Marcenac</surname>
|
|
|
|
</author>
|
2004-02-14 19:06:39 +01:00
|
|
|
</authorgroup>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<pubdate>2005-11-19</pubdate>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
<copyright>
|
2005-01-22 16:18:06 +01:00
|
|
|
<year>2002-2005</year>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
<holder>Thomas M. Eastep</holder>
|
2005-01-22 16:18:06 +01:00
|
|
|
|
|
|
|
<holder>Patrice Vetsel</holder>
|
|
|
|
|
|
|
|
<holder>Fabien Demasieux</holder>
|
2005-11-20 10:49:00 +01:00
|
|
|
|
|
|
|
<holder>Guy Marcenac</holder>
|
2004-02-14 19:06:39 +01:00
|
|
|
</copyright>
|
|
|
|
|
|
|
|
<legalnotice>
|
|
|
|
<para>Permission is granted to copy, distribute and/or modify this
|
2004-05-09 00:31:54 +02:00
|
|
|
document under the terms of the GNU Free Documentation License, Version
|
2004-02-14 19:06:39 +01:00
|
|
|
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
|
2004-05-09 00:31:54 +02:00
|
|
|
Texts. A copy of the license is included in the section entitled
|
2005-01-22 16:18:06 +01:00
|
|
|
<quote><ulink url="GnuCopyright.htm">GNU Free Documentation
|
|
|
|
License</ulink></quote>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</legalnotice>
|
|
|
|
</articleinfo>
|
|
|
|
|
|
|
|
<note>
|
2004-05-09 00:31:54 +02:00
|
|
|
<para><emphasis role="underline">Notes du traducteur :</emphasis> Le guide
|
2005-01-22 16:18:06 +01:00
|
|
|
initial a été traduit par <ulink
|
2005-11-20 10:49:00 +01:00
|
|
|
url="mailto:vetsel.patrice@wanadoo.fr">VETSEL Patrice</ulink> et la
|
|
|
|
révision pour la version 2 de Shorewall a été effectuée par <ulink
|
|
|
|
url="mailto:fd03x@wanadoo.fr">Fabien Demassieux</ulink>. J'ai assuré la
|
|
|
|
révision pour l'adapter à la version 3 de Shorewall et Thierry Boudet m'a
|
|
|
|
beaucoup aidé avec son regard de relecteur impitoyable. Si vous trouvez
|
|
|
|
des erreurs ou des améliorations à apporter vous pouvez me contacter
|
|
|
|
<ulink url="mailto:guy@posteurs.com">Guy Marcenac</ulink>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</note>
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<section>
|
2004-02-14 19:06:39 +01:00
|
|
|
<title>Introduction</title>
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<para>Configurer Shorewall sur un système isolé Linux est très simple si
|
|
|
|
vous comprenez les bases et suivez la documentation.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
<para>Ce guide ne veut pas vous apprendre tous les rouages de Shorewall.
|
|
|
|
Il se focalise sur ce qui est nécessaire pour configurer Shorewall, dans
|
|
|
|
son utilisation la plus courante :</para>
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
<listitem>
|
|
|
|
<para>Un système Linux</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>Une seule adresse IP externe</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>Une connexion passant par un modem câble, ADSL, ISDN, Frame
|
2005-11-20 10:49:00 +01:00
|
|
|
Relay, rtc...ou bien une connexion à un réseau local (LAN) et vous
|
|
|
|
souhaitez simplement protéger votre système linux des autres systèmes
|
|
|
|
sur ce réseau local.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<section>
|
|
|
|
<title>Pré-requis</title>
|
|
|
|
|
2005-01-22 16:18:06 +01:00
|
|
|
<para>Shorewall a besoin que le package
|
|
|
|
<command>iproute</command>/<command>iproute2</command> soit installé
|
|
|
|
(avec la distribution <trademark>RedHat</trademark>, le package
|
|
|
|
s'appelle <command>iproute</command>). Vous pouvez vérifier si le
|
|
|
|
package est installé par la présence du programme <command>ip</command>
|
|
|
|
sur votre firewall. En tant que <systemitem
|
2004-05-09 00:31:54 +02:00
|
|
|
class="username">root</systemitem>, vous pouvez utiliser la commande
|
|
|
|
<command>which</command> pour cela:</para>
|
|
|
|
|
|
|
|
<programlisting>[root@gateway root]# <command>which ip</command>
|
|
|
|
/sbin/ip
|
|
|
|
[root@gateway root]#</programlisting>
|
|
|
|
</section>
|
|
|
|
|
|
|
|
<section>
|
|
|
|
<title>Avant de commencer</title>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Je recommande de commencer par une lecture complète du guide afin
|
|
|
|
de se familiariser avec les tenants et aboutissants, puis de recommencer
|
|
|
|
et seulement alors d'appliquer vos modifications de
|
|
|
|
configuration.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<caution>
|
|
|
|
<para>Si vous éditez vos fichiers de configuration sur un système
|
|
|
|
<trademark>Windows</trademark>, vous devez les sauver comme des
|
|
|
|
fichiers <trademark>Unix</trademark> si votre éditeur supporte cette
|
|
|
|
option sinon vous devez les convertir avec <command>dos2unix</command>
|
2005-01-22 16:18:06 +01:00
|
|
|
avant d'essayer de les utiliser. De la même manière, si vous copiez un
|
|
|
|
fichier de configuration depuis votre disque dur
|
2004-05-09 00:31:54 +02:00
|
|
|
<trademark>Windows</trademark> vers une disquette, vous devez lancer
|
2005-01-22 16:18:06 +01:00
|
|
|
<command>dos2unix</command> sur la copie avant de l'utiliser avec
|
2004-05-09 00:31:54 +02:00
|
|
|
Shorewall.</para>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<simplelist>
|
|
|
|
<member><ulink url="http://www.simtel.net/pub/pd/51438.html">Version
|
|
|
|
Windows de dos2unix</ulink></member>
|
|
|
|
|
|
|
|
<member><ulink
|
|
|
|
url="http://www.megaloman.com/~hany/software/hd2u/">Version Linux de
|
|
|
|
dos2unix</ulink></member>
|
|
|
|
</simplelist>
|
2004-05-09 00:31:54 +02:00
|
|
|
</caution>
|
|
|
|
</section>
|
|
|
|
|
|
|
|
<section>
|
|
|
|
<title>Conventions</title>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Les points ou les modifications qui s'imposent sont indiqués par
|
2004-05-09 00:31:54 +02:00
|
|
|
<inlinegraphic fileref="images/BD21298_.gif" format="GIF" />.</para>
|
|
|
|
</section>
|
|
|
|
</section>
|
|
|
|
|
|
|
|
<section>
|
|
|
|
<title>PPTP/ADSL</title>
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Si vous êtes équipé d'un modem <acronym>ADSL</acronym> et que vous
|
|
|
|
utilisez <acronym>PPTP</acronym> pour communiquer avec un serveur à
|
|
|
|
travers ce modem, vous devez faire les changements <ulink
|
|
|
|
url="PPTP.htm#PPTP_ADSL">suivants</ulink> en plus de ceux décrits
|
|
|
|
ci-dessous. <acronym>ADSL</acronym> avec <acronym>PPTP</acronym> est
|
|
|
|
commun en Europe, notamment en Autriche.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section>
|
|
|
|
<title>Les Concepts de Shorewall</title>
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
|
|
<para>Les fichiers de configuration pour Shorewall sont situés dans le
|
2005-11-20 10:49:00 +01:00
|
|
|
répertoire <filename class="directory">/etc/shorewall</filename> -- pour
|
|
|
|
de simples paramétrages, vous n'aurez à faire qu'à quelques un d'entre eux
|
|
|
|
comme décrit dans ce guide. Après avoir <ulink url="Install.htm">installé
|
|
|
|
Shorewall</ulink>,vous pourrez trouver les exemples de la manière
|
|
|
|
suivante:</para>
|
|
|
|
|
|
|
|
<para><orderedlist>
|
|
|
|
<listitem>
|
|
|
|
<para>Si vous avez intallé en utilisant un RPM, les exemples seront
|
|
|
|
dans le sous-répertoire <filename
|
|
|
|
class="directory">Samples/one-interface/</filename> du répertoire de
|
|
|
|
la documentation de Shorewall. Si vous ne savez pas où se trouve le
|
|
|
|
répertoire de la documentation de Shorewall, vous pouvez trouver les
|
|
|
|
exemples en utilisant cette commande:</para>
|
|
|
|
|
|
|
|
<programlisting>~# rpm -ql shorewall | fgrep one-interface
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/interfaces
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/policy
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/rules
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/zones
|
|
|
|
~#</programlisting>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>Si vous avez installé depuis le tarball, les exemples sont
|
|
|
|
dans le repéertoire <filename>Samples/one-interface</filename> du
|
|
|
|
tarball.</para>
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para>Si vous avez installé en utlisant un .deb, les exemples sont
|
|
|
|
dans
|
|
|
|
<filename>/usr/share/doc/shorewall/examples/one-interface</filename>.</para>
|
|
|
|
</listitem>
|
|
|
|
</orderedlist><warning>
|
|
|
|
<para><emphasis role="bold">Note aux utilisateurs de
|
|
|
|
Debian</emphasis></para>
|
|
|
|
|
|
|
|
<para>Si vous vous servez du .deb pour installer, vous vous rendrez
|
|
|
|
compte que votre répertoire <filename>/etc/shorewall</filename> est
|
|
|
|
vide. Ceci est voulu. Les squelettes des fichiers de configuration se
|
|
|
|
trouvent sur votre système dans le répertoire <filename
|
|
|
|
class="directory">/usr/share/doc/shorewall/default-config</filename>.
|
|
|
|
Copiez simplement les fichiers dont vous avez besoin depuis ce
|
|
|
|
répertoire dans <filename class="directory">/etc/shorewall</filename>,
|
|
|
|
puis modifiez ces copies.</para>
|
|
|
|
|
|
|
|
<para>Remarquez que vous devez copier <filename>
|
|
|
|
/usr/share/doc/shorewall/default-config/shorewall.conf</filename> et
|
|
|
|
<filename>/usr/share/doc/shorewall/default-config/modules</filename>
|
|
|
|
dans <filename
|
|
|
|
class="directory"><filename>/etc/shorewall</filename></filename> même
|
|
|
|
si vous ne modifiez pas ces fichiers.</para>
|
|
|
|
</warning></para>
|
|
|
|
|
|
|
|
<para>Au fur et à mesure de la présentation de chaque fichier, je vous
|
|
|
|
suggère de jeter un oeil à ceux physiquement présents sur votre système --
|
|
|
|
chacun des fichiers contient des instructions de configuration détaillées
|
|
|
|
et des entrées par défaut.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<para>Shorewall voit le réseau où il fonctionne, comme un ensemble de
|
2005-11-20 10:49:00 +01:00
|
|
|
<emphasis>zones</emphasis>. Dans les fichiers de configuration fournis
|
|
|
|
dans l'archive d'exemples pour une unique interface (one-interface), deux
|
|
|
|
zones seulement sont définies :</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para><programlisting>#ZONE TYPE OPTIONS IN OUT
|
|
|
|
# OPTIONS OPTIONS
|
|
|
|
fw firewall
|
|
|
|
net ipv4</programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Les zones de Shorewall sont définies dans <filename><ulink
|
|
|
|
url="Documentation.htm#Zones">/etc/shorewall/zones</ulink></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Remarquez que Shorewall reconnaît le système de firewall comme sa
|
|
|
|
propre zone. Le nom de la zone firewall (<emphasis
|
|
|
|
role="bold">fw</emphasis> dans l'exemple plus haut) est stocké dans la
|
|
|
|
variable d'environnement <emphasis>$FW</emphasis> qui peut être utilisée
|
|
|
|
depuis l'ensemble des autres fichiers de configuration de Shorewall, pour
|
|
|
|
faire référence au firewall lui-même.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
<para>Les règles concernant le trafic à autoriser ou à interdire sont
|
|
|
|
exprimées en utilisant les termes de zones.</para>
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<itemizedlist>
|
|
|
|
<listitem>
|
|
|
|
<para>Vous exprimez votre politique par défaut pour les connexions
|
2005-01-22 16:18:06 +01:00
|
|
|
d'une zone vers une autre zone dans le fichier <ulink
|
|
|
|
url="Documentation.htm#Policy"><filename
|
2005-11-20 10:49:00 +01:00
|
|
|
class="directory">/etc/shorewall/policy</filename></ulink>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</listitem>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<listitem>
|
|
|
|
<para>Vous définissez les exceptions à ces politiques pas défaut dans
|
2005-11-20 10:49:00 +01:00
|
|
|
le fichier <ulink url="Documentation.htm#Rules"><filename>
|
|
|
|
/etc/shorewall/rules</filename></ulink>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<para>Pour chaque connexion demandant à entrer dans le firewall, la
|
2005-11-20 10:49:00 +01:00
|
|
|
requête est en premier lieu vérifiée par rapport au fichier <filename
|
|
|
|
class="directory">/etc/shorewall/rules</filename>. Si aucune règle dans ce
|
|
|
|
fichier ne correspond à la demande de connexion alors la première
|
|
|
|
politique dans le fichier <filename>/etc/shorewall/policy</filename> qui y
|
|
|
|
correspond sera appliquée. S'il y a une <ulink
|
|
|
|
url="shorewall_extension_scripts.htm">action commune</ulink> définie pour
|
|
|
|
cette politique dans <filename>/etc/shorewall/actions</filename> ou dans
|
|
|
|
<filename>/usr/share/shorewall/actions.std</filename> cette action commune
|
|
|
|
sera exécutée avant que l'action spécifiée dans
|
|
|
|
<filename>/etc/shorewall/rules</filename> ne soit appliquée.</para>
|
|
|
|
|
|
|
|
<para>Le fichier <filename>/etc/shorewall/policy</filename> inclus dans
|
|
|
|
l'archive d'exemple (one-interface) contient les politiques
|
|
|
|
suivantes:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<programlisting>#SOURCE ZONE DESTINATION ZONE POLICY LOG LEVEL LIMIT:BURST
|
2005-11-20 10:49:00 +01:00
|
|
|
$FW net ACCEPT
|
2004-05-09 00:31:54 +02:00
|
|
|
net all DROP info
|
|
|
|
all all REJECT info</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
<para>Ces politiques vont :</para>
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
<listitem>
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Permettre toute demande de connexion depuis le firewall vers
|
2005-01-22 16:18:06 +01:00
|
|
|
l'Internet</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
2004-05-09 00:31:54 +02:00
|
|
|
<para>Drop (ignorer) toutes les demandes de connexion depuis
|
2005-01-22 16:18:06 +01:00
|
|
|
l'Internet vers votre firewall</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
2004-05-09 00:31:54 +02:00
|
|
|
<para>Reject (rejeter) toutes les autres requêtes de connexion
|
|
|
|
(Shorewall à besoin de cette politique).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</listitem>
|
|
|
|
</orderedlist>
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /> A ce point, éditez
|
2005-11-20 10:49:00 +01:00
|
|
|
votre <filename>/etc/shorewall/policy</filename> et faites y les
|
|
|
|
changements que vous désirez.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section>
|
|
|
|
<title>Interface Externe</title>
|
|
|
|
|
|
|
|
<para>Le firewall possède une seule interface réseau. Lorsque la connexion
|
2005-01-22 16:18:06 +01:00
|
|
|
Internet passe par un modem câble ou par un
|
2005-11-20 10:49:00 +01:00
|
|
|
<quote>Routeur</quote><acronym> ADSL</acronym> (pas un simple modem),
|
2005-01-22 16:18:06 +01:00
|
|
|
l'<emphasis>Interface Externe</emphasis> sera l'adaptateur ethernet qui y
|
|
|
|
est connecté à ce <quote>Modem</quote> (e.g., <filename
|
2005-11-20 10:49:00 +01:00
|
|
|
class="devicefile">eth0</filename>). Par contre, si vous vous connectez
|
2005-01-22 16:18:06 +01:00
|
|
|
par <emphasis>Point-to-Point Protocol</emphasis> over Ethernet
|
2005-11-20 10:49:00 +01:00
|
|
|
(<acronym>PPPoE</acronym>) ou <emphasis>par Point-to-Point Tunneling
|
|
|
|
Protocol</emphasis> (<acronym>PPTP</acronym>) l'interface externe sera une
|
|
|
|
interface ppp (e.g. <filename class="devicefile">ppp0</filename>). Si vous
|
2005-01-22 16:18:06 +01:00
|
|
|
vous connectez par un simple modem (<acronym>RTC</acronym>), votre
|
|
|
|
interface externe sera aussi <filename class="devicefile">ppp0</filename>.
|
|
|
|
Si vous vous connectez en utilisant l'<acronym>ISDN</acronym>, votre
|
|
|
|
interface externe sera <filename
|
|
|
|
class="devicefile">ippp0</filename>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Les fichiers de configuration d'exemple pour une interface
|
|
|
|
(one-interface) supposent que votre interface externe est <filename
|
|
|
|
class="devicefile">eth0</filename>. Si votre configuration est différente,
|
|
|
|
vous devrez modifier le
|
|
|
|
fichier<filename>/etc/shorewall/interfaces</filename> en conséquence. Tant
|
|
|
|
que vous y êtes, vous pourriez parcourir la liste des options qui sont
|
|
|
|
spécifiées pour les interfaces. Quelques trucs:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<tip>
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Si votre interface vers l'extérieur est <emphasis
|
|
|
|
role="bold"><filename class="devicefile">ppp0</filename></emphasis>
|
|
|
|
ou<emphasis role="bold"> <filename
|
|
|
|
class="devicefile">ippp0</filename></emphasis>, vous pouvez remplacer le
|
|
|
|
"detect" dans la seconde colonne par un <quote>-</quote> (sans les
|
2005-01-22 16:18:06 +01:00
|
|
|
quotes).</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</tip>
|
|
|
|
|
|
|
|
<tip>
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Si votre interface vers l'extérieur est <emphasis
|
|
|
|
role="bold"><filename class="devicefile">ppp0</filename></emphasis> or
|
|
|
|
<emphasis role="bold"><filename
|
|
|
|
class="devicefile">ippp0</filename></emphasis> ou si vous avez une
|
|
|
|
adresse <acronym>IP</acronym> statique, vous pouvez enlever
|
|
|
|
<varname>"dhcp"</varname> de la liste des options .</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</tip>
|
2004-02-14 19:06:39 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section>
|
2005-11-20 10:49:00 +01:00
|
|
|
<title>Adresses IP</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2005-01-22 16:18:06 +01:00
|
|
|
<para>Avant d'aller plus loin, nous devons dire quelques mots au sujet des
|
2005-11-20 10:49:00 +01:00
|
|
|
adresses IP. Normalement, votre Fournisseur d' Accès Internet (FAI) vous
|
|
|
|
assignera une seule adresse IP. Cette adresse peut être assignée par le
|
|
|
|
Dynamic Host Configuration Protocol (DHCP), lors de l'établissement de
|
|
|
|
votre connexion lorsque vous vous connectez (modem standard) ou bien
|
|
|
|
lorsque vous établissez un autre type de connexion PPP (PPPoA, PPPoE,
|
|
|
|
etc.). Dans certains cas , votre fournisseur peut vous assigner une
|
|
|
|
adresse statique IP. Cela signifie que vous devez configurer l'interface
|
|
|
|
externe de votre firewall afin d'utiliser cette adresse de manière
|
|
|
|
permanente.</para>
|
|
|
|
|
|
|
|
<para>La RFC 1918 reserve des plages d'adresses IP privées pour
|
|
|
|
utilisation dans les réseau privés:</para>
|
|
|
|
|
|
|
|
<programlisting>10.0.0.0 - 10.255.255.255
|
|
|
|
172.16.0.0 - 172.31.255.255
|
|
|
|
192.168.0.0 - 192.168.255.255</programlisting>
|
|
|
|
|
|
|
|
<para>Ces adresses sont parfois nommées <emphasis>non-routable</emphasis>s
|
|
|
|
car les routers centraux d'Internet ne renvoient pas un paquet dont la
|
|
|
|
destination est reservée par la RFC 1918. Dans certain cas cependant, les
|
|
|
|
FAI (fournisseurs d'accès Internet) peuvent assigner ces adresses et
|
|
|
|
utiliser la Traduction d'Adresses Réseau (NAT <emphasis>Network Address
|
|
|
|
Translation</emphasis>) pour réécrire les en-têtes des paquets transmis
|
2005-01-22 16:18:06 +01:00
|
|
|
vers/depuis Internet.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Avant de lancer Shorewall, <emphasis role="bold">il faut regarder
|
|
|
|
l'adresse IP de votre interface externe, et, si elle est dans les plages
|
|
|
|
précédentes, vous devez enlever l'option "norfc1918" dans la ligne
|
|
|
|
concernant l'interface externe dans le fichier <filename><filename
|
|
|
|
class="directory">/etc/shorewall/</filename><filename>interfaces</filename></filename></emphasis>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</section>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<section>
|
2005-01-22 16:18:06 +01:00
|
|
|
<title>Permettre d'autres connexions</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Shorewall inclue une collection de macros qui peuvent être utilisées
|
|
|
|
pour rapidemement autoriser ou refuser des services. Vous pouvez trouver
|
|
|
|
une liste des macros comprises dans votre version de Shorewall en
|
|
|
|
utilisant la commande <command>ls
|
|
|
|
<filename>/usr/share/shorewall/macro.*</filename></command>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Si vous souhaitez autoriser des connections depuis internet vers
|
|
|
|
votre firewall et que vous avez trouvé une macro appropriée dans
|
|
|
|
<filename><filename>/etc/shorewall/macro.*</filename></filename>, le
|
|
|
|
format général d'une règle dans <filename>/etc/shorewall/rules</filename>
|
|
|
|
est le suivant:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
<<emphasis>macro</emphasis>>/ACCEPT net $FW</programlisting>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<example>
|
2005-11-20 10:49:00 +01:00
|
|
|
<title>Vous voulez un serveur Web et un serveur IMAP sur votre firewall
|
|
|
|
accessibles depuis l'extérieur:</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
Web/ACCEPT net $FW
|
|
|
|
IMAP/ACCEPT net $FW</programlisting>
|
2004-05-09 00:31:54 +02:00
|
|
|
</example>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Vous pouvez aussi choisir de coder vos règles directement, sans
|
|
|
|
utiliser de macro pré-définie. Ceci sera nécessaire quand aucune macro
|
|
|
|
pré-définie ne répondra à vos besoins. Dans ce cas, le format général
|
|
|
|
d'une règle dans <filename>/etc/shorewall/rules</filename> est:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
2005-11-20 10:49:00 +01:00
|
|
|
ACCEPT net $FW <emphasis><protocol></emphasis> <emphasis><port></emphasis></programlisting>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<example>
|
2005-11-20 10:49:00 +01:00
|
|
|
<title>Vous voulez un serveur Web et un serveur IMAP sur votre firewall
|
|
|
|
accessibles depuis l'extérieur:</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<para><programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
2005-11-20 10:49:00 +01:00
|
|
|
ACCEPT net $FW tcp 80
|
|
|
|
ACCEPT net $FW tcp 143</programlisting></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</example>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Si vous ne savez pas quel port ou protocole utilise une application
|
|
|
|
donnée, allez voir <ulink url="ports.htm">ici</ulink>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<important>
|
2005-11-20 10:49:00 +01:00
|
|
|
<para>Je ne recommande pas d'activer telnet depuis/vers internet car il
|
|
|
|
utilise du texte en clair (y compris pour le login!). Si vous voulez un
|
|
|
|
accès shell à votre firewall, utilisez SSH:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
SSH/ACCEPT net $FW </programlisting>
|
2004-05-09 00:31:54 +02:00
|
|
|
</important>
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
|
|
<para>Maintenant, éditez votre fichier de configuration <filename
|
|
|
|
class="directory">/etc/shorewall/</filename><filename>rules</filename>
|
|
|
|
pour ajouter, modifier ou supprimer les autres connexions voulues.</para>
|
|
|
|
</section>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<section>
|
2005-01-22 16:18:06 +01:00
|
|
|
<title>Starting and Stopping Your Firewall</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2005-01-22 16:18:06 +01:00
|
|
|
<para>La <ulink url="Install.htm">procédure d'installation</ulink>
|
2005-11-20 10:49:00 +01:00
|
|
|
configure votre système pour lancer Shorewall au boot du système, mais à
|
|
|
|
partir de la version 1.3.9 de Shorewall le lancement est désactivé, de
|
|
|
|
façon à ce que votre système ne tente pas de lancer Shorewall avant que la
|
|
|
|
configuration ne soit terminée. Une fois que vous en avez fini avec la
|
|
|
|
configuration de votre firewall, vous pouvez activer le lancement de
|
|
|
|
Shorewall en supprimant le fichier
|
|
|
|
<filename>/etc/shorewall/startup_disabled</filename>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<important>
|
2005-11-20 10:49:00 +01:00
|
|
|
<para><emphasis role="bold">Les utilisateurs des paquets .deb doivent
|
|
|
|
éditer <filename>/etc/default/shorewall</filename> et mettre
|
|
|
|
<varname>startup=1</varname></emphasis>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</important>
|
|
|
|
|
2005-11-20 10:49:00 +01:00
|
|
|
<para><important>
|
|
|
|
<para><emphasis role="bold">Vous devez activer le lancement de
|
|
|
|
Shorewall en éditant
|
|
|
|
<filename>/etc/shorewall/shorewall.conf</filename> et en y mettant
|
|
|
|
<command>STARTUP_ENABLED=Yes</command>.</emphasis></para>
|
|
|
|
</important>Le firewall est activé en utilisant la commande
|
|
|
|
<quote><command>shorewall start</command></quote> et arrêté avec la
|
|
|
|
commande <quote><command>shorewall stop</command></quote>. Lorsque le
|
|
|
|
firewall est arrêté, le routage est autorisé sur les hôtes qui possèdent
|
|
|
|
une entrée dans <filename class="directory"><ulink
|
|
|
|
url="Documentation.htm#Routestopped">/etc/shorewall/routestopped</ulink></filename>.
|
|
|
|
Un firewall qui tourne peut être relancé en utilisant la commande
|
|
|
|
<quote><command>shorewall restart</command></quote>. Si vous voulez
|
|
|
|
enlever toutes traces de Shorewall sur votre configuration de Netfilter,
|
|
|
|
utilisez "<emphasis role="bold">shorewall clear</emphasis>"</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
<warning>
|
2005-01-22 16:18:06 +01:00
|
|
|
<para>Si vous êtes connecté à votre firewall depuis Internet, n'essayez
|
2005-11-20 10:49:00 +01:00
|
|
|
pas d'exécuter une commande <quote><command>shorewall
|
|
|
|
stop</command></quote> tant que vous n'avez pas ajouté une entrée pour
|
|
|
|
votre adresse <acronym>IP</acronym> (celle à partir de laquelle vous
|
|
|
|
êtes connecté) dans <filename><filename
|
|
|
|
class="directory">/etc/shorewall/</filename><filename>routestopped</filename></filename>.
|
2005-01-22 16:18:06 +01:00
|
|
|
De la même manière, je ne vous recommande pas d'utiliser
|
2004-05-09 00:31:54 +02:00
|
|
|
<quote><command>shorewall restart</command></quote>; il est plus
|
2005-01-22 16:18:06 +01:00
|
|
|
intéressant de créer <ulink
|
|
|
|
url="configuration_file_basics.htm#Configs">une configuration
|
2005-11-20 10:49:00 +01:00
|
|
|
alternative</ulink> et de la tester en utilisant la <ulink
|
|
|
|
url="starting_and_stopping_shorewall.htm">commande "<emphasis
|
|
|
|
role="bold">shorewall try</emphasis>"</ulink></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</warning>
|
|
|
|
</section>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<section>
|
|
|
|
<title>Autres Lectures Recommandées</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<para>Je vous recommande vivement de lire la <ulink
|
|
|
|
url="configuration_file_basics.htm">page des Fonctionnalités Générales des
|
|
|
|
Fichiers de Configuration</ulink> -- elle contient des trucs sur les
|
2005-11-20 10:49:00 +01:00
|
|
|
possibilités de Shorewall pour rendre plus aisée l'administration de votre
|
2004-05-09 00:31:54 +02:00
|
|
|
firewall Shorewall.</para>
|
|
|
|
</section>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
<appendix>
|
2005-01-22 16:18:06 +01:00
|
|
|
<title>Revision History</title>
|
|
|
|
|
|
|
|
<para><revhistory>
|
2005-11-21 00:50:43 +01:00
|
|
|
<revision>
|
|
|
|
<revnumber>1.8</revnumber>
|
|
|
|
|
|
|
|
<date>2005-11-20</date>
|
|
|
|
|
|
|
|
<authorinitials>GM</authorinitials>
|
|
|
|
|
|
|
|
<revremark>Update for Shorewall 3.0</revremark>
|
|
|
|
</revision>
|
|
|
|
|
2005-01-22 16:18:06 +01:00
|
|
|
<revision>
|
|
|
|
<revnumber>1.7</revnumber>
|
|
|
|
|
|
|
|
<date>2004-02-16</date>
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
|
|
<revremark>Move /etc/shorewall/rfc1918 to
|
|
|
|
/usr/share/shorewall.</revremark>
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
<revnumber>1.6</revnumber>
|
|
|
|
|
|
|
|
<date>2004-02-05</date>
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
|
|
<revremark>Update for Shorewall 2.0</revremark>
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
<revnumber>1.5</revnumber>
|
|
|
|
|
|
|
|
<date>2004-01-05</date>
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
|
|
<revremark>Standards Changes</revremark>
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
<revnumber>1.4</revnumber>
|
|
|
|
|
|
|
|
<date>2003-12-30</date>
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
|
|
<revremark>Add tip about /etc/shorewall/rfc1918 updates.</revremark>
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
<revnumber>1.3</revnumber>
|
|
|
|
|
|
|
|
<date>2003-11-15</date>
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
|
|
<revremark>Initial Docbook Conversion</revremark>
|
|
|
|
</revision>
|
|
|
|
</revhistory></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
</appendix>
|
2004-02-14 19:06:39 +01:00
|
|
|
</article>
|