2005-12-19 19:39:39 +01:00
|
|
|
|
<?xml version="1.0" encoding="ISO-8859-15"?>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<article id="IPIP" lang="fr">
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<!--$Id$-->
|
|
|
|
|
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<articleinfo>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Guide de configuration Shorewall</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<authorgroup>
|
|
|
|
|
<author>
|
|
|
|
|
<firstname>Tom</firstname>
|
|
|
|
|
|
|
|
|
|
<surname>Eastep</surname>
|
|
|
|
|
</author>
|
|
|
|
|
|
|
|
|
|
<author>
|
|
|
|
|
<firstname>Fabien</firstname>
|
|
|
|
|
|
|
|
|
|
<surname>Demassieux</surname>
|
|
|
|
|
</author>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
|
|
|
|
|
<author>
|
|
|
|
|
<firstname>Guy</firstname>
|
|
|
|
|
|
|
|
|
|
<surname>Marcenac</surname>
|
|
|
|
|
</author>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</authorgroup>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<pubdate>2005-12-18</pubdate>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<copyright>
|
2005-01-22 16:18:06 +01:00
|
|
|
|
<year>2001-2005</year>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<holder>Thomas M. Eastep</holder>
|
2005-01-22 16:18:06 +01:00
|
|
|
|
|
|
|
|
|
<holder>Fabien Demassieux</holder>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
|
|
|
|
|
<holder>Guy Marcenac</holder>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</copyright>
|
|
|
|
|
|
|
|
|
|
<legalnotice>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Permission est accord<72>e de copier, distribuer et/ou modifier ce
|
|
|
|
|
document selon les termes de la Licence de Documentation Libre GNU (GNU
|
|
|
|
|
Free Documentation License), version 1.2 ou toute version ult<6C>rieure
|
|
|
|
|
publi<6C>e par la Free Software Foundation ; sans section Invariables, sans
|
|
|
|
|
premi<6D>re de Couverture, et sans texte de quatri<72>me de couverture. Une
|
|
|
|
|
copie de la pr<70>sente Licence est incluse dans la section intitul<75>e. Une
|
|
|
|
|
traduction fran<61>aise de la licence se trouve dans la section
|
|
|
|
|
<quote><ulink
|
|
|
|
|
url="http://www.idealx.org/dossier/oss/gfdl.fr.html">Licence de
|
|
|
|
|
Documentation Libre GNU</ulink></quote>. Ce paragraphe est une
|
|
|
|
|
traduction fran<61>aise pour aider <20> votre compr<70>hension. Seul le texte
|
|
|
|
|
original en anglais pr<70>sent<6E> ci-dessous fixe les conditions
|
|
|
|
|
d'utilisation de cette documentation.</para>
|
|
|
|
|
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<para>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
|
2004-05-09 00:31:54 +02:00
|
|
|
|
Texts. A copy of the license is included in the section entitled
|
|
|
|
|
<quote><ulink url="GnuCopyright.htm">GNU Free Documentation
|
|
|
|
|
License</ulink></quote>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</legalnotice>
|
|
|
|
|
</articleinfo>
|
|
|
|
|
|
|
|
|
|
<note>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="underline">Notes du traducteur :</emphasis> Le
|
|
|
|
|
traduction initiale a <20>t<EFBFBD> r<>alis<69>e par <ulink
|
|
|
|
|
url="mailto:fd03x@wanadoo.fr">Fabien Demassieux</ulink>. J'ai assur<75> la
|
|
|
|
|
r<>vision pour l'adapter <20> la version 3 de Shorewall. Si vous trouvez des
|
|
|
|
|
erreurs ou des am<61>liorations <20> y apporter vous pouvez me contacter <ulink
|
|
|
|
|
url="mailto:guy@posteurs.com">Guy Marcenac</ulink>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</note>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<caution>
|
|
|
|
|
<para><emphasis role="bold">Cet article s'applique <20> Shorewall 3.0 et <20>
|
|
|
|
|
ses versions ult<6C>rieures. Si vous utilisez une version plus ancienne de
|
|
|
|
|
Shorewall, r<>f<EFBFBD>rez-vous <20> la documentation s'appliquant <20> votre
|
|
|
|
|
version.</emphasis></para>
|
|
|
|
|
</caution>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Introduction">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>Introduction</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Ce guide est destin<69> aux utilisateurs qui configurent Shorewall dans
|
|
|
|
|
un environnement o<> un ensemble d'adresses IP publiques doit <20>tre pris en
|
|
|
|
|
compte ainsi qu'<27> ceux qui souhaitent en savoir plus <20> propos de Shorewall
|
|
|
|
|
que ce que contiennent le guides pour une utilisation avec une <ulink
|
|
|
|
|
url="shorewall_quickstart_guide.htm">adresse IP unique</ulink>. Le champs
|
|
|
|
|
d'application <20>tant tr<74>s large, ce guide vous donnera des indications
|
|
|
|
|
g<>n<EFBFBD>rales <20> suivre et vous indiquera d'autres ressources si
|
|
|
|
|
n<>cessaire.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<caution>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Shorewall a besoin que le paquetage
|
|
|
|
|
<command><command>iproute</command></command>/<command><command>iproute2</command></command>
|
|
|
|
|
soit install<6C> (avec la distribution <trademark>RedHat</trademark>, le
|
|
|
|
|
paquetage s'appelle <command><command>iproute</command></command>). Vous
|
|
|
|
|
pouvez contr<74>ler que le paquetage est install<6C> en v<>rifiant la pr<70>sence
|
|
|
|
|
du programme <command><command>ip</command></command> sur votre
|
|
|
|
|
firewall. En tant que <systemitem class="username">root</systemitem>,
|
|
|
|
|
vous pouvez utiliser la commande <command>which</command> pour
|
|
|
|
|
cela:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>[root@gateway root]# <command>which ip</command>
|
|
|
|
|
/sbin/ip
|
|
|
|
|
[root@gateway root]#</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Je vous recommande de commencer par une lecture compl<70>te du guide
|
|
|
|
|
afin de vous familiariser avec les concepts mis en oeuvre, puis de
|
|
|
|
|
recommencer la lecture et seulement alors d'appliquer vos modifications
|
|
|
|
|
de configuration.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les points o<> des modifications s'imposent sont indiqu<71>s par
|
|
|
|
|
<inlinegraphic fileref="images/BD21298_.gif" format="GIF" />.</para>
|
|
|
|
|
</caution>
|
|
|
|
|
|
|
|
|
|
<caution>
|
|
|
|
|
<para>Si vous <20>ditez vos fichiers de configuration sur un syst<73>me
|
|
|
|
|
<trademark>Windows</trademark>, vous devez les enregistrer comme des
|
|
|
|
|
fichiers <trademark>Unix</trademark> si votre <20>diteur supporte cette
|
|
|
|
|
option sinon vous devez les convertir avec <command>dos2unix</command>
|
|
|
|
|
avant d'essayer de les utiliser. De la m<>me mani<6E>re, si vous copiez un
|
|
|
|
|
fichier de configuration depuis votre disque dur
|
|
|
|
|
<trademark>Windows</trademark> vers une disquette, vous devez lancer
|
|
|
|
|
<command>dos2unix</command> sur la copie avant de l'utiliser avec
|
|
|
|
|
Shorewall.</para>
|
|
|
|
|
|
|
|
|
|
<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>
|
|
|
|
|
</caution>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Concepts">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>Les Concepts de Shorewall</title>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les fichiers de configuration pour Shorewall sont situ<74>s dans le
|
|
|
|
|
r<>pertoire /etc/shorewall -- pour de simples param<61>trages, vous n'aurez <20>
|
|
|
|
|
faire qu'avec quelques-uns d'entre eux comme d<>crit dans ce guide. Des
|
|
|
|
|
squelettes de fichiers sont cr<63><72>s durant <ulink url="Install.htm">la
|
|
|
|
|
proc<6F>dure d'installation de Shorewall</ulink>.</para>
|
|
|
|
|
|
|
|
|
|
<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
|
|
|
|
|
class="directory">/etc/shorewall</filename> est vide. Ceci est voulu.
|
|
|
|
|
Les squelettes des fichiers de configuration se trouvent sur votre
|
|
|
|
|
syst<73>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>Au fur et <20> mesure de la pr<70>sentation de chaque fichier, je vous
|
|
|
|
|
sugg<67>re de jeter un oeil <20> ceux physiquement pr<70>sents sur votre syst<73>me --
|
|
|
|
|
chacun des fichiers contient des instructions de configuration d<>taill<6C>es
|
|
|
|
|
et des entr<74>es par d<>faut.</para>
|
|
|
|
|
|
|
|
|
|
<para>Shorewall voit le r<>seau o<> il fonctionne, comme <20>tant compos<6F> d'un
|
|
|
|
|
ensemble de zones. Dans ce guide nous utiliserons les zones
|
|
|
|
|
suivantes:</para>
|
|
|
|
|
|
|
|
|
|
<variablelist>
|
|
|
|
|
<varlistentry>
|
|
|
|
|
<term>fw</term>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<listitem>
|
|
|
|
|
<para>Le firewall lui-m<>me.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</varlistentry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<varlistentry>
|
|
|
|
|
<term>net</term>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<listitem>
|
|
|
|
|
<para>L'internet public.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</varlistentry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<varlistentry>
|
|
|
|
|
<term>loc</term>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<listitem>
|
|
|
|
|
<para>Un r<>seau local priv<69> utilisant des adresses IP
|
|
|
|
|
priv<69>es.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</varlistentry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<varlistentry>
|
|
|
|
|
<term>dmz</term>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<listitem>
|
|
|
|
|
<para>Une zone d<>militaris<69>e (<acronym>DMZ</acronym>) contenant les
|
|
|
|
|
serveurs publiquement accessibles.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</varlistentry>
|
|
|
|
|
</variablelist>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les Zones sont d<>finies dans le fichier <filename><ulink
|
2004-05-09 00:31:54 +02:00
|
|
|
|
url="Documentation.htm#Zones"><filename>/etc/shorewall/zones</filename></ulink></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<important>
|
|
|
|
|
<para>Le fichier <filename>/etc/shorewall/zones</filename> fourni avec
|
|
|
|
|
la distribution est vide. Vous pouvez cr<63>er l'ensemble de zones standard
|
|
|
|
|
d<>crites au-dessus en copiant puis en collant ce qui suit dans le
|
|
|
|
|
fichier:</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ZONE TYPE OPTIONS
|
|
|
|
|
fw firewall
|
|
|
|
|
net ipv4
|
|
|
|
|
loc ipv4
|
|
|
|
|
dmz ipv4</programlisting>
|
|
|
|
|
</important>
|
|
|
|
|
|
|
|
|
|
<para>Remarquez que Shorewall reconna<6E>t aussi le syst<73>me firewall comme sa
|
|
|
|
|
propre zone - l'exemple ci-dessus suit la convention qui veut que la zone
|
|
|
|
|
firewall soit nomm<6D>e <emphasis role="bold">fw</emphasis>. Le nom de la
|
|
|
|
|
zone firewall (<emphasis role="bold">fw</emphasis> dans l'exemple plus
|
|
|
|
|
haut) est stock<63> dans la variable d'environnement <emphasis>$FW</emphasis>
|
|
|
|
|
lorsque le fichier <filename>/etc/shorewall/zones</filename> est trait<69>. A
|
|
|
|
|
l'exception du nom attribu<62> <20> la zone firewall, Shorewall n'attache aucune
|
|
|
|
|
signification aux noms de zone. Le zones sont enti<74>rement ce que VOUS en
|
|
|
|
|
faites. Ceci signifie que vous ne devriez pas attendre de Shorewall qu'il
|
|
|
|
|
fasse quoi que ce soit de sp<73>cial <quote>car il s'agit de la zone
|
|
|
|
|
internet</quote> ou <quote>car ceci est la
|
|
|
|
|
<acronym>DMZ</acronym></quote>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><EFBFBD>ditez le fichier <filename>/etc/shorewall/zones</filename> et
|
|
|
|
|
faites-y les changements n<>cessaires.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les r<>gles qui concernent le trafic <20> autoriser ou <20> refuser sous
|
|
|
|
|
exprim<69>es en termes de Zones.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous exprimez les politiques par d<>faut entre une zone et une
|
|
|
|
|
autre zone dans le fichier <filename><ulink
|
2004-05-09 00:31:54 +02:00
|
|
|
|
url="Documentation.htm#Policy">/etc/shorewall/policy</ulink></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous d<>finissez les exceptions <20> ces politiques par d<>faut dans
|
2004-05-09 00:31:54 +02:00
|
|
|
|
le fichier <filename><ulink
|
|
|
|
|
url="Documentation.htm#Rules">/etc/shorewall/rules</ulink></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Shorewall est construit sur les m<>canismes de <ulink
|
|
|
|
|
url="http://www.netfilter.org">Netfilter</ulink>, service de filtrage du
|
|
|
|
|
noyau (kernel). Netfilter fournit une <ulink
|
2004-02-14 19:06:39 +01:00
|
|
|
|
url="http://www.cs.princeton.edu/~jns/security/iptables/iptables_conntrack.html">fonction
|
2005-12-19 19:39:39 +01:00
|
|
|
|
de suivi de connexion</ulink> qui permet une analyse d'<27>tat des paquets
|
|
|
|
|
(stateful inspection). Cette propri<72>t<EFBFBD> permet aux r<>gles du firewall
|
|
|
|
|
d'<27>tre d<>finies en termes de connexions plut<75>t qu'en termes de paquets.
|
|
|
|
|
Avec Shorewall, vous:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Identifiez la zone source (client).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Identifiez la zone destination (serveur).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si la politique depuis la zone du client vers la zone du serveur
|
|
|
|
|
est ce que vous souhaitez pour cette paire client/serveur, vous n'avez
|
|
|
|
|
rien de plus <20> faire.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para>Si la politique n'est pas ce que vous souhaitez, alors vous
|
2005-12-19 19:39:39 +01:00
|
|
|
|
devez ajouter une r<>gle. Cette r<>gle est exprim<69>e en termes de zone
|
2004-02-14 19:06:39 +01:00
|
|
|
|
client et de zone serveur.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Autoriser les connexions d'un certain type
|
|
|
|
|
depuis la zone A vers le firewall et depuis firewall vers la zone B
|
|
|
|
|
<emphasis role="bold">NE SIGNIFIE PAS que ces connections sont autoris<69>s
|
|
|
|
|
de la zone A <20> la zone B</emphasis></emphasis> (autrement dit, les
|
|
|
|
|
connexions impliquant la zone firewall ne sont pas transitives).</para>
|
|
|
|
|
|
|
|
|
|
<para>Pour chaque connexion demandant <20> entrer dans le firewall, la
|
|
|
|
|
requ<71>te est en premier lieu v<>rifi<66>e par rapport au fichier
|
|
|
|
|
<filename>/etc/shorewall/rules</filename>. Si aucune r<>gle dans ce fichier
|
|
|
|
|
ne correspond <20> la demande de connexion alors la premi<6D>re politique dans
|
|
|
|
|
le fichier <filename>/etc/shorewall/policy</filename> qui y correspond
|
|
|
|
|
sera appliqu<71>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<65>cut<75>e avant que l'action sp<73>cifi<66>e dans
|
|
|
|
|
<filename>/etc/shorewall/rules</filename> ne soit appliqu<71>e.</para>
|
|
|
|
|
|
|
|
|
|
<para>Avant Shorewall 2.2.0, le fichier
|
|
|
|
|
<filename>/etc/shorewall/policy</filename> avait les politiques
|
|
|
|
|
suivantes:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#SOURCE ZONE DESTINATION ZONE POLICY LOG LIMIT:BURST
|
|
|
|
|
# LEVEL
|
|
|
|
|
fw net ACCEPT
|
|
|
|
|
net all DROP info
|
|
|
|
|
all all REJECT info</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<important>
|
|
|
|
|
<para>Le fichier de politiques distribu<62> actuellement est vide. Vous
|
|
|
|
|
pouvez y copier et coller les entr<74>es pr<70>sent<6E>es ci-dessus comme point
|
|
|
|
|
de d<>part, puis l'adapter <20> vos propres politiques.</para>
|
|
|
|
|
</important>
|
|
|
|
|
|
|
|
|
|
<para>Les politiques pr<70>c<EFBFBD>dentes vont:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Autoriser (ACCEPT) toutes les connexions de votre r<>seau local
|
|
|
|
|
vers internet</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Ignorer (DROP) toutes les tentatives de connexions d'internet
|
|
|
|
|
vers le firewall ou vers votre r<>seau local et enregistrer dans vos
|
|
|
|
|
journaux (log) un message au niveau info (<ulink
|
|
|
|
|
url="shorewall_logging.html">vous trouverez ici la description des
|
|
|
|
|
niveaux de journalisation</ulink>).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Rejeter (REJECT) toutes les autres demandes de connexion et
|
|
|
|
|
g<>n<EFBFBD>rer un message de niveau info dans votre journal. Quant la requ<71>te
|
|
|
|
|
est rejet<65>e et que le protocole est TCP, le firewall retourne un
|
|
|
|
|
paquet RST. Pour tous les autres protocoles, quand une requ<71>te est
|
|
|
|
|
rejet<65>e, le firewall renvoie un paquet ICMP port-unreachable.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Maintenant, <20>ditez votre <filename>/etc/shorewall/policy
|
|
|
|
|
</filename>et apportez-y tous les changements que vous souhaitez.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Interfaces">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Interfaces R<>seau</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Dans la suite du guide, nous nous r<>f<EFBFBD>rerons au sch<63>ma ci-dessous.
|
|
|
|
|
Bien qu'il puisse ne pas correspondre <20> votre propre r<>seau, il peut <20>tre
|
|
|
|
|
utilis<69> pour illustrer les aspects importants de la configuration de
|
2004-02-14 19:06:39 +01:00
|
|
|
|
Shorewall.</para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Sur ce sch<63>ma:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La zone <acronym>DMZ</acronym> est compos<6F>e des syst<73>mes DMZ 1
|
|
|
|
|
et DMZ 2. On utilise une <acronym>DMZ</acronym> pour isoler ses
|
|
|
|
|
serveurs accessibles depuis internet de ses syst<73>mes locaux. Ainsi si
|
|
|
|
|
un des serveurs de la <acronym>DMZ</acronym> est compromis, vous avez
|
|
|
|
|
encore un firewall entre le syst<73>me compromis et vos syst<73>mes
|
2004-02-14 19:06:39 +01:00
|
|
|
|
locaux.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La zone <quote>local</quote> est compos<6F>e des syst<73>mes Local 1,
|
|
|
|
|
Local 2 et Local 3.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Tous les syst<73>mes <20> l'ext<78>rieur du firewall, y compris ceux de
|
|
|
|
|
votre FAI, sont dans la zone internet.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
|
|
|
|
<graphic align="center" fileref="images/dmz3.png" />
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La fa<66>on la plus simple pour d<>finir les zones est d'associer le nom
|
|
|
|
|
de la zone (d<>finie pr<70>c<EFBFBD>demment dans
|
|
|
|
|
<filename>/etc/shorewall/zones</filename>) <20> une interface r<>seau. Ceci
|
|
|
|
|
est fait dans le fichier <ulink
|
|
|
|
|
url="Documentation.htm#Interfaces">/etc/shorewall/interfaces</ulink>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Le firewall illustr<74> ci-dessus <20> trois interfaces r<>seau. Lorsque la
|
|
|
|
|
connexion internet passe par un <quote>modem</quote> c<>ble
|
|
|
|
|
ou<acronym><acronym> ADSL
|
|
|
|
|
</acronym></acronym><emphasis><emphasis>l'Interface
|
|
|
|
|
Externe</emphasis></emphasis> sera l'adaptateur <20>thernet qui est connect<63>
|
|
|
|
|
<20> ce <quote>Modem</quote> (par exemple <filename
|
|
|
|
|
class="devicefile">eth0</filename>). Par contre, si vous vous connectez
|
|
|
|
|
avec <acronym>PPPoE</acronym> (Point-to-Point Protocol over Ethernet) ou
|
|
|
|
|
avec <acronym><acronym>PPTP</acronym></acronym> (Point-to-Point Tunneling
|
|
|
|
|
Protocol), l'interface externe sera une interface ppp (par exemple
|
|
|
|
|
<filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">ppp0</filename></filename>). Si vous vous connectez
|
|
|
|
|
avec un simple modem <acronym><acronym>RTC</acronym></acronym>, votre
|
|
|
|
|
interface externe sera aussi <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">ppp0</filename></filename>. Si vous vous connectez en
|
|
|
|
|
utilisant l'<acronym><acronym>ISDN</acronym></acronym>, votre interface
|
|
|
|
|
externe sera <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">ippp0</filename></filename>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Si votre interface vers l'ext<78>rieur est
|
|
|
|
|
<filename class="devicefile">ppp0</filename> ou <filename
|
|
|
|
|
class="devicefile">ippp0</filename> alors vous mettrez CLAMPMSS=yes dans
|
|
|
|
|
le fichier
|
|
|
|
|
<filename>/etc/shorewall/shorewall.conf</filename></emphasis>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Votre <emphasis>Interface locale</emphasis> sera un adaptateur
|
|
|
|
|
<20>thernet (<filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth0</filename></filename>, <filename
|
|
|
|
|
class="devicefile"><filename class="devicefile">eth1</filename></filename>
|
|
|
|
|
or <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth2</filename></filename>) et sera connect<63>e <20> un hub
|
|
|
|
|
ou <20> un switch. Vos ordinateurs locaux seront connect<63>s <20> ce m<>me hub ou
|
|
|
|
|
switch (note : si vous n'avez qu'un seul ordinateur en local, vous pouvez
|
|
|
|
|
le connecter directement au firewall par un c<>ble crois<69>).</para>
|
|
|
|
|
|
|
|
|
|
<para>Votre <emphasis>interface <acronym>DMZ</acronym></emphasis> sera
|
|
|
|
|
aussi un adaptateur <20>thernet (<filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth0</filename></filename>, <filename
|
|
|
|
|
class="devicefile"><filename class="devicefile">eth1</filename></filename>
|
|
|
|
|
or <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth2</filename></filename>) et sera connect<63> <20> un hub
|
|
|
|
|
ou un <20> switch. Vos ordinateurs appartenant <20> la DMZ seront connect<63>s <20> ce
|
|
|
|
|
m<>me hub ou switch (note : si vous n'avez qu'un seul ordinateur dans la
|
|
|
|
|
<acronym>DMZ</acronym>, vous pouvez le connecter directement au firewall
|
|
|
|
|
par un c<>ble crois<69>).</para>
|
|
|
|
|
|
|
|
|
|
<warning>
|
|
|
|
|
<para><emphasis role="bold">Ne connectez pas les interfaces interne et
|
|
|
|
|
externe sur le m<>me hub ou le m<>me switch, sauf <20> des fins de
|
|
|
|
|
test</emphasis>. Vous pouvez tester en utilisant ce type de
|
|
|
|
|
configuration si vous sp<73>cifiez l'option <emphasis
|
|
|
|
|
role="bold">arp_filter</emphasis> ou l'option <emphasis
|
|
|
|
|
role="bold">arp_ignore</emphasis> dans le fichier <filename
|
|
|
|
|
class="directory">/etc/shorewall/</filename><filename>interfaces, et
|
|
|
|
|
ce</filename> pour toutes les interfaces connect<63>es au hub/switch
|
|
|
|
|
commun. <emphasis role="bold">Il est tr<74>s fortement d<>conseill<6C>
|
|
|
|
|
d'utiliser une telle configuration avec un firewall en
|
|
|
|
|
production</emphasis>.</para>
|
|
|
|
|
</warning>
|
|
|
|
|
|
|
|
|
|
<para>Dans la suite, nous supposerons que:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>L'interface externe est <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth0</filename></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>L'interface locale est <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth1</filename></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>L'interface <acronym>DMZ</acronym> est <filename
|
|
|
|
|
class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth2</filename></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La configuration par d<>faut de Shorewall ne d<>finit le contenu
|
|
|
|
|
d'aucune zone. Pour d<>finir la configuration pr<70>sent<6E>e plus haut, le
|
2004-05-09 00:31:54 +02:00
|
|
|
|
fichier <ulink
|
2005-12-19 19:39:39 +01:00
|
|
|
|
url="Documentation.htm#Interfaces">/etc/shorewall/interfaces</ulink> doit
|
|
|
|
|
contenir:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>#ZONE INTERFACE BROADCAST OPTIONS
|
|
|
|
|
net eth0 detect rfc1918
|
|
|
|
|
loc eth1 detect
|
|
|
|
|
dmz eth2 detect</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Remarquez que la zone $FW n'a aucune entr<74>e dans le fichier
|
|
|
|
|
<filename>/etc/shorewall/interfaces.</filename></para>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><EFBFBD>ditez le fichier <filename>/etc/shorewall/interfaces.</filename>
|
|
|
|
|
D<>finissez les interfaces du r<>seau de votre firewall et associez chacune
|
|
|
|
|
d'entre elles <20> une zone. Si vous avez une zone qui est connect<63>e par plus
|
|
|
|
|
d'une interface, incluez simplement une entr<74>e pour chaque interface et
|
|
|
|
|
r<>p<EFBFBD>tez le nom de zone autant de fois que n<>cessaire.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<example>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Interfaces Multiples associ<63>es une Zone</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>#ZONE INTERFACE BROADCAST OPTIONS
|
|
|
|
|
net eth0 detect rfc1918
|
|
|
|
|
loc eth1 detect
|
|
|
|
|
loc eth2 detect</programlisting>
|
|
|
|
|
</example>
|
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous pouvez d<>finir des zones plus compliqu<71>es en utilisant le
|
2004-05-09 00:31:54 +02:00
|
|
|
|
fichier<filename> <ulink
|
|
|
|
|
url="Documentation.htm#Hosts">/etc/shorewall/hosts</ulink></filename> mais
|
2005-12-19 19:39:39 +01:00
|
|
|
|
dans la plus part des cas, cela ne sera pas n<>cessaire. Vous trouverez des
|
|
|
|
|
exemples dans <ulink
|
|
|
|
|
url="Shorewall_and_Aliased_Interfaces.html">Shorewall_and_Aliased_Interfaces.html</ulink>
|
|
|
|
|
et <ulink url="Multiple_Zones.html">Multiple_Zones.html</ulink>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Addressing">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Adressage, Sous-r<>seaux et Routage</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Normalement, votre <acronym>FAI</acronym> vous attribue un ensemble
|
|
|
|
|
d'adresses IP publiques. Vous utiliserez une de ces adresses pour
|
|
|
|
|
configurer l'interface externe de votre firewall. Vous d<>ciderez ensuite
|
|
|
|
|
comment utiliser le reste de vos adresses. Avant d'aborder ce point, il
|
|
|
|
|
nous faut rappeler le contexte.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si vous <20>tes d<>j<EFBFBD> familier de l'adressage IP et du routage, vous
|
|
|
|
|
pouvez directement aller <20> la prochaine section.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La pr<70>sentation qui suit ne fait que d'effleurer les questions de
|
|
|
|
|
l'adressage et du routage. Si vous vous voulez en apprendre plus sur
|
|
|
|
|
l'adressage <acronym>IP</acronym> et le routage, je vous recommande
|
|
|
|
|
<quote>IP Fundamentals: What Everyone Needs to Know about Addressing &
|
2004-05-09 00:31:54 +02:00
|
|
|
|
Routing</quote>, Thomas A. Maufer, Prentice-Hall, 1999, ISBN 0-13-975483-0
|
|
|
|
|
(<ulink
|
2005-12-19 19:39:39 +01:00
|
|
|
|
url="http://www.phptr.com/browse/product.asp?product_id={58D4F6D4-54C5-48BA-8EDD-86EBD7A42AF6}">lien</ulink>).</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<section id="Addresses">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>Adressage IP</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les adresses IP version 4 (IPv4) sont cod<6F>es sur 32 bits. La
|
|
|
|
|
notation w.x.y.z fait r<>f<EFBFBD>rence <20> une adresse dont l'octet de poids fort
|
|
|
|
|
a pour valeur <quote>w</quote>, le suivant a pour valeur
|
|
|
|
|
<quote>x</quote>, etc. Si nous prenons l'adresse 192.0.2.14 et que nous
|
|
|
|
|
l'exprimons en hexad<61>cimal, nous obtenons</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><programlisting>C0.00.02.0E</programlisting>et si nous la
|
|
|
|
|
regardons comme un entier de 32 bits nous avons</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting>C000020E</programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Subnets">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Sous-r<>seaux</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous entendrez encore aujourd'hui les termes de <quote>R<EFBFBD>seau de
|
|
|
|
|
classe A</quote>, <quote>R<EFBFBD>seau de classe B</quote> et <quote>R<EFBFBD>seau de
|
|
|
|
|
classe C</quote>. Au d<>but de l'existence de l'IP, les r<>seaux ne
|
|
|
|
|
pouvaient avoir que trois tailles (il y avait aussi les r<>seaux de
|
|
|
|
|
classe D mais il <20>taient utilis<69>s diff<66>remment):</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<simplelist>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<member>Classe A - masque de sous-r<>seau 255.0.0.0, taille = 2 **
|
|
|
|
|
24</member>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<member>Classe B - masque de sous-r<>seau 255.255.0.0, taille = 2 **
|
|
|
|
|
16</member>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<member>Classe C - masque de sous-r<>seau 255.255.255.0, taille =
|
|
|
|
|
256</member>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</simplelist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La classe d'un r<>seau <20>tait d<>termin<69>e de fa<66>on unique par la
|
|
|
|
|
valeur de l'octet de poids fort de son adresse, ainsi en regardant une
|
|
|
|
|
adresse IP on pouvait d<>terminer imm<6D>diatement la valeur du masque
|
|
|
|
|
r<>seau. Le masque r<>seau est un nombre qui combin<69> <20> une adresse par un
|
|
|
|
|
ET logique, isole l'adresse du r<>seau auquel cette adresse appartient.
|
|
|
|
|
Le reste de l'adresse est le <emphasis>num<EFBFBD>ro d'h<>te</emphasis>. Par
|
|
|
|
|
exemple, dans l'adresse de classe C 192.0.2.14, la valeur hexad<61>cimale
|
|
|
|
|
de l'adresse du r<>seau est C00002 et le num<75>ro d'h<>te est 0E.</para>
|
|
|
|
|
|
|
|
|
|
<para>Comme internet se d<>veloppait, il devint clair qu'un
|
|
|
|
|
partitionnement aussi grossier de l'espace d'adresses de 32 bits allait
|
|
|
|
|
<20>tre tr<74>s limitatif (rapidement, les grandes soci<63>t<EFBFBD>s et les universit<69>s
|
|
|
|
|
s'<27>taient d<>j<EFBFBD> attribu<62>es leur propre r<>seau de classe A !). Apr<70>s
|
|
|
|
|
quelques faux d<>parts, la technique courante du sous-adressage de ces
|
|
|
|
|
r<>seaux en plus petits sous-r<>seaux <20>volua. On fait r<>f<EFBFBD>rence <20> cette
|
|
|
|
|
technique sous l'appellation de Routage Inter-Domaine Sans Classe ou
|
|
|
|
|
<emphasis>Classless InterDomain Routing</emphasis>
|
|
|
|
|
(<acronym>CIDR</acronym>). Aujourd'hui, les syst<73>mes avec lesquels vous
|
|
|
|
|
travaillez sont probablement compatibles avec la notation CIDR. La
|
|
|
|
|
gestion des r<>seaux bas<61>e sur les Classes est du domaine du
|
|
|
|
|
pass<73>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Un <emphasis>sous-r<>seau</emphasis> (<emphasis>subnet</emphasis>
|
|
|
|
|
ou <emphasis>subnetwork</emphasis>) est un ensemble contigu d'adresses
|
|
|
|
|
IP tel que:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Le nombre d'adresses dans le jeu est un multiple de 2.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La premi<6D>re adresse dans le jeu est un multiple de la taille
|
2004-02-14 19:06:39 +01:00
|
|
|
|
du jeu.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La premi<6D>re adresse du sous-r<>seau est r<>serv<72>e et on s'y
|
|
|
|
|
r<>f<EFBFBD>re comme <20>tant <emphasis>l'adresse du
|
|
|
|
|
sous-r<>seau</emphasis>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La derni<6E>re adresse du sous-r<>seau est r<>serv<72>e comme
|
|
|
|
|
<emphasis>adresse de diffusion (broadcast) du
|
|
|
|
|
sous-r<>seau</emphasis>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Comme vous pouvez le constater par cette d<>finition, dans chaque
|
|
|
|
|
sous-r<>seau de taille n il y a (n - 2) adresses utilisables (adresses
|
|
|
|
|
qui peuvent <20>tre attribu<62>es <20> un h<>te). La premi<6D>re et la derni<6E>re
|
|
|
|
|
adresse du sous-r<>seau sont utilis<69>es respectivement pour identifier
|
|
|
|
|
l'adresse du sous-r<>seau et l'adresse de diffusion du sous-r<>seau. En
|
|
|
|
|
cons<6E>quence, de petits sous-r<>seaux sont plus gourmands en adresses IP
|
|
|
|
|
que des sous-r<>seaux plus <20>tendus.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Comme n est une puissance de deux, nous pouvons ais<69>ment calculer
|
|
|
|
|
le <emphasis>Logarithme <20> base 2 de n </emphasis>(log2). La taille et le
|
|
|
|
|
logarithme <20> base 2 pour les tailles de sous-r<>seau les plus communes
|
|
|
|
|
sont donn<6E>s par la table suivante:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<table>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Logarithmes base 2</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<tgroup cols="3">
|
|
|
|
|
<tbody>
|
|
|
|
|
<row>
|
|
|
|
|
<entry><emphasis role="bold">n</emphasis></entry>
|
|
|
|
|
|
|
|
|
|
<entry><emphasis role="bold">log2 n</emphasis></entry>
|
|
|
|
|
|
|
|
|
|
<entry><emphasis role="bold">(32 - log2 n)</emphasis></entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>8</entry>
|
|
|
|
|
|
|
|
|
|
<entry>3</entry>
|
|
|
|
|
|
|
|
|
|
<entry>29</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>16</entry>
|
|
|
|
|
|
|
|
|
|
<entry>4</entry>
|
|
|
|
|
|
|
|
|
|
<entry>28</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>32</entry>
|
|
|
|
|
|
|
|
|
|
<entry>5</entry>
|
|
|
|
|
|
|
|
|
|
<entry>27</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>64</entry>
|
|
|
|
|
|
|
|
|
|
<entry>6</entry>
|
|
|
|
|
|
|
|
|
|
<entry>26</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>128</entry>
|
|
|
|
|
|
|
|
|
|
<entry>7</entry>
|
|
|
|
|
|
|
|
|
|
<entry>25</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>256</entry>
|
|
|
|
|
|
|
|
|
|
<entry>8</entry>
|
|
|
|
|
|
|
|
|
|
<entry>24</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>512</entry>
|
|
|
|
|
|
|
|
|
|
<entry>9</entry>
|
|
|
|
|
|
|
|
|
|
<entry>23</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>1024</entry>
|
|
|
|
|
|
|
|
|
|
<entry>10</entry>
|
|
|
|
|
|
|
|
|
|
<entry>22</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>2048</entry>
|
|
|
|
|
|
|
|
|
|
<entry>11</entry>
|
|
|
|
|
|
|
|
|
|
<entry>21</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>4096</entry>
|
|
|
|
|
|
|
|
|
|
<entry>12</entry>
|
|
|
|
|
|
|
|
|
|
<entry>20</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>8192</entry>
|
|
|
|
|
|
|
|
|
|
<entry>13</entry>
|
|
|
|
|
|
|
|
|
|
<entry>19</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>16384</entry>
|
|
|
|
|
|
|
|
|
|
<entry>14</entry>
|
|
|
|
|
|
|
|
|
|
<entry>18</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>32768</entry>
|
|
|
|
|
|
|
|
|
|
<entry>15</entry>
|
|
|
|
|
|
|
|
|
|
<entry>17</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>65536</entry>
|
|
|
|
|
|
|
|
|
|
<entry>16</entry>
|
|
|
|
|
|
|
|
|
|
<entry>16</entry>
|
|
|
|
|
</row>
|
|
|
|
|
</tbody>
|
|
|
|
|
</tgroup>
|
|
|
|
|
</table>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous constaterez que la table ci-dessus contient aussi une colonne
|
|
|
|
|
(32 - log2<emphasis role="bold"> n</emphasis>). Ce nombre est le
|
|
|
|
|
<emphasis>Masque de Sous-r<>seau <20> Longueur Variable</emphasis> ou
|
|
|
|
|
<emphasis>Variable Length Subnet Mask</emphasis>
|
|
|
|
|
(<acronym>VLSM</acronym>) pour un sous-r<>seau de taille n. De la table
|
|
|
|
|
ci-dessus, nous pouvons d<>duire la suivante, qui est plus facile <20>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
utiliser.</para>
|
|
|
|
|
|
|
|
|
|
<table>
|
|
|
|
|
<title>VLSM</title>
|
|
|
|
|
|
|
|
|
|
<tgroup cols="3">
|
|
|
|
|
<tbody>
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Taille du
|
|
|
|
|
sous-r<>seau</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<entry><emphasis role="bold">VLSM</emphasis></entry>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Masque de
|
|
|
|
|
sous-r<>seau</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>8</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/29</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.248</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>16</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/28</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.240</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>32</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/27</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.224</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>64</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/26</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.192</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>128</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/25</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.128</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>256</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/24</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>512</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/23</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.254.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>1024</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/22</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.252.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>2048</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/21</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.248.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>4096</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/20</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.240.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>8192</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/19</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.224.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>16384</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/18</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.192.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>32768</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/17</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.128.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>65536</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/16</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.0.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>2 ** 24</entry>
|
|
|
|
|
|
|
|
|
|
<entry>/8</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.0.0.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
</tbody>
|
|
|
|
|
</tgroup>
|
|
|
|
|
</table>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Notez que le <acronym>VLSM</acronym> est <20>crit avec un slash
|
|
|
|
|
(<quote>/</quote>) -- vous entendrez souvent nommer un r<>seau de taille
|
|
|
|
|
64 comme <20>tant un <quote>slash 26</quote> et un de taille 8 comme <20>tant
|
|
|
|
|
un <quote>slash 29</quote>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Le masque de sous-r<>seau est simplement un nombre de 32 bits avec
|
|
|
|
|
les premiers bits correspondant au <acronym>VLSM</acronym> positionn<6E>s <20>
|
|
|
|
|
<quote>1</quote> et les bits suivants <20> <quote>0</quote>. Par exemple,
|
|
|
|
|
pour un sous-r<>seau de taille 64, le masque de sous-r<>seau d<>bute par 26
|
|
|
|
|
bits <20> <quote>1</quote>:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<para><programlisting>11111111111111111111111111000000 = FFFFFFC0 = FF.FF.FF.C0 = 255.255.255.192</programlisting>Le
|
2005-12-19 19:39:39 +01:00
|
|
|
|
masque de sous-r<>seau a la propri<72>t<EFBFBD> suivante: si vous appliquez un ET
|
|
|
|
|
logique entre le masque de sous-r<>seau et une adresse dans le
|
|
|
|
|
sous-r<>seau, le r<>sultat est l'adresse du sous-r<>seau. Tout aussi
|
|
|
|
|
important, si vous appliquer un ET logique entre le masque de
|
|
|
|
|
sous-r<>seau et une adresse en dehors du sous-r<>seau, le r<>sultat n'est
|
|
|
|
|
PAS l'adresse du sous-r<>seau. Comme nous le verrons apr<70>s, cette
|
|
|
|
|
propri<72>t<EFBFBD> du masque de sous-r<>seau est tr<74>s importante dans le
|
|
|
|
|
routage.</para>
|
|
|
|
|
|
|
|
|
|
<para>Pour un sous-r<>seau dont l'adresse est <emphasis
|
|
|
|
|
role="bold">a.b.c.d</emphasis> et dont le <acronym>VLSM</acronym> est
|
|
|
|
|
<emphasis role="bold">/v</emphasis>, nous notons le sous-r<>seau
|
|
|
|
|
<quote><emphasis role="bold">a.b.c.d/v</emphasis></quote> en utilisant
|
|
|
|
|
la <emphasis><emphasis>notation CIDR</emphasis></emphasis>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<table>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Un exemple de sous-r<>seau :</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<tgroup cols="2">
|
|
|
|
|
<tbody>
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Sous-r<>seau:</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<entry>10.10.10.0 - 10.10.10.127</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Taille du
|
|
|
|
|
sous-r<>seau:</emphasis></entry>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<entry>128</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Adresse du
|
|
|
|
|
sous-r<>seau:</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<entry>10.10.10.0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Adresse de
|
|
|
|
|
diffusion:</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<entry>10.10.10.127</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Notation CIDR:</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<entry>10.10.10.0/25</entry>
|
|
|
|
|
</row>
|
|
|
|
|
</tbody>
|
|
|
|
|
</tgroup>
|
|
|
|
|
</table>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Il existe deux sous-r<>seaux d<>g<EFBFBD>n<EFBFBD>r<EFBFBD>s qui doivent <20>tre mentionn<6E>s:
|
|
|
|
|
le sous-r<>seau avec un seul membre et le sous-r<>seau avec 2 ** 32
|
2004-02-14 19:06:39 +01:00
|
|
|
|
membres.</para>
|
|
|
|
|
|
|
|
|
|
<table>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<title>/32 and /0</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<tgroup cols="4">
|
|
|
|
|
<tbody>
|
|
|
|
|
<row>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Taille du
|
|
|
|
|
sous-r<>seau</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Longueur VLSM</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Masque de
|
|
|
|
|
sous-r<>seau</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<entry><emphasis role="bold">Notation CIDR</emphasis></entry>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>1</entry>
|
|
|
|
|
|
|
|
|
|
<entry>32</entry>
|
|
|
|
|
|
|
|
|
|
<entry>255.255.255.255</entry>
|
|
|
|
|
|
|
|
|
|
<entry>a.b.c.d/32</entry>
|
|
|
|
|
</row>
|
|
|
|
|
|
|
|
|
|
<row>
|
|
|
|
|
<entry>32</entry>
|
|
|
|
|
|
|
|
|
|
<entry>0</entry>
|
|
|
|
|
|
|
|
|
|
<entry>0.0.0.0</entry>
|
|
|
|
|
|
|
|
|
|
<entry>0.0.0.0/0</entry>
|
|
|
|
|
</row>
|
|
|
|
|
</tbody>
|
|
|
|
|
</tgroup>
|
|
|
|
|
</table>
|
|
|
|
|
|
|
|
|
|
<para>Ainsi, chaque adresse <emphasis role="bold">a.b.c.d</emphasis>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
peut aussi <20>tre <20>crite <emphasis role="bold">a.b.c.d/32</emphasis> et
|
|
|
|
|
l'ensemble des adresses possibles est <20>crit <emphasis
|
2004-05-09 00:31:54 +02:00
|
|
|
|
role="bold">0.0.0.0/0</emphasis>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Un utilisateur de Shorewall a propos<6F> cette tr<74>s utile <ulink
|
|
|
|
|
url="http://shorewall.net/pub/shorewall/contrib/IPSubNetMask.html">repr<70>sentation
|
|
|
|
|
graphique</ulink> de ces informations.</para>
|
|
|
|
|
|
|
|
|
|
<para>Dans la suite, nous utiliserons la notation <emphasis
|
|
|
|
|
role="bold">a.b.c.d/v</emphasis> pour d<>crire la configuration IP d'une
|
|
|
|
|
interface r<>seau (l'utilitaire <command>ip</command> utilise aussi cette
|
|
|
|
|
syntaxe). Dans cette notation l'interface est configur<75>e avec une
|
|
|
|
|
adresse ip <emphasis role="bold">a.b.c.d</emphasis> avec le masque de
|
|
|
|
|
sous-r<>seau qui correspond au VLSM /<emphasis
|
2004-02-14 19:06:39 +01:00
|
|
|
|
role="bold">v</emphasis>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<example>
|
|
|
|
|
<title>192.0.2.65/29</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>L'interface est configur<75>e avec l'adresse IP 192.0.2.65 et le
|
|
|
|
|
masque de sous-r<>seau 255.255.255.248.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</example>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>/sbin/shorewall propose une commande <command>ipcalc</command> qui
|
|
|
|
|
calcule automatiquement les informations d'un [sous-]r<>seau.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<example>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Utiliser la commande
|
|
|
|
|
<command><command>ipcalc</command></command>.</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>shorewall ipcalc 10.10.10.0/25
|
|
|
|
|
CIDR=10.10.10.0/25
|
|
|
|
|
NETMASK=255.255.255.128
|
|
|
|
|
NETWORK=10.10.10.0
|
2005-12-19 19:39:39 +01:00
|
|
|
|
BROADCAST=10.10.10.127</programlisting>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</example>
|
|
|
|
|
|
|
|
|
|
<example>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Utiliser la commande
|
|
|
|
|
<command><command>ipcalc</command></command>.</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>shorewall ipcalc 10.10.10.0 255.255.255.128
|
|
|
|
|
CIDR=10.10.10.0/25
|
|
|
|
|
NETMASK=255.255.255.128
|
|
|
|
|
NETWORK=10.10.10.0
|
|
|
|
|
BROADCAST=10.10.10.127</programlisting>
|
|
|
|
|
</example>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Routing">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>Routage</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>L'un des objectifs de la gestion en sous-r<>seaux est qu'elle pose
|
|
|
|
|
les bases pour le routage. Ci-dessous se trouve la table de routage de
|
|
|
|
|
mon firewall:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>[root@gateway root]# netstat -nr
|
|
|
|
|
Kernel IP routing table
|
|
|
|
|
Destination Gateway Genmask Flgs MSS Win irtt Iface
|
|
|
|
|
192.168.9.1 0.0.0.0 255.255.255.255 UH 40 0 0 texas
|
|
|
|
|
206.124.146.177 0.0.0.0 255.255.255.255 UH 40 0 0 eth1
|
|
|
|
|
206.124.146.180 0.0.0.0 255.255.255.255 UH 40 0 0 eth3
|
|
|
|
|
192.168.3.0 0.0.0.0 255.255.255.0 U 40 0 0 eth3
|
|
|
|
|
192.168.2.0 0.0.0.0 255.255.255.0 U 40 0 0 eth1
|
|
|
|
|
192.168.1.0 0.0.0.0 255.255.255.0 U 40 0 0 eth2
|
|
|
|
|
206.124.146.0 0.0.0.0 255.255.255.0 U 40 0 0 eth0
|
|
|
|
|
192.168.9.0 192.0.2.223 255.255.255.0 UG 40 0 0 texas
|
|
|
|
|
127.0.0.0 0.0.0.0 255.0.0.0 U 40 0 0 lo
|
|
|
|
|
0.0.0.0 206.124.146.254 0.0.0.0 UG 40 0 0 eth0
|
|
|
|
|
[root@gateway root]#</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>L'interface <emphasis>texas</emphasis> est un tunnel GRE vers un
|
|
|
|
|
site pair <20> Dallas, au Texas.</para>
|
|
|
|
|
|
|
|
|
|
<para>Les trois premi<6D>res routes sont des routes vers des h<>tes
|
|
|
|
|
(<emphasis>host routes)</emphasis> puisqu'elles indiquent comment aller
|
|
|
|
|
vers un h<>te unique. Dans la sortie de <command>netstat</command>, cela
|
|
|
|
|
se voit tr<74>s bien au masque de sous-r<>seau (Genmask) <20> 255.255.255.255,
|
|
|
|
|
ou bien au drapeau <20> <quote>H</quote> dans la colonne
|
|
|
|
|
<quote>Flags</quote> . Les autres routes sont des routes r<>seau car
|
|
|
|
|
elles indiquent au noyau comment router des paquets <20> un sous-r<>seau. La
|
|
|
|
|
derni<6E>re route est <emphasis>la route par d<>faut</emphasis>. La
|
|
|
|
|
passerelle mentionn<6E>e dans cette route est appel<65>e <emphasis>la
|
|
|
|
|
passerelle par d<>faut (default gateway).</emphasis></para>
|
|
|
|
|
|
|
|
|
|
<para>Quant le noyau essaye d'envoyer un paquet <20> une adresse IP
|
|
|
|
|
<emphasis role="bold">A</emphasis>, il commence au d<>but de la table de
|
2004-05-09 00:31:54 +02:00
|
|
|
|
routage et:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role=""><emphasis>Il r<>alise un ET logique entre
|
|
|
|
|
A</emphasis></emphasis> et la valeur du masque de sou-r<>seau pour
|
|
|
|
|
cette entr<74>e de la table.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Ce r<>sultat est compar<61> avec la valeur de la
|
|
|
|
|
<quote>Destination</quote> dans cette entr<74>e de la table.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si le r<>sultat et la valeur de la <quote>Destination</quote>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
sont identiques, alors:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para>Si la colonne <quote>Gateway</quote> n'est pas nulle, le
|
2005-12-19 19:39:39 +01:00
|
|
|
|
paquet est envoy<6F> <20> la passerelle par l'interface nomm<6D>e dans la
|
|
|
|
|
colonne <quote>Iface</quote>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Sinon, le paquet est directement envoy<6F> <20> <emphasis
|
|
|
|
|
role="bold">A</emphasis> <20> travers l'interface nomm<6D>e dans la
|
2004-05-09 00:31:54 +02:00
|
|
|
|
colonne <quote>iface</quote>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Sinon, les <20>tapes pr<70>c<EFBFBD>dentes sont r<>p<EFBFBD>t<EFBFBD>es sur l'entr<74>e
|
2004-05-09 00:31:54 +02:00
|
|
|
|
suivante de la table.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Puisque la route par d<>faut correspond <20> toutes les adresses IP
|
|
|
|
|
(<emphasis role="bold">A </emphasis>ET 0.0.0.0 = 0.0.0.0), les paquets
|
|
|
|
|
qui ne correspondent <20> aucune des autres entr<74>es de la table de routage
|
|
|
|
|
sont envoy<6F>s <20> la passerelle par d<>faut qui est g<>n<EFBFBD>ralement un routeur
|
|
|
|
|
de votre <acronym>FAI</acronym>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Prenons un exemple. Supposons que vous souhaitiez router un paquet
|
|
|
|
|
<20> 192.168.1.5. Cette adresse ne correspond <20> aucune route d'h<>te dans la
|
|
|
|
|
table mais lorsque nous faisons le ET logique de cette adresse avec
|
|
|
|
|
255.255.255.0, le r<>sultat est 192.168.1.0 qui correspond <20> cette entr<74>e
|
|
|
|
|
de la table:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting>192.168.1.0 0.0.0.0 255.255.255.0 U 40 0 0 eth2</programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Donc, pour router ce paquet <20> 192.168.1.5, il faudra le
|
|
|
|
|
transmettre directement <20> l'interface eth2.</para>
|
|
|
|
|
|
|
|
|
|
<para>Un point important doit <20>tre soulign<67> -- tous les paquets sont
|
|
|
|
|
envoy<6F>s en utilisant la table de routage et les paquets en r<>ponse ne
|
|
|
|
|
sont pas un cas particulier. Il semble exister une id<69>e fausse comme
|
|
|
|
|
quoi les paquets r<>ponses seraient comme les saumons et contiendraient
|
|
|
|
|
une sorte de code g<>n<EFBFBD>tique qui leur permettrait suivre la m<>me route
|
|
|
|
|
emprunt<6E>e par les paquets de requ<71>te (request) <20> l'aller. Ce n'est pas
|
|
|
|
|
le cas. Les r<>ponses peuvent prendre un chemin totalement diff<66>rent de
|
|
|
|
|
celui pris par les paquets de la requ<71>te client <20> l'aller -- Ces routes
|
|
|
|
|
sont totalement ind<6E>pendantes.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title id="ARP">Protocole de R<>solution d'Adresse (ARP)</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Quant on envoie des paquets sur <20>thernet, les adresses IP ne sont
|
|
|
|
|
pas utilis<69>es. L'adressage <20>thernet est bas<61> sur les adresses
|
|
|
|
|
<acronym>MAC</acronym> (<emphasis>Media Access Control)</emphasis>.
|
|
|
|
|
Chaque carte <20>thernet <20> sa propre adresse <acronym>MAC</acronym> unique
|
|
|
|
|
qui est grav<61>e dans une <acronym>PROM</acronym> lors de sa fabrication.
|
|
|
|
|
Vous pouvez obtenir l'adresse <acronym>MAC</acronym> d'une carte
|
|
|
|
|
<20>thernet gr<67>ce <20> l'utilitaire
|
|
|
|
|
<quote><command>ip</command></quote>:</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>[root@gateway root]# <command>ip addr show eth0</command>
|
|
|
|
|
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc htb qlen 100
|
|
|
|
|
link/ether 02:00:08:e3:fa:55 brd ff:ff:ff:ff:ff:ff
|
|
|
|
|
inet 206.124.146.176/24 brd 206.124.146.255 scope global eth0
|
|
|
|
|
inet 206.124.146.178/24 brd 206.124.146.255 scope global secondary eth0
|
|
|
|
|
inet 206.124.146.179/24 brd 206.124.146.255 scope global secondary eth0
|
|
|
|
|
[root@gateway root]#
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Comme vous pouvez le constater, l'adresse <acronym>MAC</acronym>
|
|
|
|
|
est cod<6F>e sur 6 octets (48 bits). L'adresse <acronym>MAC</acronym> est
|
|
|
|
|
g<>n<EFBFBD>ralement imprim<69>e sur la carte elle-m<>me.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Comme IP utilise les adresses IP et <20>thernet les adresses MAC, il
|
|
|
|
|
faut un m<>canisme pour transcrire une adresse IP en adresse MAC. C'est
|
|
|
|
|
ce dont est charg<72> le protocole de r<>solution d'adresse
|
|
|
|
|
(<emphasis>Address Resolution Protocol
|
|
|
|
|
</emphasis><acronym>ARP</acronym>). Voici <acronym>ARP</acronym> en
|
2004-05-09 00:31:54 +02:00
|
|
|
|
action:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>[root@gateway root]# <command>tcpdump -nei eth2 arp</command>
|
|
|
|
|
tcpdump: listening on eth2
|
|
|
|
|
09:56:49.766757 2:0:8:e3:4c:48 0:6:25:aa:8a:f0 arp 42:
|
|
|
|
|
arp who-has 192.168.1.19 tell 192.168.1.254
|
|
|
|
|
09:56:49.769372 0:6:25:aa:8a:f0 2:0:8:e3:4c:48 arp 60:
|
|
|
|
|
arp reply 192.168.1.19 is-at 0:6:25:aa:8a:f0
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
2 packets received by filter
|
|
|
|
|
0 packets dropped by kernel
|
|
|
|
|
[root@gateway root]#</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Dans cet <20>change , 192.168.1.254 (MAC 2:0:8:e3:4c:48) veut
|
|
|
|
|
conna<6E>tre l'adresse MAC du p<>riph<70>rique qui a l'adresse IP 192.168.1.19.
|
|
|
|
|
Le syst<73>me ayant cette adresse IP r<>pond que l'adresse MAC du
|
|
|
|
|
p<>riph<70>rique avec l'adresse IP 192.168.1.19 est 0:6:25:aa:8a:f0.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Afin de ne pas avoir <20> <20>changer des information
|
|
|
|
|
<acronym>ARP</acronym> chaque fois qu'un paquet doit <20>tre envoy<6F>, le
|
|
|
|
|
syst<73>me maintient un cache des correspondances IP<-> MAC. Vous
|
|
|
|
|
pouvez voir le contenu du cache <acronym>ARP</acronym> sur votre syst<73>me
|
|
|
|
|
(y compris sur les syst<73>mes <trademark>Windows</trademark>) en utilisant
|
|
|
|
|
la commande <command>arp</command></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>[root@gateway root]# <command>arp -na</command>
|
|
|
|
|
? (206.124.146.177) at 00:A0:C9:15:39:78 [ether] on eth1
|
|
|
|
|
? (192.168.1.3) at 00:A0:CC:63:66:89 [ether] on eth2
|
|
|
|
|
? (192.168.1.5) at 00:A0:CC:DB:31:C4 [ether] on eth2
|
|
|
|
|
? (206.124.146.254) at 00:03:6C:8A:18:38 [ether] on eth0
|
2005-12-19 19:39:39 +01:00
|
|
|
|
? (192.168.1.19) at 00:06:25:AA:8A:F0 [ether] on eth2</programlisting>
|
|
|
|
|
|
|
|
|
|
<para>Les points d'interrogation au d<>but des lignes sont le r<>sultat de
|
|
|
|
|
l'utilisation de l'option <quote>n</quote> qui emp<6D>che le programme
|
|
|
|
|
<command>arp</command> de r<>soudre le noms <acronym>DNS</acronym> pour
|
|
|
|
|
les adresses IP (la commande <command>arp</command> <trademark>de
|
|
|
|
|
Windows</trademark> n'accepte pas cette option) . Si je n'avais pas
|
|
|
|
|
utilis<69> pas cette option, les points d'interrogation seraient remplac<61>s
|
|
|
|
|
par les noms pleinement qualifi<66>s (FQDN) correspondant <20> chaque adresse
|
|
|
|
|
IP. Remarquez que la derni<6E>re information dans le cache correspond <20>
|
|
|
|
|
celle que nous avons vue en utilisant <command>tcpdump</command> <20>
|
|
|
|
|
l'instant.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="RFC1918">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>RFC 1918</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les adresses IP sont allou<6F>es par l'<acronym>IANA</acronym>
|
|
|
|
|
(<ulink url="http://www.iana.org/">Internet Assigned Number
|
|
|
|
|
Authority</ulink>) qui d<>l<EFBFBD>gue les allocations sur une base g<>ographique
|
|
|
|
|
aux Registres Internet R<>gionaux (<acronym>RIR</acronym>). Par exemple,
|
|
|
|
|
les allocations pour les Etats-Unis et l'Afrique sub-Saharienne sont
|
|
|
|
|
d<>l<EFBFBD>gu<67>es <20> l'<acronym>ARIN</acronym> (<ulink
|
|
|
|
|
url="http://www.arin.net/">American Registry for Internet
|
|
|
|
|
Numbers</ulink>). Ces RIRs peuvent <20> leur tour d<>l<EFBFBD>guer <20> des bureaux
|
|
|
|
|
nationaux. La plupart d'entre nous ne traite pas avec ces autorit<69>s mais
|
|
|
|
|
obtient plut<75>t ses adresse IP de son <acronym>FAI</acronym>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Dans la r<>alit<69>, on ne peut en g<>n<EFBFBD>ral pas se permettre d'avoir
|
|
|
|
|
autant d'adresses IP publiques que l'on a de p<>riph<70>riques en
|
|
|
|
|
n<>cessitant une. C'est cette raison qui nous am<61>ne <20> utiliser des
|
|
|
|
|
adresses IP priv<69>es. La RFC 1918 r<>serve plusieurs plages d'adresses <20>
|
|
|
|
|
cette fin :</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<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>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Les adresses r<>serv<72>es par la RFC 1918 sont parfois appel<65>es
|
|
|
|
|
non-routables car les routeurs d'infrastructure internet ne feront pas
|
|
|
|
|
suivre (forward) les paquets qui ont une adresse de destination de la
|
|
|
|
|
RFC 1918. Cela est compr<70>hensible puisque chacun peut choisir n'importe
|
|
|
|
|
laquelle ces adresses pour son usage priv<69>. Mais le terme de
|
|
|
|
|
non-routable est quelque peu malencontreux car il peut amener <20> conclure
|
|
|
|
|
de mani<6E>re erron<6F>e que le trafic destin<69> <20> une de ces adresses ne peut
|
|
|
|
|
<20>tre envoy<6F> <20> travers un routeur. Ceci est faux et les routeurs priv<69>s,
|
|
|
|
|
dont votre firewall Shorewall, peuvent parfaitement faire suivre du
|
|
|
|
|
trafic avec des adresses conformes <20> la RFC 1918.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Quant on choisit des adresses dans ces plages, il faut bien avoir
|
|
|
|
|
<20> l'esprit les choses suivantes:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Comme l'espace des adresses IPv4 s'<27>puise, de plus en plus
|
|
|
|
|
d'organisation (y compris les FAI) commencent <20> utiliser les
|
|
|
|
|
adresses RFC 1918 dans leurs infrastructures.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous ne devez pas utiliser d'adresse IP qui soit utilis<69>e par
|
|
|
|
|
votre <acronym>FAI</acronym> ou une autre organisation avec laquelle
|
|
|
|
|
vous souhaitez <20>tablir une liaison <acronym>VPN</acronym></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>C'est pourquoi c'est une bonne id<69>e de v<>rifier apr<70>s de votre FAI
|
|
|
|
|
s'il n'utilise pas (ou ne pr<70>voie pas d'utiliser) des adresses priv<69>es
|
|
|
|
|
avant de d<>cider quelles adresses que vous allez utiliser.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<note>
|
|
|
|
|
<para><emphasis role="bold">Dans ce document, les adresses IP externes
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<quote>r<EFBFBD>elles</quote> sont dans la plage 192.0.2.x. Les adresses du
|
|
|
|
|
r<>seau 192.0.2.0/24 sont r<>serv<72>es par RFC 3330 pour l'utilisation
|
|
|
|
|
d'adresses IP publiques dans les exemples imprim<69>s ainsi que dans les
|
|
|
|
|
r<>seaux de test. Ces adresses ne doivent pas <20>tre confondues avec les
|
|
|
|
|
adresses 192.168.0.0/16, qui comme d<>crit ci-dessus, sont r<>serv<72>es
|
|
|
|
|
par la RFC 1918 pour une utilisation priv<69>e.</emphasis></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</note>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Options">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Configurer votre R<>seau</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Le choix d'une configuration pour votre r<>seau d<>pend d'abord du
|
|
|
|
|
nombre d'adresses IP publiques dont vous disposez et du nombre d'adresses
|
|
|
|
|
IP dont vous avez besoin. Quel que soit le nombre d'adresses dont vous
|
|
|
|
|
disposez, votre <acronym>FAI</acronym> peut vous servir ce jeu d'adresses
|
|
|
|
|
de deux mani<6E>res:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Rout<EFBFBD>es</emphasis> - Le trafic vers
|
|
|
|
|
chacune de vos adresses publiques sera rout<75> <20> travers une seule
|
|
|
|
|
adresse de passerelle. Cela sera g<>n<EFBFBD>ralement fait si votre FAI vous
|
|
|
|
|
attribue un sous-r<>seau complet (/29 ou plus). Dans ce cas, vous
|
|
|
|
|
affecterez l'adresse de cette passerelle comme <20>tant l'adresse de
|
|
|
|
|
l'interface externe de votre firewall/routeur.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Non rout<75>es</emphasis> - Votre FAI enverra
|
|
|
|
|
le trafic <20> chacune de vos adresses directement.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Dans les paragraphes qui suivent, nous <20>tudierons chacun de ces cas
|
|
|
|
|
s<>par<61>ment.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Avant de commencer, il y a une chose que vous devez v<>rifier:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si vous utilisez un paquetage Debian, v<>rifiez votre fichier
|
|
|
|
|
<filename>shorewall.conf</filename> afin de vous assurer que les
|
|
|
|
|
param<61>tres suivants sont convenablement fix<69>s. Si ce n'est pas le cas,
|
|
|
|
|
appliquez les changements n<>cessaires:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>IP_FORWARDING=On</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Routed">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Rout<EFBFBD></title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Supposons que votre fournisseur d'acc<63>s vous ait assign<67> le
|
|
|
|
|
sous-r<>seau 192.0.2.64/28 rout<75> par 192.0.2.65. Vous avez les adresses
|
|
|
|
|
IP 192.0.2.64 - 192.0.2.79 et l'adresse externe de votre firewall est
|
|
|
|
|
192.0.2.65. Votre FAI vous a aussi dit que vous devez utiliser le masque
|
|
|
|
|
de sous-r<>seau 255.255.255.0 (ainsi, votre /28 est un sous-ensemble du
|
|
|
|
|
/24, plus grand). Avec autant d'adresses IP, vous pouvez scinder votre
|
|
|
|
|
r<>seau /28 en deux sous-r<>seaux /29 et configurer votre r<>seau comme
|
|
|
|
|
l'indique le diagramme suivant.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<graphic align="center" fileref="images/dmz4.png" />
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Dans l'exemple, la zone d<>militaris<69> <acronym>DMZ</acronym> est
|
|
|
|
|
dans le sous-r<>seau 192.0.2.64/29 et le r<>seau local est dans
|
|
|
|
|
192.0.2.72/29. La passerelle par d<>faut pour les h<>tes dans la
|
|
|
|
|
<acronym>DMZ</acronym> doit <20>tre configur<75>e <20> 192.0.2.66 et la
|
|
|
|
|
passerelle par d<>faut pour ceux du r<>seau local doit <20>tre configur<75>e <20>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
192.0.2.73.</para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Notez que cette solution est plut<75>t gourmande en adresses
|
|
|
|
|
publiques puisqu'elle utilise 192.0.2.64 et 192.0.2.72 pour les adresses
|
|
|
|
|
de sous-r<>seau, 192.0.2.71 et 192.0.2.79 pour les adresses de diffusion
|
|
|
|
|
(broadcast) du r<>seau, et 192.0.2.66 et 168.0.2.73 pour les adresses
|
|
|
|
|
internes sur le firewall/routeur. Elle montre n<>ammoins comment la
|
|
|
|
|
gestion en sous-r<>seaux peut fonctionner. Et si nous avions un r<>seau
|
|
|
|
|
/24 plut<75>t qu'un /28, l'utilisation de 6 adresses IP parmi les 256
|
|
|
|
|
disponibles serait largement justifi<66>e par la simplicit<69> du
|
|
|
|
|
param<61>trage.</para>
|
|
|
|
|
|
|
|
|
|
<para>Le lecteur attentif aura peut-<2D>tre remarqu<71> que l'interface
|
|
|
|
|
externe du firewall/Routeur est en fait incluse dans le sous-r<>seau
|
|
|
|
|
<acronym>DMZ</acronym> (192.0.2.64/29). On peut se demander ce qui se
|
|
|
|
|
passe quand l'h<>te DMZ 1 (192.0.2.67) essaye de communiquer avec
|
|
|
|
|
192.0.2.65. La table de routage sur l'h<>te DMZ 1 doit ressembler <20>
|
|
|
|
|
cela:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting format="linespecific">Kernel IP routing table
|
|
|
|
|
Destination Gateway Genmask Flags MSS Window irtt Iface
|
|
|
|
|
192.0.2.64 0.0.0.0 255.255.255.248 U 40 0 0 eth0
|
|
|
|
|
0.0.0.0 192.0.2.66 0.0.0.0 UG 40 0 0 eth0</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Donc, lorsque l'h<>te DMZ 1 voudra communiquer avec 192.0.2.65, il
|
|
|
|
|
enverra une requ<71>te <acronym>ARP</acronym> "qui-a 192.0.2.65" alors
|
|
|
|
|
qu'aucune interface sur le segment <20>thernet DMZ n'a cette adresse IP.
|
|
|
|
|
Assez bizarrement, le firewall r<>pondra <20> la requ<71>te avec
|
|
|
|
|
<emphasis><emphasis role="underlined"><emphasis
|
|
|
|
|
role="underline">l'adresse MAC de sa propre interface
|
|
|
|
|
DMZ</emphasis></emphasis> </emphasis>! DMZ 1 peut alors envoyer des
|
|
|
|
|
trames <20>thernet adress<73>es <20> cette adresse <acronym>MAC</acronym> et les
|
|
|
|
|
trames seront re<72>ues correctement par le firewall/routeur.</para>
|
|
|
|
|
|
|
|
|
|
<para>L'avertissement fait plus haut qui d<>conseille tr<74>s fortement la
|
|
|
|
|
connexion de plusieurs interfaces du firewall/routeur <20> un m<>me hub ou
|
|
|
|
|
switch est une cons<6E>quence directe de ce comportement plut<75>t inattendu
|
|
|
|
|
d'<acronym>ARP</acronym> de la part du noyau Linux. Quant une requ<71>te
|
|
|
|
|
ARP destin<69>e <20> une des adresses du firewall/routeur est envoy<6F>e par un
|
|
|
|
|
autre syst<73>me connect<63> au m<>me hub ou switch, toutes les interfaces du
|
|
|
|
|
firewall qui y sont connect<63>es peuvent r<>pondre ! C'est alors la course
|
|
|
|
|
<20> savoir quelle r<>ponse <quote>c'est-ici</quote> atteindra la premi<6D>re
|
|
|
|
|
l'<27>metteur de la requ<71>te.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="NonRouted">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Non rout<75></title>
|
|
|
|
|
|
|
|
|
|
<para>Si vous <20>tes dans la situation pr<70>c<EFBFBD>dente mais que votre trafic
|
|
|
|
|
n'est pas rout<75> par votre <acronym>FAI</acronym>, vous pouvez configurer
|
|
|
|
|
votre r<>seau exactement comme d<>crit plus haut, au prix d'une l<>g<EFBFBD>re
|
|
|
|
|
contorsion suppl<70>mentaire: sp<73>cifiez simplement l'option
|
|
|
|
|
<quote><command>proxyarp</command></quote> sur les trois interfaces du
|
|
|
|
|
firewall dans le fichier
|
|
|
|
|
<filename>/etc/shorewall/interfaces</filename>.</para>
|
|
|
|
|
|
|
|
|
|
<para>La plupart d'entre nous n'ont pas le luxe d'avoir suffisamment
|
|
|
|
|
d'adresses publiques IP pour configurer leur r<>seau comme indiqu<71> dans
|
|
|
|
|
l'exemple pr<70>c<EFBFBD>dent (m<>me si la configuration est rout<75>e).</para>
|
|
|
|
|
|
|
|
|
|
<para><emphasis role="bold">Dans le reste de cette section, supposons
|
|
|
|
|
que notre FAI nous ait assign<67> la plage d'adresses IP 192.0.2.176-180,
|
|
|
|
|
qu'il nous ait dit d'utiliser le masque de sous-r<>seau 255.255.255.0 et
|
|
|
|
|
que la passerelle par d<>faut soit 192.0.2.254.</emphasis></para>
|
|
|
|
|
|
|
|
|
|
<para>De toute <20>vidence, ce jeu d'adresses ne comprend pas de
|
|
|
|
|
sous-r<>seau et n'a pas suffisamment d'adresses pour toutes les
|
|
|
|
|
interfaces de notre r<>seau. Nous pouvons utiliser quatre techniques
|
|
|
|
|
diff<66>rentes pour contourner ce probl<62>me.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La traduction d'adresses source (<emphasis>Source Network
|
|
|
|
|
Address Translation</emphasis> <emphasis
|
|
|
|
|
role="bold">SNAT</emphasis>).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La traduction d'adresses destination <emphasis>(Destination
|
|
|
|
|
Network Address Translation</emphasis> <emphasis
|
|
|
|
|
role="bold">DNAT</emphasis>) nomm<6D>e aussi transfert ou suivi de port
|
|
|
|
|
<emphasis>(Port Forwarding</emphasis>).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold"><emphasis>Le </emphasis>Proxy
|
|
|
|
|
ARP</emphasis>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La traduction d'adresses r<>seau <emphasis>(Network Address
|
|
|
|
|
Translation</emphasis> <acronym>NAT</acronym>) <20> laquelle on fait
|
|
|
|
|
aussi r<>f<EFBFBD>rence sous l'appellation de un-<2D>-un NAT (one-to-one
|
|
|
|
|
NAT).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Souvent, une combinaison de ces techniques est utilis<69>e. Chacune
|
|
|
|
|
d'entre elles sera d<>taill<6C>e dans la section suivante.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="SNAT">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>SNAT</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Avec la <acronym>SNAT</acronym>, un segment interne du r<>seau
|
|
|
|
|
local est configur<75> en utilisant des adresses de la RFC 1918. Quant un
|
|
|
|
|
h<>te <emphasis role="bold">A</emphasis> sur ce segment interne initie
|
|
|
|
|
une connexion vers un h<>te <emphasis role="bold">B</emphasis> sur
|
|
|
|
|
internet, le firewall/routeur r<><72>crit les ent<6E>tes IP de la requ<71>te
|
|
|
|
|
pour utiliser une de vos adresses publiques IP en tant qu'adresse
|
|
|
|
|
source. Quant <emphasis role="bold">B</emphasis> r<>pond et que la
|
|
|
|
|
r<>ponse est re<72>ue par le firewall, le firewall change l'adresse
|
|
|
|
|
destination par celle de la RFC 1918 de <emphasis
|
|
|
|
|
role="bold">A</emphasis> et transf<73>re la r<>ponse <20> <emphasis
|
2004-05-09 00:31:54 +02:00
|
|
|
|
role="bold">A.</emphasis></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Supposons que vous d<>cidiez d'utiliser la SNAT sur votre zone
|
|
|
|
|
locale. Supposons <20>galement que vous utilisiez l'adresse publique
|
|
|
|
|
192.0.2.176 <20> la fois comme adresse externe du firewall et comme
|
|
|
|
|
adresse source des requ<71>tes internet envoy<6F>es depuis cette
|
|
|
|
|
zone.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<graphic align="center" fileref="images/dmz5.png" />
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>On a assign<67> <20> la zone locale le sous-r<>seau 192.168.201.0/29
|
|
|
|
|
(masque de sous-r<>seau 255.255.255.248).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<simplelist>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<member><inlinegraphic fileref="images/BD21298_.gif" /></member>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<member>Dans ce cas, les syst<73>mes de la zone locale seraient
|
|
|
|
|
configur<75>s avec 192.168.201.1 comme passerelle par d<>faut (adresse
|
|
|
|
|
IP de l'interface local du firewall).</member>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<member><inlinegraphic fileref="images/BD21298_.gif" /></member>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<member>La SNAT est configur<75>e dans Shorewall avec le fichier
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<filename><ulink
|
|
|
|
|
url="Documentation.htm#Masq">/etc/shorewall/masq</ulink></filename>.</member>
|
|
|
|
|
</simplelist>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#INTERFACE SUBNET ADDRESS
|
|
|
|
|
eth0 192.168.201.0/29 192.0.2.176</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Cet exemple utilise la technique normale qui assigne la m<>me
|
|
|
|
|
adresse publique IP pour l'interface externe du firewall et pour la
|
|
|
|
|
SNAT. Si vous souhaitez utiliser une adresse IP diff<66>rente, vous
|
|
|
|
|
pouvez soit utiliser les outils de configuration r<>seau de votre
|
|
|
|
|
distribution Linux pour ajouter cette adresse IP, soit mettre la
|
|
|
|
|
variable ADD_SNAT_ALIASES=Yes dans
|
|
|
|
|
<filename>/etc/shorewall/shorewall.conf</filename> et Shorewall
|
|
|
|
|
ajoutera l'adresse pour vous.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="dnat">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>DNAT</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Quand la SNAT est utilis<69>e, il est impossible pour les h<>tes sur
|
|
|
|
|
internet d'initialiser une connexion avec un des syst<73>mes internes
|
|
|
|
|
puisque ces syst<73>mes n'ont pas d'adresses publiques IP. La DNAT
|
|
|
|
|
fournit une m<>thode pour autoriser des connexions s<>lectionn<6E>es depuis
|
|
|
|
|
internet.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Supposons que votre fille souhaite h<>berger un serveur Web sur
|
|
|
|
|
son syst<73>me "Local 3". Vous pourriez autoriser les connexions
|
|
|
|
|
d'internet <20> son serveur en ajoutant l'entr<74>e suivante dans le fichier
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<filename><ulink
|
|
|
|
|
url="Documentation.htm#Rules">/etc/shorewall/rules</ulink></filename>:</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL
|
|
|
|
|
# PORT(S) PORT(S) DEST
|
|
|
|
|
DNAT net loc:192.168.201.4 tcp www</programlisting>
|
|
|
|
|
|
|
|
|
|
<para>Si une des amies de votre fille avec une adresse <emphasis
|
2005-12-19 19:39:39 +01:00
|
|
|
|
role="bold">A</emphasis> veut acc<63>der au serveur de votre fille, elle
|
|
|
|
|
peut se connecter <20> http://192.0.2.176 (l'adresse IP externe de votre
|
|
|
|
|
firewall). Le firewall r<><72>crira l'adresse IP de destination <20>
|
|
|
|
|
192.168.201.4 (le syst<73>me de votre fille) et lui fera suivre la
|
|
|
|
|
requ<71>te. Quand le serveur de votre fille r<>pondra, le firewall
|
|
|
|
|
remettra l'adresse source <20> 192.0.2.176 et retournera la r<>ponse <20>
|
|
|
|
|
<emphasis role="bold">A</emphasis>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Cet exemple utilise l'adresse externe IP du firewall pour la
|
|
|
|
|
<acronym>DNAT</acronym>. Vous pouvez utiliser une autre de vos
|
|
|
|
|
adresses IP publiques. Pour cela, mettez-la dans la colonne ORIGINAL
|
|
|
|
|
DEST de la r<>gle ci-dessus. Par contre, Shorewall n'ajoutera pas <20>
|
|
|
|
|
votre place cette adresse <20> l'interface externe du firewall.</para>
|
|
|
|
|
|
|
|
|
|
<important>
|
|
|
|
|
<para>Quand vous testez des r<>gles <acronym>DNAT</acronym> comme
|
|
|
|
|
celles pr<70>sent<6E>e plus haut, vous devez le faire depuis un client A
|
|
|
|
|
L'EXT<58>RIEUR DE VOTRE FIREWALL (depuis la zone <quote>net</quote>).
|
|
|
|
|
Vous ne pouvez pas tester ces r<>gles de l'int<6E>rieur !</para>
|
|
|
|
|
|
|
|
|
|
<para>Pour quelques astuces sur la r<>solution de probl<62>mes avec la
|
|
|
|
|
DNAT, <ulink url="FAQ.htm#faq1a">voyez les FAQ 1a et
|
|
|
|
|
1b</ulink>.</para>
|
|
|
|
|
</important>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="ProxyARP">
|
2004-02-14 19:06:39 +01:00
|
|
|
|
<title>Proxy ARP</title>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Le principe du proxy <acronym>ARP</acronym> est:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>On attribue <20> un h<>te <emphasis role="bold">H</emphasis>
|
|
|
|
|
derri<72>re notre firewall une de nos adresses publiques <emphasis
|
|
|
|
|
role="bold">A</emphasis> et on lui donne le m<>me masque de
|
|
|
|
|
sous-r<>seau <emphasis role="bold">M</emphasis> que celui de
|
|
|
|
|
l'interface externe du firewall.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Le firewall r<>pond aux requ<71>tes ARP
|
|
|
|
|
<quote>qui-a-l'adresse</quote> <emphasis
|
|
|
|
|
role="bold">A</emphasis><emphasis> </emphasis><EFBFBD>mises par les h<>tes
|
|
|
|
|
<20> l'ext<78>rieur du firewall.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Lorsque c'est l'h<>te <emphasis role="bold">H</emphasis> qui
|
|
|
|
|
<20>met une requ<71>te <quote>qui-a-l'adresse</quote><emphasis>
|
|
|
|
|
</emphasis><emphasis><emphasis>pour un h<>te
|
|
|
|
|
</emphasis></emphasis>situ<EFBFBD> <20> l'ext<78>rieur du firewall et
|
|
|
|
|
appartenant au sous-r<>seau d<>fini par <emphasis
|
|
|
|
|
role="bold">A</emphasis> et <emphasis role="bold">M</emphasis>,
|
|
|
|
|
c'est le firewall qui r<>pondra <20> <emphasis
|
|
|
|
|
role="bold">H</emphasis> avec l'adresse MAC de l'interface du
|
|
|
|
|
firewall <20> laquelle est raccord<72> <emphasis
|
|
|
|
|
role="bold">H</emphasis>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Pour une description plus compl<70>te du fonctionnement du Proxy
|
|
|
|
|
ARP, vous pouvez vous r<>f<EFBFBD>rer <20> la <ulink
|
|
|
|
|
url="ProxyARP.htm">Documentation du Proxy Shorewall</ulink>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Supposons que nous d<>cidions d'utiliser le Proxy ARP sur la DMZ
|
|
|
|
|
de notre exemple de r<>seau.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<graphic align="center" fileref="images/dmz6.png" />
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Ici, nous avons assign<67> les adresses IP 192.0.2.177 au syst<73>me
|
|
|
|
|
DMZ 1 et 192.0.2.178 au syst<73>me DMZ 2. Remarquez que nous avons
|
|
|
|
|
assign<67> une adresse RFC 1918 et un masque de sous-r<>seau arbitraires <20>
|
|
|
|
|
l'interface DMZ de notre firewall. Cette adresse et ce masque ne sont
|
|
|
|
|
pas pertinents - v<>rifiez juste que celle-ci n'est en conflit avec
|
|
|
|
|
aucun autre sous-r<>seau d<>j<EFBFBD> d<>fini.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La configuration du Proxy ARP est faite dans le fichier <ulink
|
2004-05-09 00:31:54 +02:00
|
|
|
|
url="ProxyARP.htm"><filename>/etc/shorewall/proxyarp</filename></ulink>.</para>
|
|
|
|
|
|
2005-01-24 20:05:01 +01:00
|
|
|
|
<programlisting>#ADDRESS INTERFACE EXTERNAL HAVE ROUTE PERSISTANT
|
2004-05-09 00:31:54 +02:00
|
|
|
|
192.0.2.177 eth2 eth0 No
|
|
|
|
|
192.0.2.178 eth2 eth0 No</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La variable HAVE ROUTE <20>tant <20> No, Shorewall ajoutera les routes
|
|
|
|
|
d'h<>te pour 192.0.2.177 et 192.0.2.178 par <filename
|
|
|
|
|
class="devicefile">eth2</filename>. Les interfaces <20>thernet des
|
|
|
|
|
machines DMZ 1 et DMZ 2 devront <20>tre configur<75>es avec les adresses IP
|
|
|
|
|
donn<6E>es plus haut, mais elles devront avoir la m<>me passerelle par
|
|
|
|
|
d<>faut que le firewall lui-m<>me (192.0.2.254 dans notre exemple).
|
|
|
|
|
Autrement dit, elles doivent <20>tre configur<75>es exactement comme si
|
|
|
|
|
elles <20>taient parall<6C>les au firewall plut<75>t que derri<72>re lui.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<caution>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Ne pas ajouter le(s) adresse(s) trait<69>es
|
|
|
|
|
par le proxy ARP (192.0.2.177 et 192.0.2.178 dans l'exemple
|
|
|
|
|
ci-dessus) <20> l'interface externe du firewall (eth0 dans cet
|
|
|
|
|
exemple).</emphasis></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</caution>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Un mot de mise en garde. En g<>n<EFBFBD>ral, les <acronym>FAI</acronym>
|
|
|
|
|
configurent leurs routeurs avec un timeout de cache
|
|
|
|
|
<acronym>ARP</acronym> assez <20>lev<65>. Si vous d<>placez un syst<73>me
|
|
|
|
|
parall<6C>le <20> votre firewall derri<72>re le Proxy ARP du firewall, cela
|
|
|
|
|
peut mettre des HEURES avant que ce syst<73>me ne puisse communiquer avec
|
|
|
|
|
internet. Il y a deux choses que vous pouvez essayer de faire:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>(Salutations <20> Bradey Honsinger) Une lecture de
|
|
|
|
|
<quote>TCP/IP Illustrated, Vol 1</quote> de Richard Stevens r<>v<EFBFBD>le
|
|
|
|
|
qu'un paquet ARP <quote>gratuit</quote> (gratuitous) peut amener
|
|
|
|
|
le routeur de votre FAI <20> rafra<72>chir son cache (section 4.7). Un
|
|
|
|
|
paquet ARP <quote>gratuit</quote> est simplement une requ<71>te d'un
|
|
|
|
|
h<>te demandant l'adresse MAC associ<63>e <20> sa propre adresse
|
|
|
|
|
IP.</para>
|
|
|
|
|
|
|
|
|
|
<para>En plus de garantir que cette adresse IP n'est pas
|
|
|
|
|
dupliqu<71>e, <quote>si l'h<>te qui envoie la commande ARP
|
|
|
|
|
<quote>gratuit</quote> vient juste de changer son adresse
|
|
|
|
|
mat<61>rielle ..., ce paquet force tous les autres h<>tes...qui ont
|
|
|
|
|
une entr<74>e dans leur cache ARP pour l'ancienne adresse mat<61>rielle
|
|
|
|
|
<20> mettre leurs caches <20> jour</quote></para>
|
|
|
|
|
|
|
|
|
|
<para>Ce qui est exactement, bien s<>r, ce que vous souhaitez faire
|
|
|
|
|
lorsque vous basculez un h<>te qui <20>tait directement expos<6F> sur
|
|
|
|
|
internet vers l'arri<72>re de votre firewall Shorewall en utilisant
|
|
|
|
|
le proxy ARP (ou en faisant du NAT un-<2D>-un pour la m<>me raison).
|
|
|
|
|
Heureusement, les versions r<>centes du paquetage
|
|
|
|
|
<command>iputils</command> de <trademark>Redhat</trademark>
|
|
|
|
|
comprennent <command>arping</command>, dont l'option "-U" fait
|
|
|
|
|
cela:</para>
|
|
|
|
|
|
|
|
|
|
<para><programlisting><command>arping -U -I <net if> <newly proxied IP></command><command>
|
|
|
|
|
|
|
|
|
|
arping -U -I eth0 66.58.99.83</command> # for example</programlisting>Stevens
|
|
|
|
|
continue en mentionnant que certains syst<73>mes ne r<>pondent pas
|
|
|
|
|
correctement <20> la commande ARP <quote>gratuit</quote>, mais une
|
|
|
|
|
recherche sur google pour <quote>arping -U</quote> semble
|
|
|
|
|
d<>montrer que cela fonctionne dans la plupart des cas.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous pouvez appeler votre <acronym>FAI</acronym> et lui
|
|
|
|
|
demander de purger l'entr<74>e obsol<6F>te de son cache
|
|
|
|
|
<acronym>ARP</acronym>, mais la plupart ne voudront ou ne pourront
|
|
|
|
|
le faire.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous pouvez v<>rifier si le cache ARP de votre FAI est obsol<6F>te
|
|
|
|
|
en utilisant <command>ping</command> et <command>tcpdump</command>.
|
|
|
|
|
Supposez que vous pensez que la passerelle routeur a une entr<74>e ARP
|
|
|
|
|
obsol<6F>te pour 192.0.2.177. Sur le firewall, lancez
|
|
|
|
|
<command>tcpdump</command> de cette fa<66>on:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting><command>tcpdump -nei eth0 icmp</command></programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Maintenant depuis 192.0.2.177, <command>ping</command>ez la
|
|
|
|
|
passerelle de votre FAI (que nous supposons <20>tre 192.0.2.254):</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting><command>ping 192.0.2.254</command></programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Nous pouvons maintenant observer le r<>sultat de
|
|
|
|
|
<command>tcpdump</command>:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting>13:35:12.159321 <emphasis role="bold">0:4:e2:20:20:33</emphasis> 0:0:77:95:dd:19 ip 98:
|
|
|
|
|
192.0.2.177 > 192.0.2.254: icmp: echo request (DF)
|
|
|
|
|
13:35:12.207615 0:0:77:95:dd:19 <emphasis role="bold">0:c0:a8:50:b2:57</emphasis> ip 98:
|
2005-12-19 19:39:39 +01:00
|
|
|
|
192.0.2.254 > 192.0.2.177 : icmp: echo reply</programlisting>Remarquez
|
|
|
|
|
que l'adresse source <acronym>MAC</acronym> dans la requ<71>te echo est
|
|
|
|
|
diff<66>rente de l'adresse <acronym>MAC</acronym> de destination dans la
|
|
|
|
|
r<>ponse echo ! Dans ce cas, 0:4:e2:20:20:33 <20>tait l'adresse
|
|
|
|
|
<acronym>MAC</acronym> de l'interface r<>seau <filename
|
|
|
|
|
class="devicefile">eth0</filename> du firewall tandis que
|
|
|
|
|
0:c0:a8:50:b2:57 <20>tait l'adresse <acronym>MAC</acronym> de la carte
|
|
|
|
|
r<>seau de DMZ 1. En d'autre termes, le cache <acronym>ARP</acronym> de
|
|
|
|
|
la passerelle associe encore 192.0.2.177 avec la carte r<>seau de DMZ 1
|
|
|
|
|
plut<75>t qu'avec l'interface <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth0</filename></filename> du firewall.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title id="NAT">NAT un-<2D>-un</title>
|
|
|
|
|
|
|
|
|
|
<para>Avec le NAT un-<2D>-un (one-to-one NAT), vous attribuez des
|
|
|
|
|
adresses RFC 1918 <20> vos syst<73>mes puis vous <20>tablissez une
|
|
|
|
|
correspondance un pour un de ces adresses avec les adresses IP
|
|
|
|
|
publiques. Pour les occurrences des connexions sortantes, la
|
|
|
|
|
traduction d'adresses sources (<acronym>SNAT</acronym>) sera alors
|
|
|
|
|
effectu<74>e. Pour les occurrences des connexions entrantes, c'est la
|
|
|
|
|
traduction d'adresses destination (<acronym>DNAT</acronym>) qui sera
|
|
|
|
|
r<>alis<69>e.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Voyons avec l'exemple pr<70>c<EFBFBD>dent du serveur web de votre fille
|
|
|
|
|
tournant sur le syst<73>me Local 3.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<graphic align="center" fileref="images/dmz6.png" />
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Souvenons-nous que dans cette configuration, le r<>seau local
|
|
|
|
|
utilise la <acronym>SNAT</acronym> et qu'il partage l'IP externe du
|
|
|
|
|
firewall (192.0.2.176) pour les connexions sortantes. On obtient ce
|
|
|
|
|
r<>sultat gr<67>ce <20> l'entr<74>e suivante dans le fichier
|
|
|
|
|
<filename><filename>/etc/shorewall/masq</filename></filename>:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#INTERFACE SUBNET ADDRESS
|
|
|
|
|
eth0 192.168.201.0/29 192.0.2.176</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Supposons maintenant que vous ayez d<>cid<69> d'allouer <20> votre
|
2004-05-09 00:31:54 +02:00
|
|
|
|
fille sa propre adresse IP (192.0.2.179) pour l'ensemble des
|
2005-12-19 19:39:39 +01:00
|
|
|
|
connexions entrantes et sortantes. Vous pouvez faire cela en ajoutant
|
|
|
|
|
cette entr<74>e dans le fichier<filename><ulink url="NAT.htm">
|
2004-05-09 00:31:54 +02:00
|
|
|
|
/etc/shorewall/nat</ulink></filename>.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#EXTERNAL INTERFACE INTERNAL ALL INTERFACES LOCAL
|
|
|
|
|
192.0.2.179 eth0 192.168.201.4 No No</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Avec cette entr<74>e active, votre fille a sa propre adresse IP et
|
|
|
|
|
les deux autres syst<73>mes locaux partagent l'adresse IP du
|
2004-02-14 19:06:39 +01:00
|
|
|
|
firewall.</para>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para>Une fois que la relation entre 192.0.2.179 et192.168.201.4 est
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<20>tablie avec l'entr<74>e ci-dessus dans le fichier
|
|
|
|
|
<filename>nat</filename>, l'utilisation d'une r<>gle d'une r<>gle DNAT
|
|
|
|
|
pour le serveur Web de votre fille n'est plus appropri<72>e -- vous
|
|
|
|
|
devriez plut<75>t utiliser une simple r<>gle ACCEPT:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL
|
|
|
|
|
# PORT(S) PORT(S) DEST
|
|
|
|
|
ACCEPT net loc:192.168.201.4 tcp www</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Un mot de mise en garde. En g<>n<EFBFBD>ral, les <acronym>FAI</acronym>
|
|
|
|
|
configurent leurs routeurs avec un timeout de cache
|
|
|
|
|
<acronym>ARP</acronym> assez <20>lev<65>. Si vous d<>placez un syst<73>me
|
|
|
|
|
parall<6C>le <20> votre firewall derri<72>re le Proxy ARP du firewall, cela
|
|
|
|
|
peut mettre des HEURES avant que ce syst<73>me ne puisse communiquer avec
|
|
|
|
|
internet. Il y a deux choses que vous pouvez essayer de faire:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>(Salutations <20> Bradey Honsinger) Une lecture de
|
|
|
|
|
<quote>TCP/IP Illustrated, Vol 1</quote> de Richard Stevens r<>v<EFBFBD>le
|
|
|
|
|
qu'un paquet ARP <quote>gratuit</quote> (gratuitous) peut amener
|
|
|
|
|
le routeur de votre FAI <20> rafra<72>chir son cache (section 4.7). Un
|
|
|
|
|
paquet ARP <quote>gratuit</quote> est simplement une requ<71>te d'un
|
|
|
|
|
h<>te demandant l'adresse MAC associ<63>e <20> sa propre adresse
|
|
|
|
|
IP.</para>
|
|
|
|
|
|
|
|
|
|
<para>En plus de garantir que cette adresse IP n'est pas
|
|
|
|
|
dupliqu<71>e, <quote>si l'h<>te qui envoie la commande ARP
|
|
|
|
|
<quote>gratuit</quote> vient juste de changer son adresse
|
|
|
|
|
mat<61>rielle ..., ce paquet force tous les autres h<>tes...qui ont
|
|
|
|
|
une entr<74>e dans leur cache ARP pour l'ancienne adresse mat<61>rielle
|
|
|
|
|
<20> mettre leurs caches <20> jour</quote></para>
|
|
|
|
|
|
|
|
|
|
<para>Ce qui est exactement, bien s<>r, ce que vous souhaitez faire
|
|
|
|
|
lorsque vous basculez un h<>te qui <20>tait directement expos<6F> sur
|
|
|
|
|
internet vers l'arri<72>re de votre firewall Shorewall en utilisant
|
|
|
|
|
le proxy ARP (ou en faisant du NAT un-<2D>-un pour la m<>me raison).
|
|
|
|
|
Heureusement, les versions r<>centes du paquetage
|
|
|
|
|
<command>iputils</command> de <trademark>Redhat</trademark>
|
|
|
|
|
comprennent <command>arping</command>, dont l'option "-U" fait
|
|
|
|
|
cela:</para>
|
|
|
|
|
|
|
|
|
|
<para><programlisting><command>arping -U -I <net if> <newly proxied IP></command><command>
|
|
|
|
|
|
|
|
|
|
arping -U -I eth0 66.58.99.83</command> # for example</programlisting>Stevens
|
|
|
|
|
continue en mentionnant que certains syst<73>mes ne r<>pondent pas
|
|
|
|
|
correctement <20> la commande ARP <quote>gratuit</quote>, mais une
|
|
|
|
|
recherche sur google pour <quote>arping -U</quote> semble
|
|
|
|
|
d<>montrer que cela fonctionne dans la plupart des cas.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous pouvez appeler votre <acronym>FAI</acronym> et lui
|
|
|
|
|
demander de purger l'entr<74>e obsol<6F>te de son cache
|
|
|
|
|
<acronym>ARP</acronym>, mais la plupart ne voudront ou ne pourront
|
|
|
|
|
le faire.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous pouvez v<>rifier si le cache ARP de votre FAI est obsol<6F>te
|
|
|
|
|
en utilisant <command>ping</command> et <command>tcpdump</command>.
|
|
|
|
|
Supposez que vous pensez que la passerelle routeur a une entr<74>e ARP
|
|
|
|
|
obsol<6F>te pour 192.0.2.177. Sur le firewall, lancez
|
|
|
|
|
<command>tcpdump</command> de cette fa<66>on:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting><command>tcpdump -nei eth0 icmp</command></programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Maintenant depuis 192.0.2.177, <command>ping</command>ez la
|
|
|
|
|
passerelle de votre FAI (que nous supposons <20>tre 192.0.2.254):</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting><command>ping 192.0.2.254</command></programlisting></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Nous pouvons maintenant observer le r<>sultat de
|
|
|
|
|
<command>tcpdump</command>:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><programlisting>13:35:12.159321 <emphasis role="bold">0:4:e2:20:20:33</emphasis> 0:0:77:95:dd:19 ip 98:
|
|
|
|
|
192.0.2.177 > 192.0.2.254: icmp: echo request (DF)
|
|
|
|
|
13:35:12.207615 0:0:77:95:dd:19 <emphasis role="bold">0:c0:a8:50:b2:57</emphasis> ip 98:
|
2005-12-19 19:39:39 +01:00
|
|
|
|
192.0.2.254 > 192.0.2.177 : icmp: echo reply</programlisting>Remarquez
|
|
|
|
|
que l'adresse source <acronym>MAC</acronym> dans la requ<71>te echo est
|
|
|
|
|
diff<66>rente de l'adresse <acronym>MAC</acronym> de destination dans la
|
|
|
|
|
r<>ponse echo ! Dans ce cas, 0:4:e2:20:20:33 <20>tait l'adresse
|
|
|
|
|
<acronym>MAC</acronym> de l'interface r<>seau <filename
|
|
|
|
|
class="devicefile">eth0</filename> du firewall tandis que
|
|
|
|
|
0:c0:a8:50:b2:57 <20>tait l'adresse <acronym>MAC</acronym> de la carte
|
|
|
|
|
r<>seau de DMZ 1. En d'autre termes, le cache <acronym>ARP</acronym> de
|
|
|
|
|
la passerelle associe encore 192.0.2.177 avec la carte r<>seau de DMZ 1
|
|
|
|
|
plut<75>t qu'avec l'interface <filename class="devicefile"><filename
|
|
|
|
|
class="devicefile">eth0</filename></filename> du firewall.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
</section>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="Rules">
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>R<EFBFBD>gles</title>
|
|
|
|
|
|
|
|
|
|
<para><note>
|
|
|
|
|
<para>Shorewall dispose d'un m<>canisme de <ulink
|
|
|
|
|
url="Macros.html">macros</ulink> comprenant des macros pour de
|
|
|
|
|
nombreuses applications standard. Dans cette section nous
|
|
|
|
|
n'utiliserons pas de macro. mais nous d<>finirons les r<>gles
|
|
|
|
|
directement.</para>
|
|
|
|
|
</note><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
|
|
|
|
|
|
|
|
|
<para>Avec les politiques d<>finies plus t<>t dans ce document, vos
|
|
|
|
|
syst<73>mes locaux (Local 1-3) peuvent acc<63>der <20> n'importe quel serveur sur
|
|
|
|
|
internet alors que la <acronym>DMZ</acronym> ne peut acc<63>der <20> aucun
|
|
|
|
|
autre h<>te, dont le firewall. A l'exception des r<>gles
|
|
|
|
|
<acronym>NAT</acronym> qui entra<72>nent la traduction d'adresses et
|
|
|
|
|
permettent aux requ<71>tes de connexion traduites de passer <20> travers le
|
|
|
|
|
firewall, la fa<66>on d'autoriser des requ<71>tes <20> travers votre firewall est
|
|
|
|
|
d'utiliser des r<>gles ACCEPT.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<note>
|
|
|
|
|
<para>Puisque les colonnes SOURCE PORT et ORIG. DEST. ne sont pas
|
2005-12-19 19:39:39 +01:00
|
|
|
|
utilis<69>es dans cette section, elle ne seront pas affich<63>es.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</note>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous souhaiter certainement autoriser le <command>ping</command>
|
|
|
|
|
entre vos zones:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#ACTION SOURCE DEST PROTO DEST
|
|
|
|
|
# PORT(S)
|
|
|
|
|
ACCEPT net dmz icmp echo-request
|
|
|
|
|
ACCEPT net loc icmp echo-request
|
|
|
|
|
ACCEPT dmz loc icmp echo-request
|
|
|
|
|
ACCEPT loc dmz icmp echo-request</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Supposons que vous avez des serveurs mail et pop3 actifs sur le
|
|
|
|
|
syst<73>me DMZ 2, et un serveur Web sur le syst<73>me DMZ 1. Les r<>gles dont
|
|
|
|
|
vous avez besoin sont:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#ACTION SOURCE DEST PROTO DEST COMMENTS
|
|
|
|
|
# PORT(S)
|
|
|
|
|
ACCEPT net dmz:192.0.2.178 tcp smtp #Mail from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.178 tcp pop3 #Pop3 from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT loc dmz:192.0.2.178 tcp smtp #Mail from local
|
|
|
|
|
#Network
|
|
|
|
|
ACCEPT loc dmz:192.0.2.178 tcp pop3 #Pop3 from local
|
|
|
|
|
#Network
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT $FW dmz:192.0.2.178 tcp smtp #Mail from the
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#Firewall
|
|
|
|
|
ACCEPT dmz:192.0.2.178 net tcp smtp #Mail to the
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 tcp http #WWW from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 tcp https #Secure WWW
|
|
|
|
|
#from Internet
|
|
|
|
|
ACCEPT loc dmz:192.0.2.177 tcp https #Secure WWW
|
|
|
|
|
#from local
|
|
|
|
|
#Network</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si vous utilisez un serveur DNS public sur 192.0.2.177, vous devez
|
|
|
|
|
ajouter les r<>gles suivantes:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#ACTION SOURCE DEST PROTO DEST COMMENTS
|
|
|
|
|
# PORT(S)
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 udp domain #UDP DNS from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 tcp domain #TCP DNS from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT loc dmz:192.0.2.177 udp domain #UDP DNS from
|
|
|
|
|
#Local Network
|
|
|
|
|
ACCEPT loc dmz:192.0.2.177 tcp domain #TCP DNS from
|
|
|
|
|
#Local Network
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT $FW dmz:192.0.2.177 udp domain #UDP DNS from
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#the Firewall
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT $FW dmz:192.0.2.177 tcp domain #TCP DNS from
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#the Firewall
|
|
|
|
|
ACCEPT dmz:192.0.2.177 net udp domain #UDP DNS to
|
|
|
|
|
#the Internet
|
|
|
|
|
ACCEPT dmz:192.0.2.177 net tcp domain #TCPP DNS to
|
|
|
|
|
#the Internet</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Vous souhaiterez probablement communiquer depuis votre r<>seau
|
|
|
|
|
local avec votre firewall et les syst<73>mes en <acronym>DMZ</acronym> --
|
|
|
|
|
Je recommande <acronym>SSH</acronym> qui, gr<67>ce <20> son utilitaire
|
|
|
|
|
<command>scp</command> peut aussi faire de la diffusion et de la mise <20>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
jour de logiciels.</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DEST PROTO DEST COMMENTS
|
|
|
|
|
# PORT(S)
|
|
|
|
|
ACCEPT loc dmz tcp ssh #SSH to the DMZ
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT net $FW tcp ssh #SSH to the
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#Firewall</programlisting>
|
|
|
|
|
</section>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="OddsAndEnds">
|
|
|
|
|
<title>D'autres petites choses</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La discussion pr<70>c<EFBFBD>dente refl<66>te ma pr<70>f<EFBFBD>rence personnelle pour
|
|
|
|
|
l'utilisation d'un Proxy ARP associ<63> <20> mes serveurs en DMZ et de
|
|
|
|
|
SNAT/NAT pour les syst<73>mes locaux. Je pr<70>f<EFBFBD>re utiliser la NAT seulement
|
|
|
|
|
dans le cas ou un syst<73>me qui fait partie d'un sous-r<>seau RFC 1918 <20>
|
|
|
|
|
besoin d'avoir sa propre adresse IP publique.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" /></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si vous ne l'avez d<>j<EFBFBD> fait, ce serait une bonne id<69>e de parcourir
|
|
|
|
|
le fichier <ulink
|
2004-05-09 00:31:54 +02:00
|
|
|
|
url="Documentation.htm#Config"><filename>/etc/shorewall/shorewall.conf</filename></ulink>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
juste pour voir si autre chose pourrait vous int<6E>resser. Vous pouvez
|
|
|
|
|
aussi regarder les autres fichiers de configuration que vous n'avez pas
|
|
|
|
|
touch<63>s pour avoir un aper<65>u des autres possibilit<69>s de
|
|
|
|
|
Shorewall.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Dans le cas ou vous auriez perdu le fil, vous trouverez ci-dessous
|
|
|
|
|
un jeu final des fichiers de configuration pour le r<>seau de notre
|
|
|
|
|
exemple. Seuls les fichiers de la configuration initiale qui ont <20>t<EFBFBD>
|
|
|
|
|
modifi<66>s sont pr<70>sent<6E>s.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><filename>/etc/shorewall/interfaces</filename> (Les "options" sont
|
|
|
|
|
tr<74>s d<>pendantes des sites).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>#ZONE INTERFACE BROADCAST OPTIONS
|
|
|
|
|
net eth0 detect rfc1918,routefilter
|
|
|
|
|
loc eth1 detect
|
|
|
|
|
dmz eth2 detect</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La configuration d<>crite ici n<>cessite que votre r<>seau soit
|
|
|
|
|
d<>marr<72> avant que Shorewall ne puisse se lancer. Ceci laisse un petit
|
|
|
|
|
intervalle de temps durant lequel vous n'avez pas la protection d'un
|
|
|
|
|
firewall.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Si vous remplacez le <quote>detect</quote> dans les entr<74>es
|
|
|
|
|
ci-dessus par la valeurs des adresses de diffusion (broadcoast) r<>elles,
|
|
|
|
|
vous pouvez activer Shorewall avant de monter vos interfaces
|
|
|
|
|
r<>seau.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>#ZONE INTERFACE BROADCAST OPTIONS
|
|
|
|
|
net eth0 192.0.2.255 rfc1918
|
|
|
|
|
loc eth1 192.168.201.7
|
|
|
|
|
dmz eth2 192.168.202.7</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><filename>/etc/shorewall/masq</filename> - R<>seau Local</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<programlisting>#INTERFACE SUBNET ADDRESS
|
|
|
|
|
eth0 192.168.201.0/29 192.0.2.176</programlisting>
|
|
|
|
|
|
|
|
|
|
<para><filename>/etc/shorewall/proxyarp</filename> - DMZ</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ADDRESS EXTERNAL INTERFACE HAVE ROUTE
|
|
|
|
|
192.0.2.177 eth2 eth0 No
|
|
|
|
|
192.0.2.178 eth2 eth0 No</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><filename>/etc/shorewall/nat</filename>- Le syst<73>me de ma
|
2004-05-09 00:31:54 +02:00
|
|
|
|
fille</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#EXTERNAL INTERFACE INTERNAL ALL INTERFACES LOCAL
|
|
|
|
|
192.0.2.179 eth0 192.168.201.4 No No</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><filename>/etc/shorewall/rules</filename><programlisting>#ACTION SOURCE DEST PROTO DEST COMMENTS
|
2004-05-09 00:31:54 +02:00
|
|
|
|
# PORT(S)
|
|
|
|
|
ACCEPT net dmz icmp echo-request
|
|
|
|
|
ACCEPT net loc icmp echo-request
|
|
|
|
|
ACCEPT dmz loc icmp echo-request
|
|
|
|
|
ACCEPT loc dmz icmp echo-request
|
|
|
|
|
ACCEPT net loc:192.168.201.4 tcp www #Daughter's
|
|
|
|
|
#Server
|
|
|
|
|
ACCEPT net dmz:192.0.2.178 tcp smtp #Mail from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.178 tcp pop3 #Pop3 from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT loc dmz:192.0.2.178 tcp smtp #Mail from local
|
|
|
|
|
#Network
|
|
|
|
|
ACCEPT loc dmz:192.0.2.178 tcp pop3 #Pop3 from local
|
|
|
|
|
#Network
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT $FW dmz:192.0.2.178 tcp smtp #Mail from the
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#Firewall
|
|
|
|
|
ACCEPT dmz:192.0.2.178 net tcp smtp #Mail to the
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 tcp http #WWW from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 tcp https #Secure WWW
|
|
|
|
|
#from Internet
|
|
|
|
|
ACCEPT loc dmz:192.0.2.177 tcp https #Secure WWW
|
|
|
|
|
#from local
|
|
|
|
|
#Network
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 udp domain #UDP DNS from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT net dmz:192.0.2.177 tcp domain #TCP DNS from
|
|
|
|
|
#Internet
|
|
|
|
|
ACCEPT loc dmz:192.0.2.177 udp domain #UDP DNS from
|
|
|
|
|
#Local Network
|
|
|
|
|
ACCEPT loc dmz:192.0.2.177 tcp domain #TCP DNS from
|
|
|
|
|
#Local Network
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT $FW dmz:192.0.2.177 udp domain #UDP DNS from
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#the Firewall
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT $FW dmz:192.0.2.177 tcp domain #TCP DNS from
|
2004-05-09 00:31:54 +02:00
|
|
|
|
#the Firewall
|
|
|
|
|
ACCEPT dmz:192.0.2.177 net udp domain #UDP DNS to
|
|
|
|
|
#the Internet
|
|
|
|
|
ACCEPT dmz:192.0.2.177 net tcp domain #TCPP DNS to
|
|
|
|
|
#the Internet
|
|
|
|
|
ACCEPT loc dmz tcp ssh #SSH to the DMZ
|
2005-12-19 19:39:39 +01:00
|
|
|
|
ACCEPT net $FW tcp ssh #SSH to the
|
|
|
|
|
#Firewall</programlisting></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</section>
|
|
|
|
|
</section>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<section id="DNS">
|
|
|
|
|
<title>DNS</title>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Compte tenu des adresses RFC 1918 et des adresses publiques
|
|
|
|
|
utilis<69>es dans cette configuration, la seule fa<66>on logique de faire est
|
|
|
|
|
d'avoir des serveurs <acronym>DNS</acronym> interne et externe s<>par<61>s.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
Vous pouvez combiner les deux dans un unique serveur BIND 9 utilisant les
|
2005-12-19 19:39:39 +01:00
|
|
|
|
vues (Views). Si vous n'<27>tes pas int<6E>ress<73> par les vues BIND 9, vous
|
|
|
|
|
pouvez allez <20> la section suivante.</para>
|
|
|
|
|
|
|
|
|
|
<para>Supposons que votre domaine est foobar.net. Vous voulez que les deux
|
|
|
|
|
syst<73>mes en <acronym>DMZ</acronym> s'appellent www.foobar.net et
|
|
|
|
|
mail.foobar.net, et vous voulez que les trois syst<73>mes locaux s'appellent
|
|
|
|
|
winken.foobar.net, blinken.foobar.net et nod.foobar.net. Vous voulez que
|
|
|
|
|
le firewall soit connu <20> l'ext<78>rieur sous le nom de firewall.foobar.net,
|
|
|
|
|
que son interface vers le r<>seau local soit nomm<6D>e gateway.foobar.net et
|
|
|
|
|
que son interface vers la <acronym>DMZ</acronym> soit dmz.foobar.net.
|
|
|
|
|
Mettons le serveur DNS sur 192.0.2.177 qui sera aussi connu sous le nom de
|
|
|
|
|
ns1.foobar.net.</para>
|
|
|
|
|
|
|
|
|
|
<para>Le fichier <filename>/etc/named.conf</filename> devrait ressembler <20>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
cela:</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
options {
|
|
|
|
|
directory "/var/named";
|
|
|
|
|
listen-on { 127.0.0.1 ; 192.0.2.177; };
|
2005-12-19 19:39:39 +01:00
|
|
|
|
transfer-format many-answers;
|
|
|
|
|
max-transfer-time-in 60;
|
|
|
|
|
|
|
|
|
|
allow-transfer {
|
|
|
|
|
// Servers allowed to request zone tranfers
|
|
|
|
|
<secondary NS IP>; };
|
2004-02-14 19:06:39 +01:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
logging {
|
2004-05-09 00:31:54 +02:00
|
|
|
|
channel xfer-log {
|
|
|
|
|
file "/var/log/named/bind-xfer.log";
|
|
|
|
|
print-category yes;
|
|
|
|
|
print-severity yes;
|
|
|
|
|
print-time yes;
|
|
|
|
|
severity info;
|
2004-02-14 19:06:39 +01:00
|
|
|
|
};
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
category xfer-in { xfer-log; };
|
|
|
|
|
category xfer-out { xfer-log; };
|
|
|
|
|
category notify { xfer-log; };
|
|
|
|
|
};
|
|
|
|
|
|
2004-02-14 19:06:39 +01:00
|
|
|
|
#
|
2004-05-09 00:31:54 +02:00
|
|
|
|
# This is the view presented to our internal systems
|
2004-02-14 19:06:39 +01:00
|
|
|
|
#
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
view "internal" {
|
|
|
|
|
#
|
|
|
|
|
# These are the clients that see this view
|
|
|
|
|
#
|
|
|
|
|
match-clients { 192.168.201.0/29;
|
|
|
|
|
192.168.202.0/29;
|
|
|
|
|
127.0.0.0/8;
|
|
|
|
|
192.0.2.176/32;
|
|
|
|
|
192.0.2.178/32;
|
|
|
|
|
192.0.2.179/32;
|
|
|
|
|
192.0.2.180/32; };
|
|
|
|
|
#
|
|
|
|
|
# If this server can't complete the request, it should use
|
|
|
|
|
# outside servers to do so
|
|
|
|
|
#
|
|
|
|
|
recursion yes;
|
|
|
|
|
|
|
|
|
|
zone "." in {
|
|
|
|
|
type hint;
|
|
|
|
|
file "int/root.cache";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "foobar.net" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "int/db.foobar";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "0.0.127.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "int/db.127.0.0";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "201.168.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "int/db.192.168.201";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "202.168.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "int/db.192.168.202";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "176.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.176";
|
|
|
|
|
};
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
zone "177.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.177";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "178.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.178";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "179.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify no;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.206.124.146.179";
|
|
|
|
|
};
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
#
|
2004-05-09 00:31:54 +02:00
|
|
|
|
# This is the view that we present to the outside world
|
2004-02-14 19:06:39 +01:00
|
|
|
|
#
|
2004-05-09 00:31:54 +02:00
|
|
|
|
view "external" {
|
|
|
|
|
match-clients { any; };
|
|
|
|
|
#
|
|
|
|
|
# If we can't answer the query, we tell the client so
|
|
|
|
|
#
|
|
|
|
|
recursion no;
|
|
|
|
|
|
|
|
|
|
zone "foobar.net" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify yes;
|
|
|
|
|
allow-update {none; };
|
|
|
|
|
file "ext/db.foobar";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "176.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify yes;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.176";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "177.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify yes;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.177";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "178.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify yes;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.178";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
zone "179.2.0.192.in-addr.arpa" in {
|
|
|
|
|
type master;
|
|
|
|
|
notify yes;
|
|
|
|
|
allow-update { none; };
|
|
|
|
|
file "db.192.0.2.179";
|
|
|
|
|
};
|
2004-02-14 19:06:39 +01:00
|
|
|
|
};</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Voici les fichiers du r<>pertoire <filename
|
|
|
|
|
class="directory">/var/named</filename> (ceux qui ne sont pas pr<70>sent<6E>s
|
|
|
|
|
font en g<>n<EFBFBD>ral partie de votre distribution BIND).</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><filename>db.192.0.2.176</filename> - Zone inverse (reverse) pour
|
|
|
|
|
l'interface externe du firewall</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 192.0.2.176/32
|
|
|
|
|
; Filename: db.192.0.2.176
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2001102303 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
@ 604800 IN NS <name of secondary ns>.
|
2004-02-14 19:06:39 +01:00
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
|
|
|
|
176.2.0.192.in-addr.arpa. 86400 IN PTR firewall.foobar.net.</programlisting>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>db.192.0.2.177</filename> - Zone inverse pour le serveur
|
2005-12-19 19:39:39 +01:00
|
|
|
|
www</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 192.0.2.177/32
|
|
|
|
|
; Filename: db.192.0.2.177
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2001102303 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
@ 604800 IN NS <name of secondary ns>.
|
2004-02-14 19:06:39 +01:00
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
|
|
|
|
177.2.0.192.in-addr.arpa. 86400 IN PTR www.foobar.net.</programlisting>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>db.192.0.2.178</filename> - Zone inverse du serveur
|
|
|
|
|
mail</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 192.0.2.178/32
|
|
|
|
|
; Filename: db.192.0.2.178
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2001102303 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
@ 604800 IN NS <name of secondary ns>.
|
2004-02-14 19:06:39 +01:00
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
178.2.0.192.in-addr.arpa. 86400 IN PTR mail.foobar.net.</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>db.192.0.2.179</filename> - Zone inverse du serveur web
|
2005-12-19 19:39:39 +01:00
|
|
|
|
public de votre fille</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 192.0.2.179/32
|
|
|
|
|
; Filename: db.192.0.2.179
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2001102303 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
@ 604800 IN NS <name of secondary ns>.
|
2004-02-14 19:06:39 +01:00
|
|
|
|
;
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
|
|
|
|
179.2.0.192.in-addr.arpa. 86400 IN PTR nod.foobar.net.</programlisting>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>int/db.127.0.0</filename> - Zone inverse pour
|
|
|
|
|
localhost</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 127.0.0.0/8
|
|
|
|
|
; Filename: db.127.0.0
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2001092901 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
|
|
|
|
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
|
|
|
|
1 86400 IN PTR localhost.foobar.net.</programlisting>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>int/db.192.168.201</filename> - Zone inverse pour le
|
2005-12-19 19:39:39 +01:00
|
|
|
|
r<>seau local. Cela ne sera visible que depuis les clients internes</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 192.168.201.0/29
|
|
|
|
|
; Filename: db.192.168.201
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net netadmin.foobar.net. (
|
|
|
|
|
2002032501 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
|
|
|
|
1 86400 IN PTR gateway.foobar.net.
|
|
|
|
|
2 86400 IN PTR winken.foobar.net.
|
|
|
|
|
3 86400 IN PTR blinken.foobar.net.
|
|
|
|
|
4 86400 IN PTR nod.foobar.net.</programlisting>
|
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>int/db.192.168.202</filename> - Zone inverse de
|
|
|
|
|
l'interface DMZ du firewall</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>; ############################################################
|
|
|
|
|
; Start of Authority (Inverse Address Arpa) for 192.168.202.0/29
|
|
|
|
|
; Filename: db.192.168.202
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net netadmin.foobar.net. (
|
|
|
|
|
2002032501 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ) ; minimum (1 day)
|
|
|
|
|
|
|
|
|
|
; ############################################################
|
|
|
|
|
; Specify Name Servers for all Reverse Lookups (IN-ADDR.ARPA)
|
|
|
|
|
; ############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
|
|
|
|
|
|
|
|
|
; ############################################################
|
2004-05-09 00:31:54 +02:00
|
|
|
|
; Iverse Address Arpa Records (PTR's)
|
2004-02-14 19:06:39 +01:00
|
|
|
|
; ############################################################
|
|
|
|
|
1 86400 IN PTR dmz.foobar.net.</programlisting>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><filename>int/db.foobar </filename>- Forward zone pour les clients
|
|
|
|
|
internes.</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>;##############################################################
|
|
|
|
|
; Start of Authority for foobar.net.
|
|
|
|
|
; Filename: db.foobar
|
|
|
|
|
;##############################################################
|
|
|
|
|
@ 604800 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2002071501 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ); minimum (1 day)
|
|
|
|
|
;############################################################
|
|
|
|
|
; foobar.net Nameserver Records (NS)
|
|
|
|
|
;############################################################
|
|
|
|
|
@ 604800 IN NS ns1.foobar.net.
|
|
|
|
|
|
|
|
|
|
;############################################################
|
|
|
|
|
; Foobar.net Office Records (ADDRESS)
|
|
|
|
|
;############################################################
|
|
|
|
|
localhost 86400 IN A 127.0.0.1
|
|
|
|
|
|
|
|
|
|
firewall 86400 IN A 192.0.2.176
|
|
|
|
|
www 86400 IN A 192.0.2.177
|
|
|
|
|
ns1 86400 IN A 192.0.2.177
|
2005-12-19 19:39:39 +01:00
|
|
|
|
mail 86400 IN A 192.0.2.178
|
|
|
|
|
|
|
|
|
|
gateway 86400 IN A 192.168.201.1
|
|
|
|
|
winken 86400 IN A 192.168.201.2
|
|
|
|
|
blinken 86400 IN A 192.168.201.3
|
|
|
|
|
nod 86400 IN A 192.168.201.4
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
dmz 86400 IN A 192.168.202.1</programlisting>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<para><filename>ext/db.foobar </filename>- Forward zone pour les clients
|
|
|
|
|
externes</para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>;##############################################################
|
|
|
|
|
; Start of Authority for foobar.net.
|
|
|
|
|
; Filename: db.foobar
|
|
|
|
|
;##############################################################
|
|
|
|
|
@ 86400 IN SOA ns1.foobar.net. netadmin.foobar.net. (
|
|
|
|
|
2002052901 ; serial
|
|
|
|
|
10800 ; refresh (3 hour)
|
|
|
|
|
3600 ; retry (1 hour)
|
|
|
|
|
604800 ; expire (7 days)
|
|
|
|
|
86400 ); minimum (1 day)
|
|
|
|
|
;############################################################
|
|
|
|
|
; Foobar.net Nameserver Records (NS)
|
|
|
|
|
;############################################################
|
|
|
|
|
@ 86400 IN NS ns1.foobar.net.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
@ 86400 IN NS <secondary NS>.
|
2004-02-14 19:06:39 +01:00
|
|
|
|
;############################################################
|
|
|
|
|
; Foobar.net Foobar Wa Office Records (ADDRESS)
|
|
|
|
|
;############################################################
|
|
|
|
|
localhost 86400 IN A 127.0.0.1
|
|
|
|
|
;
|
|
|
|
|
; The firewall itself
|
|
|
|
|
;
|
|
|
|
|
firewall 86400 IN A 192.0.2.176
|
|
|
|
|
;
|
|
|
|
|
; The DMZ
|
|
|
|
|
;
|
|
|
|
|
ns1 86400 IN A 192.0.2.177
|
|
|
|
|
www 86400 IN A 192.0.2.177
|
|
|
|
|
mail 86400 IN A 192.0.2.178
|
|
|
|
|
;
|
|
|
|
|
; The Local Network
|
|
|
|
|
;
|
|
|
|
|
nod 86400 IN A 192.0.2.179
|
|
|
|
|
|
|
|
|
|
;############################################################
|
|
|
|
|
; Current Aliases for foobar.net (CNAME)
|
|
|
|
|
;############################################################
|
|
|
|
|
|
|
|
|
|
;############################################################
|
|
|
|
|
; foobar.net MX Records (MAIL EXCHANGER)
|
|
|
|
|
;############################################################
|
|
|
|
|
foobar.net. 86400 IN A 192.0.2.177
|
|
|
|
|
86400 IN MX 0 mail.foobar.net.
|
2004-05-09 00:31:54 +02:00
|
|
|
|
86400 IN MX 1 <backup MX>.</programlisting>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>Quelques Points <20> Garder en M<>moire</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Vous ne pouvez pas tester votre firewall
|
|
|
|
|
depuis l'int<6E>rieur de votre r<>seau</emphasis>. Envoyer des requ<71>tes <20>
|
|
|
|
|
l'adresse IP externe de votre firewall ne signifie pas qu'elle seront
|
|
|
|
|
associ<63>es <20> votre interface externe ou <20> la zone <quote>net</quote>.
|
|
|
|
|
Tout trafic g<>n<EFBFBD>r<EFBFBD> par le r<>seau local sera associ<63> <20> l'interface
|
|
|
|
|
locale et sera trait<69> comme du trafic du r<>seau local ver le firewall
|
|
|
|
|
(loc->fw).</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Les adresses IP sont des propri<72>t<EFBFBD>s des
|
|
|
|
|
syst<73>mes, pas des interfaces</emphasis>. C'est une erreur de croire
|
|
|
|
|
que votre firewall est capable de faire suivre
|
|
|
|
|
(<emphasis>forward</emphasis>) des paquets simplement parce que vous
|
|
|
|
|
pouvez faire un <command>ping</command> sur l'adresse IP de toutes les
|
|
|
|
|
interfaces du firewall depuis le r<>seau local. La seule conclusion que
|
|
|
|
|
vous puissiez faire dans ce cas est que le lien entre le r<>seau local
|
|
|
|
|
et le firewall fonctionne et que vous avez probablement la bonne
|
|
|
|
|
adresse de passerelle par d<>faut sur votre syst<73>me.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Toutes les adresses IP configur<75>es sur le
|
2004-05-09 00:31:54 +02:00
|
|
|
|
firewall sont dans la zone $FW (fw)</emphasis>. Si 192.168.1.254 est
|
2005-12-19 19:39:39 +01:00
|
|
|
|
l'adresse IP de votre interface interne, alors vous pouvez <20>crire
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<quote><emphasis role="bold">$FW:192.168.1.254</emphasis></quote> dans
|
2005-12-19 19:39:39 +01:00
|
|
|
|
une r<>gle mais vous ne devez pas <20>crire <quote><emphasis
|
|
|
|
|
role="bold">loc:192.168.1.254</emphasis></quote>. C'est aussi une
|
|
|
|
|
absurdit<69> d'ajouter 192.168.1.254 <20> la zone <emphasis
|
|
|
|
|
role="bold">loc</emphasis> en utilisant une entr<74>e dans
|
2004-05-09 00:31:54 +02:00
|
|
|
|
<filename>/etc/shorewall/hosts</filename>.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Les paquets de retour (reply) ne suivent
|
|
|
|
|
PAS automatiquement le chemin inverse de la requ<71>te
|
|
|
|
|
d'origine</emphasis>. Tous les paquets sont rout<75>s en se r<>f<EFBFBD>rant <20> la
|
|
|
|
|
table de routage respective de chaque h<>te <20> chaque <20>tape du trajet.
|
|
|
|
|
Ce probl<62>me se produit en g<>n<EFBFBD>ral lorsque on installe un firewall
|
|
|
|
|
Shorewall en parall<6C>le <20> une passerelle existante et qu'on essaye
|
|
|
|
|
d'utiliser des r<>gles <acronym>DNAT</acronym> dans Shorewall sans
|
|
|
|
|
changer la passerelle par d<>faut sur les syst<73>mes recevant les
|
|
|
|
|
requ<71>tes transf<73>r<EFBFBD>es (forwarded). Les requ<71>tes passent dans le
|
|
|
|
|
firewall Shorewall o<> l'adresse de destination IP est r<><72>crite, mais
|
|
|
|
|
la r<>ponse revient par l'ancienne passerelle qui, elle, ne modifiera
|
|
|
|
|
pas le paquet.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para><emphasis role="bold">Shorewall lui-m<>me n'a aucune notion du
|
|
|
|
|
dedans et du dehors</emphasis>. Ces concepts d<>pendent de la fa<66>on
|
|
|
|
|
dont Shorewall est configur<75>.</para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<title>D<EFBFBD>marrer et Arr<72>ter Votre Firewall</title>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>La <ulink url="Install.htm">proc<EFBFBD>dure d'installation</ulink>
|
|
|
|
|
configure votre syst<73>me pour lancer Shorewall d<>s le boot du syst<73>me, mais
|
|
|
|
|
le lancement est d<>sactiv<69>, de fa<66>on <20> ce que votre syst<73>me ne tente pas
|
|
|
|
|
de lancer Shorewall avant que la configuration ne soit termin<69>e. Une fois
|
|
|
|
|
que vous en avez fini avec la configuration du firewall, vous devez <20>diter
|
|
|
|
|
/etc/shorewall/shorewall.conf et y mettre STARTUP_ENABLED=Yes.<important>
|
|
|
|
|
<para>Les utilisateurs des paquetages .deb doivent <20>diter <filename
|
2004-05-09 00:31:54 +02:00
|
|
|
|
class="directory">/etc/default/</filename><filename>shorewall</filename>
|
2005-01-22 16:18:06 +01:00
|
|
|
|
et mettre <varname>startup=1</varname>.</para>
|
2005-12-19 19:39:39 +01:00
|
|
|
|
</important></para>
|
|
|
|
|
|
|
|
|
|
<para>Le firewall est activ<69> en utilisant la commande
|
|
|
|
|
<quote><command>shorewall start</command></quote> et arr<72>t<EFBFBD> avec la
|
|
|
|
|
commande <quote><command>shorewall stop</command></quote>. Lorsque le
|
|
|
|
|
firewall est arr<72>t<EFBFBD>, le routage est autoris<69> sur les h<>tes qui poss<73>dent
|
|
|
|
|
une entr<74>e dans <filename class="directory"><ulink
|
|
|
|
|
url="Documentation.htm#Routestopped">/etc/shorewall/routestopped</ulink></filename>.
|
|
|
|
|
Un firewall qui tourne peut <20>tre relanc<6E> en utilisant la commande
|
|
|
|
|
<quote><command>shorewall restart</command></quote>. Si vous voulez
|
|
|
|
|
enlever toute trace de Shorewall sur votre configuration de Netfilter,
|
|
|
|
|
utilisez <quote><emphasis role="bold">shorewall
|
|
|
|
|
clear</emphasis></quote></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<para>Modifiez <filename
|
2004-05-09 00:31:54 +02:00
|
|
|
|
class="directory">/etc/shorewall/</filename><filename><ulink
|
2005-12-19 19:39:39 +01:00
|
|
|
|
url="Documentation.htm#Routestopped">routestopped</ulink></filename> pour
|
|
|
|
|
y configurer les h<>tes auxquels vous voulez acc<63>der lorsque le firewall
|
|
|
|
|
est arr<72>t<EFBFBD>. <warning>
|
|
|
|
|
<para>Si vous <20>tes connect<63> <20> votre firewall depuis internet,
|
|
|
|
|
n'essayez pas d'ex<65>cuter une commande <quote><command>shorewall
|
|
|
|
|
stop</command></quote> tant que vous n'avez pas ajout<75> une entr<74>e dans
|
|
|
|
|
<filename><filename
|
|
|
|
|
class="directory">/etc/shorewall/</filename><filename>routestopped</filename></filename>
|
|
|
|
|
pour l'adresse IP <20> partir de laquelle vous <20>tes connect<63> . De la m<>me
|
|
|
|
|
mani<6E>re, je vous d<>conseille d'utiliser <quote><command>shorewall
|
|
|
|
|
restart</command></quote>; il est plus int<6E>ressant de cr<63>er <ulink
|
2004-05-09 00:31:54 +02:00
|
|
|
|
url="configuration_file_basics.htm#Configs">une configuration
|
|
|
|
|
alternative</ulink> et de la tester en utilisant la commande
|
2005-12-19 19:39:39 +01:00
|
|
|
|
<quote><ulink url="starting_and_stopping_shorewall.htm">shorewall
|
|
|
|
|
try</ulink></quote></para>
|
2004-05-09 00:31:54 +02:00
|
|
|
|
</warning></para>
|
2004-02-14 19:06:39 +01:00
|
|
|
|
</section>
|
|
|
|
|
</article>
|