Man page - iptables(8)
Packages contains this manual
- ip6tables-legacy(8)
- ip6tables-restore-translate(8)
- ip6tables-restore(8)
- nfnl_osf(8)
- iptables-xml(1)
- ebtables-nft-restore(8)
- arptables-nft-save(8)
- ebtables-translate(8)
- iptables-nft-save(8)
- ip6tables-nft-restore(8)
- iptables-nft-restore(8)
- xtables-legacy(8)
- iptables-restore(8)
- xtables-nft(8)
- ip6tables-legacy-save(8)
- ebtables-nft-save(8)
- iptables-restore-translate(8)
- iptables-translate(8)
- ip6tables-apply(8)
- arptables-nft-restore(8)
- iptables-extensions(8)
- xtables-translate(8)
- ip6tables-nft-save(8)
- ip6tables-legacy-restore(8)
- ebtables-nft(8)
- ip6tables-nft(8)
- xtables-nft-multi(8)
- ip6tables-translate(8)
- iptables-save(8)
- arptables-translate(8)
- iptables-legacy-save(8)
- iptables-legacy-restore(8)
- ip6tables-save(8)
- iptables(8)
- xtables-legacy-multi(8)
- arptables-nft(8)
- ip6tables(8)
- iptables-nft(8)
- iptables-apply(8)
- iptables-legacy(8)
- xtables-monitor(8)
apt-get install iptables
Available languages:
en fr es ja ru ro zh_TW zh_CN deManual
IPTABLES
NOMSYNOPSIS
DESCRIPTION
CIBLES
TABLES
OPTIONS
COMMANDES
PARAMĂTRES
AUTRES OPTIONS
FICHIER VERROU
EXTENSIONS DE CORRESPONDANCE ET DE CIBLE
DIAGNOSTICS
BOGUES
COMPATIBILITĂ AVEC IPCHAINS
VOIR AUSSI
AUTEURS
VERSION
TRADUCTION
NOM
iptables/ip6tables â Outil dâadministration pour le filtrage et le NAT des paquets IPv4/IPv6
SYNOPSIS
iptables [ -t table ] { -A | -C | -D | -V } chaine spécification_de_rÚgle
ip6tables [ -t table ] { -A | -C | -D | -V } chaine spécification_de_rÚgle
iptables [ -t table ] -I chaine [ numéro_de_rÚgle ] spécification_de_rÚgle
iptables [ -t table ] -R chaine numéro_de_rÚgle spécification_de_rÚgle
iptables [ -t table ] -D chaine numéro_de_rÚgle
iptables [ -t table ] -S [ chaine [ numéro_de_rÚgle ]]
iptables [ -t table ] { -F | -L | -Z } [ chaine [ numéro_de_rÚgle ]] [ options... ]
iptables [ -t table ] -N chaine
iptables [ -t table ] -X [ chaine ]
iptables [ -t table ] -P action chaine
iptables [ -t table ] -E ancienne_chaine nouvelle_chaine
spécification_de_rÚgle = [correspondances...] [cible]
correspondance = -m nom_correspondance [options_par_correspondance]
cible = -j nom_cible [options_par_cible]
DESCRIPTION
Iptables et ip6tables permettent de dĂ©finir, entretenir et inspecter les tables de rĂšgles de filtrage des paquets IPv4 et IPv6 dans le noyau Linux. Plusieurs tables peuvent ĂȘtre dĂ©finies. Chaque table contient des chaines prĂ©dĂ©finies, mais peut aussi contenir des chaines dĂ©finies par lâutilisateur.
Chaque chaine est une liste de rĂšgles qui peuvent sâappliquer Ă un ensemble de paquets. Chaque rĂšgle spĂ©cifie quoi faire dâun paquet qui correspond. Cette action que lâon nomme « cible » peut ĂȘtre un saut vers une chaine dĂ©finie par lâutilisateur dans la mĂȘme table.
CIBLES
Une rĂšgle de pare-feu spĂ©cifie des critĂšres pour un paquet et une cible. Si un paquet ne correspond pas, la rĂšgle suivante dans la chaine est examinĂ©e ; sâil correspond, la rĂšgle suivante est spĂ©cifiĂ©e par la valeur de la cible qui peut ĂȘtre le nom dâune chaine dĂ©finie par lâutilisateur, une des cibles dĂ©crites dans iptables-extensions (8) ou une des valeurs spĂ©ciales ACCEPT , DROP ou RETURN .
ACCEPT signifie que le paquet peut passer. DROP signifie que le paquet doit ĂȘtre rejetĂ©. RETURN signifie que lâon doit arrĂȘter de parcourir cette chaine et reprendre Ă la rĂšgle suivante de la chaine prĂ©cĂ©dente (appelante). Si la fin dâune chaine prĂ©dĂ©finie est atteinte ou si une rĂšgle dâune chaine prĂ©dĂ©finie ayant pour cible RETURN sâapplique, la cible par dĂ©faut de la chaine dĂ©terminera le sort du paquet.
TABLES
Il existe
actuellement cinq tables indépendantes (la liste des
tables présentes à tout moment dépend
des options de configuration du noyau et de la liste des
modules présents).
-t
,
--table
table
Cette option spĂ©cifie la table de correspondance des paquets sur laquelle la commande doit opĂ©rer. Si le noyau est configurĂ© pour charger les modules automatiquement, il tentera de charger le module appropriĂ© Ă cette table, sâil ne lâest pas dĂ©jĂ .
Les tables sont
les suivantes :
filter
:
Il sâagit de la table par dĂ©faut (dans le cas oĂč aucune option -t nâest spĂ©cifiĂ©e). Elle contient les chaines prĂ©dĂ©finies INPUT (pour les paquets destinĂ©s aux sockets locaux), FORWARD (pour les paquets routĂ©s par la machine) et OUTPUT (pour les paquets gĂ©nĂ©rĂ©s localement).
nat :
Cette table est consultĂ©e quand arrive un paquet qui crĂ©e une nouvelle connexion. Elle comporte quatre chaines prĂ©dĂ©finies : PREROUTING (pour modifier les paquets dĂšs leur entrĂ©e), INPUT (pour modifier les paquets destinĂ©s aux sockets locaux), OUTPUT (pour modifier les paquets gĂ©nĂ©rĂ©s localement avant leur routage) et POSTROUTING (pour modifier les paquets lorsquâils sont sur le point de sortir). Le NAT IPv6 est pris en charge depuis la version 3.7 du noyau.
mangle :
Cette table est utilisĂ©e pour une modification spĂ©cialisĂ©e des paquets. JusquâĂ la version 2.4.17 du noyau, elle comportait deux chaines prĂ©dĂ©finies : PREROUTING (pour la modification des paquets entrants avant leur routage) et OUTPUT (pour la modification des paquets gĂ©nĂ©rĂ©s localement avant leur routage). Depuis la version 2.4.18, trois autres chaines prĂ©dĂ©finies sont prises en charge : INPUT (pour les paquets entrant dans la machine elle-mĂȘme), FORWARD (pour la modification des paquets routĂ©s Ă travers la machine) et POSTROUTING (pour modifier les paquets lorsquâils sont sur le point de sortir).
raw :
Cette table est principalement utilisĂ©e pour configurer les exemptions de suivi de connexion en combinaison avec la cible NOTRACK. Elle sâenregistre aux accroches netfilter avec une prioritĂ© supĂ©rieure et est ainsi appelĂ©e avant ip_conntrack ou toute autre table IP. Elle comporte les chaines prĂ©dĂ©finies suivantes : PREROUTING (pour les paquets arrivant par toute interface rĂ©seau) et OUTPUT (pour les paquets gĂ©nĂ©rĂ©s par des processus locaux).
security :
Cette table est utilisĂ©e pour les rĂšgles Mandatory Access Control (MAC), comme celles qui sont activĂ©es par les cibles SECMARK et CONNSECMARK . Mandatory Access Control est implĂ©mentĂ© par les modules de sĂ©curitĂ© Linux comme SELinux. La table security est appelĂ©e aprĂšs la table filter, ce qui permet Ă toute rĂšgle Discretionary Access Control (DAC) de la table filter de prendre effet avant les rĂšgles MAC. Elle comporte les chaines prĂ©dĂ©finies suivantes : INPUT (pour les paquets entrant dans la machine elle-mĂȘme), OUTPUT (pour la modification des paquets gĂ©nĂ©rĂ©s localement avant leur routage) et FORWARD (pour la modification des paquets routĂ©s Ă travers la machine).
OPTIONS
Les options reconnues par iptables et ip6tables peuvent ĂȘtre rĂ©parties en plusieurs groupes.
COMMANDES
Ces options
spĂ©cifient lâaction Ă exĂ©cuter.
Sauf indications contraires précisées plus
loin, la ligne de commande ne peut comporter quâune
seule de ces options. Pour les versions longues des noms de
commande et dâoption, il vous suffit de
prĂ©ciser suffisamment de lettres pour ĂȘtre
sĂ»r quâ
iptables
puisse les
différencier des autres commandes et options.
-A
,
--append
chaine
spécification_de_rÚgle
Ajouter une ou plusieurs rĂšgles Ă la fin de la chaine indiquĂ©e. Lorsque les noms de source et/ou destination se rĂ©solvent en plusieurs adresses, une rĂšgle sera ajoutĂ©e pour chaque combinaison dâadresses possible.
-C , --check chaine spécification_de_rÚgle
VĂ©rifier si une rĂšgle correspondant Ă la spĂ©cification existe dans la chaine indiquĂ©e. Cette commande utilise la mĂȘme logique que -D pour trouver une entrĂ©e qui correspond, mais ne modifie pas la configuration dâiptables existante et utilise son code de retour pour indiquer un succĂšs ou un Ă©chec.
-D
,
--delete
chaine spécification_de_rÚgle
-D
,
--delete
chaine
numéro_de_rÚgle
Supprimer une ou plusieurs rĂšgles de la chaine indiquĂ©e. Il existe deux versions de cette commande : la rĂšgle peut ĂȘtre rĂ©fĂ©rencĂ©e par son numĂ©ro dans la chaine (en commençant par 1 pour la premiĂšre rĂšgle) ou par une correspondance avec une certaine rĂšgle.
-I , --insert chaine [ numéro_de_rÚgle ] spécification_de_rÚgle
InsĂ©rer une ou plusieurs rĂšgles dans la chaine indiquĂ©e avec le numĂ©ro de rĂšgle donnĂ©. Ainsi, si le numĂ©ro donnĂ© est 1, la(les) rĂšgle(s) sont insĂ©rĂ©es en tĂȘte de chaine. Il sâagit dâailleurs du comportement par dĂ©faut si aucun numĂ©ro de rĂšgle nâest donnĂ©.
-R , --replace chaine numéro_de_rÚgle spécification_de_rÚgle
Remplacer une rÚgle dans la chaine indiquée. Si les noms de source et/ou de destination se résolvent en plusieurs adresses, la commande échouera. Les rÚgles sont numérotées à partir de 1.
-L , --list [ chaine ]
Lister toutes les rĂšgles
de la chaine indiquĂ©e. Si aucune chaine nâest
indiquée, toutes les chaines sont listées.
Cette commande, comme toutes les autres commandes
dâiptables, sâapplique Ă la table
indiquée (la table par défaut est
filter)Â ; ainsi, les rĂšgles de NAT peuvent
ĂȘtre listĂ©es par
iptables -t nat -n -L
Veuillez noter que cette option est souvent utilisée
en combinaison avec lâoption
-n
afin
dâĂ©viter de longues recherches DNS inverses. On
peut aussi spĂ©cifier lâoption
-Z
(zéro), auquel cas la(les) chaine(s) seront
automatiquement listĂ©es puis mises Ă
zéro. La sortie exacte dépend des autres
options spécifiées. Les rÚgles exactes
sont supprimées à moins que vous
nâutilisiez
iptables -L -v
ou
iptables-save
(8).
-S , --list-rules [ chaine ]
Afficher toutes les rĂšgles de la chaine indiquĂ©e. Si aucune chaine nâest indiquĂ©e, toutes les chaines sont affichĂ©es comme avec iptables-save. Cette commande, comme toutes les autres commandes dâiptables, sâapplique Ă la table indiquĂ©e (la table par dĂ©faut est filter).
-F , --flush [ chaine ]
Vider la chaine indiquĂ©e (ou toutes les chaines de la table si aucune chaine nâest indiquĂ©e). Cette option produit le mĂȘme effet quâun effacement de toutes les rĂšgles une par une.
-Z , --zero [ chaine [ numéro_de_rÚgle ]]
Remettre Ă zĂ©ro les compteurs de paquets et dâoctets de toutes les chaines, ou seulement de la chaine indiquĂ©e, ou seulement de la rĂšgle indiquĂ©e dans une chaine donnĂ©e. On peut aussi ajouter lâoption -L , --list (list) pour voir les compteurs juste avant leur rĂ©initialisation (voir plus haut).
-N , --new-chain chaine
CrĂ©er une nouvelle chaine dĂ©finie par lâutilisateur avec le nom donnĂ©. Il ne doit pas exister de cible avec le mĂȘme nom.
-X , --delete-chain [ chaine ]
Supprimer la chaine indiquĂ©e. Il ne doit pas exister de rĂ©fĂ©rences Ă cette chaine. Sâil en existe, vous devez supprimer ou remplacer les rĂšgles contenant ces rĂ©fĂ©rences pour que la chaine puisse ĂȘtre supprimĂ©e. La chaine doit ĂȘtre vide, autrement dit ne contenir aucune rĂšgle. Si aucune chaine nâest indiquĂ©e, cette option va supprimer toutes les chaines vides de la table. Les chaines prĂ©dĂ©finies vides ne peuvent ĂȘtre supprimĂ©es quâĂ lâaide de iptables-nft .
-P , --policy chaine cible
DĂ©finir lâaction par dĂ©faut de la chaine prĂ©dĂ©finie (non dĂ©finie par lâutilisateur) avec la cible donnĂ©e. La cible de lâaction par dĂ©faut est soit ACCEPT , soit DROP .
-E , --rename-chain ancienne_chaine nouvelle_chaine
Renommer la chaine spĂ©cifiĂ©e avec le nouveau nom donnĂ©. Cette action est cosmĂ©tique et nâa aucun effet sur la structure de la table.
|
-h |
Afficher lâaide. Donner une description (actuellement trĂšs brĂšve) de la syntaxe de la commande. |
PARAMĂTRES
Les
paramĂštres suivants complĂštent
lâĂ©noncĂ© dâune rĂšgle
(lorsquâils sont utilisĂ©s dans une des
commandes add, delete, insert, replace et append).
-4
,
--ipv4
Ce paramĂštre nâa aucun effet avec iptables et iptables-restore. Si une rĂšgle utilisant le paramĂštre -4 est insĂ©rĂ©e Ă lâaide de (et seulement de) ip6tables-restore , elle sera ignorĂ©e silencieusement. Toutes les autres utilisations provoqueront une erreur. Ce paramĂštre permet dâinscrire des rĂšgles IPv4 et IPv6 dans un seul fichier de rĂšgles Ă utiliser avec iptables-restore et ip6tables-restore.
-6 , --ipv6
Si une rĂšgle utilisant le paramĂštre -6 est insĂ©rĂ©e Ă lâaide de (et seulement de) iptables-restore , elle sera ignorĂ©e silencieusement. Toutes les autres utilisations provoqueront une erreur. Ce paramĂštre permet dâinscrire des rĂšgles IPv4 et IPv6 dans un seul fichier de rĂšgles Ă utiliser avec iptables-restore et ip6tables-restore. Ce paramĂštre nâa aucun effet avec ip6tables et ip6tables-restore.
[ ! ] -p , --protocol protocole
Le protocole de la rĂšgle ou du paquet Ă vĂ©rifier. Le protocole spĂ©cifiĂ© peut ĂȘtre tcp , udp , udplite , icmp , icmpv6 , esp , ah , sctp , mh , ou le mot-clĂ© spĂ©cial « all », ou une valeur numĂ©rique reprĂ©sentant un des protocoles prĂ©citĂ©s ou un protocole diffĂ©rent. Un nom de protocole issu de /etc/protocols est aussi autorisĂ©. Un argument « ! » avant le protocole inverse le test. Le nombre zĂ©ro est Ă©quivalent Ă all . « all » correspond Ă tous les protocoles et câest la valeur du paramĂštre par dĂ©faut si ce dernier est omis. Notez que dans ip6tables, Ă lâexception de esp , les en-tĂȘtes dâextensions IPv6 ne sont pas autorisĂ©s. esp et ipv6-nonext peuvent ĂȘtre utilisĂ©s Ă partir de la version 2.6.11 du noyau. Le nombre zĂ©ro est Ă©quivalent Ă all , ce qui implique que vous ne pouvez pas tester le champ protocole pour la valeur 0 directement. Pour rechercher une correspondance avec un en-tĂȘte HBH, mĂȘme sâil sâagissait du dernier, vous ne pouvez pas utiliser -p 0 ; vous devrez toujours utiliser -m hbh .
[ ! ] -s , --source adresse [ / masque ][ , ... ]
SpĂ©cifier la source. Address peut ĂȘtre un nom de rĂ©seau, un nom dâhĂŽte, une adresse rĂ©seau IP (avec / mask ) ou une adresse IP complĂšte. Les noms dâhĂŽtes ne seront rĂ©solus quâune seule fois avant que la rĂšgle ne soit soumise au noyau. Notez que spĂ©cifier un nom devant ĂȘtre rĂ©solu Ă distance, par exemple par DNS, est vraiment une mauvaise idĂ©e. mask peut ĂȘtre soit un masque rĂ©seau ipv4 (pour iptables), soit un nombre indiquant le nombre de bits Ă 1 en partant de la gauche du masque rĂ©seau. Ainsi, un masque iptables de 24 est Ă©quivalent Ă 255.255.255.0 . Un argument « ! » avant la spĂ©cification de lâadresse inverse les critĂšres de sĂ©lection de cette adresse. --src est un alias pour ce paramĂštre. On peut spĂ©cifier plusieurs adresses, mais cela entraĂźnera la crĂ©ation de plusieurs rĂšgles (lors dâun ajout avec -A) ou la suppression de plusieurs rĂšgles (avec -D).
[ ! ] -d , --destination adresse [ / masque ][ , ... ]
Spécifier la destination. Voir la description du paramÚtre -s (source) pour une description détaillée de la syntaxe. --dst est un alias pour ce paramÚtre.
-m , --match correspondance
SpĂ©cifier une correspondance Ă utiliser, câest-Ă -dire un module dâextension qui vĂ©rifie une propriĂ©tĂ© spĂ©cifique. Lâensemble de correspondances constitue la condition Ă laquelle une cible sera invoquĂ©e. Les correspondances sont Ă©valuĂ©es de la premiĂšre Ă la derniĂšre selon leurs spĂ©cifications dans la ligne de commande et travaillent en mode court-circuit ; câest-Ă -dire que si lâune dâentre elles a pour rĂ©sultat « faux », lâĂ©valuation sâarrĂȘte.
-j , --jump cible
SpĂ©cifier la cible de la rĂšgle ; câest-Ă -dire quoi faire si le paquet correspond aux critĂšres de sĂ©lection. La cible peut ĂȘtre une chaine dĂ©finie par lâutilisateur (diffĂ©rente de celle dans laquelle se trouve la rĂšgle), une des cibles prĂ©dĂ©finies spĂ©ciales qui dĂ©cident du sort du paquet immĂ©diatement ou une extension (voir plus loin EXTENSIONS DE CORRESPONDANCE ET DE CIBLE ). Si ce paramĂštre est omis pour une rĂšgle (et si -g nâest pas utilisĂ©), la recherche de correspondance de la rĂšgle au paquet nâaura aucun effet sur le sort de ce dernier, mais les compteurs de la rĂšgle seront incrĂ©mentĂ©s.
-g , --goto chaine
SpĂ©cifier que le traitement doit continuer dans la chaine donnĂ©e. Contrairement Ă lâutilisation de lâoption --jump, RETURN ne poursuivra pas le traitement dans cette chaine, mais plutĂŽt dans la chaine qui nous a appelĂ© Ă lâaide de --jump.
[ ! ] -i , --in-interface nom
Le nom de lâinterface sur laquelle le paquet a Ă©tĂ© reçu (seulement pour les paquets qui entrent dans les chaines INPUT , FORWARD ou PREROUTING ). Si lâargument « ! » prĂ©cĂšde le nom de lâinterface, le critĂšre de sĂ©lection sera inversĂ©. Si le nom de lâinterface se termine par un « + », toute interface qui commence par ce nom correspondra. Si ce paramĂštre est omis, toute interface correspondra.
[ ! ] -o , --out-interface nom
Le nom de lâinterface par laquelle le paquet est sur le point dâĂȘtre envoyĂ© (seulement pour les paquets entrant dans les chaines FORWARD , OUTPUT ou POSTROUTING ). Si lâargument « ! » prĂ©cĂšde le nom de lâinterface, le critĂšre de sĂ©lection sera inversĂ©. Si le nom de lâinterface se termine par un « + », toute interface qui commence par ce nom correspondra. Si ce paramĂštre est omis, toute interface correspondra.
[ ! ] -f , --fragment
SpĂ©cifier ce paramĂštre signifie que la rĂšgle ne fait rĂ©fĂ©rence quâau second fragment IPv4 et les suivants des paquets fragmentĂ©s. Comme il nây a aucun moyen de dĂ©terminer les ports source ou destination dâun tel paquet (ou le type ICMP), ce paquet ne correspondra Ă aucune rĂšgle qui spĂ©cifie des ports. Si lâargument « ! » prĂ©cĂšde le symbole « -f », la rĂšgle ne recherchera de correspondance quâavec les fragments dâen-tĂȘte ou les paquets non fragmentĂ©s. Ce paramĂštre est spĂ©cifique Ă IPv4 et nâest pas disponible dans ip6tables.
-c , --set-counters paquets octets
Ce paramĂštre permet Ă lâadministrateur dâinitialiser les compteurs de paquets et dâoctets dâune rĂšgle (au cours des opĂ©rations INSERT , APPEND et REPLACE ).
AUTRES OPTIONS
Les options
supplĂ©mentaires suivantes peuvent ĂȘtre
spécifiées :
-v
,
--verbose
Affichage dĂ©taillĂ©. Avec cette option, la commande list affiche le nom de lâinterface, les options des rĂšgles (sâil y en a) et les masques TOS (Type Of Service). Les compteurs de paquets et dâoctets sont aussi affichĂ©s avec le suffixe « K », « M » ou « G » pour les multiplicateurs 1 000, 1 000 000 et 1 000 000 000, respectivement (voir cependant le drapeau -x pour modifier cela). Dans le cas dâun ajout, dâune insertion, dâune suppression ou dâun remplacement, cette option provoque lâaffichage dâinformations dĂ©taillĂ©es Ă propos de la ou les rĂšgle(s). -v peut aussi ĂȘtre spĂ©cifiĂ©e plusieurs fois pour Ă©ventuellement afficher des instructions de dĂ©bogage plus dĂ©taillĂ©es : si elle est spĂ©cifiĂ©e deux fois, iptables-legacy affichera les informations et les entrĂ©es de la table dans le style libiptc, et iptables-nft affichera les rĂšgles dans le style netlink (code VM) ; si elle est spĂ©cifiĂ©e trois fois, iptables-nft affichera aussi tout message netlink envoyĂ© au noyau.
-V , --version
Afficher la version du programme et lâAPI du noyau utilisĂ©e.
-w , --wait [ secondes ]
Attendre le verrouillage de xtables. Pour prĂ©venir lâexĂ©cution simultanĂ©e de plusieurs instances du programme, ce dernier va tenter dâobtenir un verrouillage exclusif Ă son lancement. Par dĂ©faut, le programme sâarrĂȘtera sâil ne peut pas obtenir le verrouillage. Avec cette option, le programme attendra (indĂ©finiment ou pendant une durĂ©e dĂ©finie par lâargument facultatif secondes ) jusquâĂ ce quâil obtienne le verrouillage exclusif.
-n , --numeric
Afficher les informations sous forme numĂ©rique. Les adresses IP et les numĂ©ros de port seront affichĂ©s au format numĂ©rique. Par dĂ©faut, le programme tente de les afficher sous la forme de nom dâhĂŽte, de nom de rĂ©seau ou de service (lorsque câest possible).
-x , --exact
Afficher les nombres sous forme Ă©tendue. Afficher la valeur exacte des compteurs de paquets et dâoctets au lieu de leur valeur arrondie au Ko (multiple de 1000), au Mo (multiple de 1000K) ou au Go (multiple de 1000M). Cette option nâest pertinente que pour la commande -L .
--line-numbers
Lors de lâaffichage des rĂšgles, ajouter, au dĂ©but de chacune dâentre elles, les numĂ©ros de ligne qui correspondent Ă la position de la rĂšgle dans la chaine.
--modprobe= commande
Lors de lâajout ou de lâinsertion de rĂšgles dans une chaine, utiliser commande pour charger tout module nĂ©cessaire (cibles, extensions de correspondance, etc.).
FICHIER VERROU
iptables utilise le fichier /run/xtables.lock pour obtenir un verrouillage exclusif Ă son lancement.
On peut utiliser la variable dâenvironnement XTABLES_LOCKFILE pour modifier le comportement par dĂ©faut.
EXTENSIONS DE CORRESPONDANCE ET DE CIBLE
iptables peut utiliser des versions étendues des recherches de correspondance de paquets et des modules de cibles. Une liste de ces extensions est disponible dans la page de manuel iptables-extensions (8).
DIAGNOSTICS
DiffĂ©rents messages dâerreur peuvent sâafficher sur la sortie dâerreur standard. Le code de retour de 0 indique un fonctionnement correct. Les erreurs qui semblent ĂȘtre causĂ©es par des paramĂštres de la ligne de commande non valables ou non pertinents gĂ©nĂšrent un code de retour de 2 . Les erreurs qui indiquent une incompatibilitĂ© entre le noyau et lâespace utilisateur gĂ©nĂšrent un code de retour de 3 . Les erreurs qui indiquent un problĂšme de ressource, comme un verrou occupĂ©, un Ă©chec dâallocation de mĂ©moire ou des messages dâerreur du noyau gĂ©nĂšrent un code de retour de 4 . Enfin, les autres erreurs gĂ©nĂšrent un code de retour de 1 .
BOGUES
Des bogues ? Quâest-ce que câest ? ;-) Ok, vous devriez jeter un coup dâĆil Ă https://bugzilla.netfilter.org/. iptables sâarrĂȘtera avec un code dâerreur de 111 sâil voit quâil a Ă©tĂ© appelĂ© en tant que programme setuid-to-root. iptables ne peut pas ĂȘtre utilisĂ© en toute sĂ©curitĂ© de cette maniĂšre, car il fait confiance aux bibliothĂšques partagĂ©es (correspondances, cibles) chargĂ©es Ă lâexĂ©cution ; le chemin de recherche peut ĂȘtre dĂ©fini en utilisant des variables dâenvironnement.
COMPATIBILITĂ AVEC IPCHAINS
iptables est trĂšs similaire Ă ipchains de Rusty Russell. La principale diffĂ©rence rĂ©side dans le fait que les chaines INPUT et OUTPUT ne sont parcourues que par les paquets entrant dans lâhĂŽte local et gĂ©nĂ©rĂ©s par lâhĂŽte local, respectivement. Ainsi, tout paquet ne parcourt quâune des trois chaines (sauf pour le trafic loopback qui implique les deux chaines INPUT et OUTPUT) ; auparavant, un paquet transfĂ©rĂ© passait par les trois chaines.
Une autre diffĂ©rence importante rĂ©side dans le fait que -i fait rĂ©fĂ©rence Ă lâinterface dâentrĂ©e, que -o fait rĂ©fĂ©rence Ă lâinterface de sortie et que les deux sont valables pour les paquets qui entrent dans la chaine FORWARD .
Les
différentes formes de NAT ont été
séparées ;
iptables
est un pur
filtre de paquets lorsquâil utilise la table par
défaut « filter » avec des
modules dâextension optionnels. Cela devrait
Ă©viter lâessentiel de la confusion sur la
combinaison du camouflage dâIP (masquerading) et du
filtrage de paquets vue auparavant. Les options suivantes
sont donc maintenant gérées
différemment :
-j MASQ
-M -S
-M -L
Il y a plusieurs autres changements dans iptables.
VOIR AUSSI
iptables-apply (8), iptables-save (8), iptables-restore (8), iptables-extensions (8),
Le
packet-filtering-HOWTO dĂ©taille lâutilisation
dâiptables pour le filtrage de paquets, le NAT-HOWTO
détaille le NAT, le netfilter-extensions-HOWTO
détaille les extensions qui ne font pas partie de la
distribution standard et le netfilter-hacking-HOWTO
détaille le fonctionnement interne de netfilter.
Voir
https://www.netfilter.org/
.
AUTEURS
Rusty Russell est Ă lâorigine de lâĂ©criture dâiptables en consultation prĂ©alable avec Michael Neuling.
Marc Boucher a poussĂ© Rusty Ă abandonner ipnatctl en mettant en avant un cadriciel de sĂ©lection de paquets gĂ©nĂ©rique dans iptables ; puis il a Ă©crit la table mangle, la correspondance basĂ©e sur le propriĂ©taire, le dispositif de marquage et sâest investi çà et lĂ en dĂ©veloppant des trucs sympas dans tous les domaines.
James Morris a écrit la cible TOS et la correspondance basée sur tos.
Jozsef Kadlecsik a écrit la cible REJECT.
Harald Welte a écrit les cibles ULOG et NFQUEUE, la nouvelle bibliothÚque libiptc, ainsi que les correspondances et cibles TTL, DSCP et ECN.
LâĂquipe Centrale Netfilter se compose de : Jozsef Kadlecsik, Pablo Neira Ayuso, Eric Leblond, Florian Westphal et Arturo Borrero Gonzalez. Les membres Ă©mĂ©rites de lâĂquipe Centrale sont : Marc Boucher, Martin Josefsson, Yasuyuki Kozakai, James Morris, Harald Welte et Rusty Russell.
Page de manuel initialement écrite par Herve Eychenne <rv@wallfire.org>.
VERSION
Cette page de manuel sâapplique Ă iptables/ip6tables 1.8.11.
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Donnier, Guillaume Audirac et Lucien Gentis <lucien.gentis@waika9.com>
Cette traduction est une documentation libre ; veuillez vous reporter Ă la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il nây a aucune RESPONSABILITĂ LĂGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .