Contenu | Rechercher | Menus

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Both sides previous revision Révision précédente
Prochaine révision
Révision précédente
ufw [Le 09/05/2013, 14:40]
85.2.132.100 [Les commandes de base]
ufw [Le 20/10/2014, 17:56] (Version actuelle)
axel55 [Précise -> Precise
Ligne 1: Ligne 1:
-{{tag>Lucid natty oneiric precise quantal ​console pare-feu réseau sécurité}}+{{tag>Precise Trusty ​console pare-feu réseau sécurité}}
  
 ---- ----
Ligne 9: Ligne 9:
 UFW est un nouvel outil de configuration simplifié en [[:​console|ligne de commande]] de [[wpfr>​Netfilter]],​ qui donne une alternative à l'​outil [[:​iptables]]. UFW devrait à terme permettre une configuration automatique du pare-feu lors de l'​installation de programmes en ayant besoin. ​ UFW est un nouvel outil de configuration simplifié en [[:​console|ligne de commande]] de [[wpfr>​Netfilter]],​ qui donne une alternative à l'​outil [[:​iptables]]. UFW devrait à terme permettre une configuration automatique du pare-feu lors de l'​installation de programmes en ayant besoin. ​
  
-<note tip>Il existe une interface graphique pour UFW : [[Gufw]].</​note> ​ +<note tip>Si vous désirez activer et configurer votre pare-feu sur un ordinateur profitant d'un environnement de bureau, sachez qu'​il ​existe une interface graphique pour UFW : [[:Gufw]]. 
-<note tip>Il exite aussi une interface ​graphique kde pour UFW [[http://kde-apps.org/content/show.php?​content=137789|ici]].</​note>​+ 
 +Il existe également ​une interface ​spécialement adapté ​pour KDE (Kubuntu) depuis Trusty (14.04) : [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] [[apt>​ufw-kde|ufw-kde]]. Pour les versions antérieurs,​ voir éventuellement [[https://projects.kde.org/projects/playground/​sysadmin/​ufw-kde|ici]].</​note>​
  
  
Ligne 19: Ligne 20:
  
 ===== Utilisation ===== ===== Utilisation =====
-<​note>​ + 
-L'​ordre de déclaration des règles est très important, le système utilisant une politique « premier arrivé, premier servi ». Prenez donc soin d'​ajouter vos règles spécifiques avant les règles générales lorsqu'​elles concernent des éléments communs.</​note>​+<​note>​L'​ordre de déclaration des règles est très important, le système utilisant une politique « premier arrivé, premier servi ». Prenez donc soin d'​ajouter vos règles spécifiques avant les règles générales lorsqu'​elles concernent des éléments communs.</​note>​ 
 + 
 +==== Activer / Désactiver UFW ====
  
 L'​outil UFW n'est pas activé par défaut, il vous faut donc avoir les [[:​sudo|droits administrateur]] en [[:​console|ligne de commande]]. ​ L'​outil UFW n'est pas activé par défaut, il vous faut donc avoir les [[:​sudo|droits administrateur]] en [[:​console|ligne de commande]]. ​
 +
 +Vérifier le statut actuel :
 +
 +  sudo ufw status
 +
 +État : actif ou inactif
  
 Activer UFW : Activer UFW :
Ligne 32: Ligne 41:
   sudo ufw disable   sudo ufw disable
  
 +==== Afficher l'​état actuel des règles ====
  
-<note tip>La version ​de Uncomplicated Firewall disponible par défaut avec [[:Lucid]] permet de paramétrer aussi bien les règles par défaut entrantes que sortantes. </​note>​+Une unique commande qui vous permettra ​de jeter un œil sur la totalité des instructions que vous avez indiqué à UFW 
  
-Autoriser le trafic entrant suivant les règles par défaut : +  sudo ufw status verbose
  
-  sudo ufw default allow+Cette commande devrait vous afficher quelque chose comme ça : 
  
-Refuser le trafic entrant suivant les règles par défaut ​+<​code>​ 
 +État actif 
 +Journalisation : on (low) 
 +Default: deny (incoming), allow (outgoing), disabled (routed) 
 +Nouveaux profils : skip
  
-  sudo ufw default deny+Vers                       ​Action ​     De 
 +----                       ​------ ​     -- 
 +80                         DENY IN     ​Anywhere 
 +443                        ALLOW IN    Anywhere 
 +22                         ALLOW IN    Anywhere 
 +192.168.0.2 995            ALLOW IN    Anywhere 
 +8082/​tcp ​                  DENY IN     ​10.0.0.0/​8 
 +25/​tcp ​                    ALLOW IN    192.168.0.0/​24 
 +80 (v6)                    DENY IN     ​Anywhere (v6) 
 +443 (v6)                   ALLOW IN    Anywhere (v6) 
 +22 (v6)                    ALLOW IN    Anywhere (v6)
  
 +23/​tcp ​                    DENY OUT    Anywhere
 +23/tcp (v6)                DENY OUT    Anywhere (v6)
 +</​code>​
  
-  * Si vous êtes sous [[:Lucid| Lucid Lynx 10.04]] ​(ou supérieur)+L'​argument ''​verbose''​ est optionnel, cependant il est vivement recommandé car il permet d'​afficher la direction du trafic dans les règles ​(IN : entrant, OUT : sortant)
  
 +=== Description du contenu ===
  
-Autoriser le trafic entrant suivant les règles par défaut ​+  Journalisation ​on (low)
  
-  sudo ufw default allow incoming+Indique que la journalisation est activé, vous pouvez retrouver toutes les interactions du pare-feu dans le fichier **/var/log/ufw.log** . Vous pouvez activer ou désactiver cette journalisation,​ voir [[#​Activer/​désactiver la journalisation|ici]].
  
-Refuser le trafic entrant suivant les règles par défaut ​+  Defaultdeny (incoming), allow (outgoing), disabled (routed)
  
-  sudo ufw default deny incoming+Concerne les règles par défaut de UFW, voir la rubrique [[#​gestion_des_regles_par_defaut|gestion des règles par défaut]] pour son paramétrage.
  
-Autoriser le trafic sortant suivant les règles par défaut : +<​code>​Vers ​                      ​Action ​     De 
 +----                       ​------ ​     -- 
 +80                         DENY IN     ​Anywhere 
 +443                        ALLOW IN    Anywhere 
 +[...] 
 +23/tcp (v6)                DENY OUT    Anywhere (v6)</​code>​
  
-  sudo ufw default allow outgoing+Liste toutes les règles que vous avez indiqué au pare-feu. (V6) correspond aux règles adaptées pour l'​IPv6,​ celle qui n'ont pas cette précision sont adaptées pour l'​IPv5. Pour l’édition de ces règles, voir la rubrique concernant [[#​Ajouter/​supprimer des règles|l’édition des règles]].
  
-Refuser le trafic sortant suivant les règles par défaut : +=== Numéro de règle ===
  
-  ​sudo ufw default deny outgoing+Vous pouvez afficher les règles numérotées. 
 +  ​sudo ufw status numbered
  
 +==== Gestion des règles par défaut ====
  
-<​note>​Si vous obtenez **"​ERROR:​ / is world writable!"​** ​en voulant activer Uncomplicated Firewall, ces commandes devraient régler le problème : +Lorsque UFW est activé, par défaut le trafic entrant est refusé et le trafic sortant est autorisé. C'​est ​en général le réglage à privilégiercependant vous pouvez tout de même modifier ​ces règles.
  
-  sudo chown root:root / +Autoriser le trafic entrant suivant les règles par défaut ​:
-  sudo chmod 755 / +
-</​note>​+
  
-==== Afficher l'​état actuel des règles ====+  sudo ufw default allow
  
-  sudo ufw status verbose+Refuser le trafic entrant suivant les règles par défaut :
  
-Cette commande devrait vous afficher quelque chose comme ça : +  sudo ufw default deny
  
-<​code>​ +Autoriser le trafic sortant suivant les règles par défaut :
-Firewall loaded+
  
-To                      Action ​ From +  ​sudo ufw default allow outgoing
---                      ------ ​ ---- +
-apache2 ​                ​DENY ​   Anywhere ​       Apache Webserver ​     +
-openssh-server ​         ALLOW   ​Anywhere ​       SSH Logins ​           +
-192.168.0.2 pop3s       ​ALLOW ​  ​Anywhere ​                             +
-named                   ​DENY ​   Anywhere ​       WARNING: New service  +
-tcp:​8082 ​               DENY    10.0.0.0/​8 ​                           +
-tcp:​25 ​                 ALLOW   ​192.168.0.0/​24 ​                       +
-ntp                     ​ALLOW* ​ Anywhere ​                             +
-imaps                   ​ALLOW** Anywhere ​                             +
-tcp:​23 ​                 ALLOW** Anywhere ​                             +
-jabberd2 ​               ALLOW** Anywhere ​                            +
  
 +Refuser le trafic sortant suivant les règles par défaut :
  
-* rule for removed package '​ntpd'​ +  sudo ufw default deny outgoing
-** services not running +
-</​code>​ +
-L'​argument ''​verbose''​ est optionnel. Cependant, à partir d'​Ubuntu 10.04 il est vivement recommandé car il va permettre d'​afficher la direction du trafic dans les règles.+
  
-=== Numéro ​de règle ​=== +==== Les commandes ​de base ====
-Vous pouvez afficher les règles numérotées. +
-  sudo ufw status numbered+
  
-==== Les commandes de base ====+=== Activer/​désactiver la journalisation ​===
  
 Activer la journalisation :  Activer la journalisation : 
Ligne 112: Ligne 129:
   sudo ufw logging off   sudo ufw logging off
  
-Autoriser : +=== Ajouter/​supprimer des règles === 
 + 
 +Autoriser ​une connexion entrante ​:
  
   sudo ufw allow [règle]   sudo ufw allow [règle]
  
-Refuser : +Refuser ​une connexion entrante ​:
  
   sudo ufw deny [règle]   sudo ufw deny [règle]
 +  ​
 +Refuser une connexion entrante, uniquement en TCP :
  
-Supprimer : +  sudo ufw deny [port]/​tcp 
 + 
 +Refuser une connexion sortante : 
 + 
 +  sudo ufw deny out [règle] 
 + 
 +Supprimer ​une règle ​
  
   sudo ufw delete allow [règle]   sudo ufw delete allow [règle]
  
 Supprimer simplement une règle d'​après son [[#​numéro_de_regle|numéro]] : Supprimer simplement une règle d'​après son [[#​numéro_de_regle|numéro]] :
-<​code>​sudo ufw delete NUM</​code>​ 
  
 +  sudo ufw delete [numéro]
 +
 +  *[port] est à remplacer par le numéro du port désiré.
 +  *[règle] est à remplacer par le numéro du port ou le nom du [[#​Utilisation des services|service]] désiré.
 +  *[numéro] est à remplacer par le numéro de la règle désiré.
  
-==== La syntaxe des règles ​====+==== Règles simples ​====
  
-=== Règles simples ​===+=== La syntaxe des règles ​===
  
 Voici quelques exemples pour comprendre la syntaxe des règles de configuration. ​ Voici quelques exemples pour comprendre la syntaxe des règles de configuration. ​
Ligne 139: Ligne 170:
 === Utilisation des services === === Utilisation des services ===
  
-UFW regarde dans sa liste de services connus pour appliquer les règles standards associées à ces services (apache2, smtp, imaps, etc..).\\+UFW regarde dans sa liste de services connus pour appliquer les règles standards associées à ces services (apache2, smtp, imaps, etc..). ​Ces règles sont automatiquement convertis en ports. 
 Pour avoir la liste des services :  Pour avoir la liste des services : 
 <​code>​less /​etc/​services</​code>​ <​code>​less /​etc/​services</​code>​
Ligne 150: Ligne 182:
 3° exemple : Autoriser le protocole pop3 sécurisé 3° exemple : Autoriser le protocole pop3 sécurisé
 (réception du courrier de Gmail et autres messageries utilisant ce protocole sécurisé) : (réception du courrier de Gmail et autres messageries utilisant ce protocole sécurisé) :
-<​code>​sudo ufw allow out pop3s/tcp</​code>​ +<​code>​sudo ufw allow out pop3s</​code>​
  
 +==== Utilisation avancée ====
  
 === Règles complexes === === Règles complexes ===
Ligne 161: Ligne 193:
   * Refuser à (//to//) l'​adresse 192.168.0.1 de recevoir sur le port (//port//) 25 les données provenant (//from//) du [[wpfr>​Sous-réseau#​Réseaux_privés|réseau de classe A]] et utilisant le protocole (//proto//) TCP : <​code>​sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 25</​code>​   * Refuser à (//to//) l'​adresse 192.168.0.1 de recevoir sur le port (//port//) 25 les données provenant (//from//) du [[wpfr>​Sous-réseau#​Réseaux_privés|réseau de classe A]] et utilisant le protocole (//proto//) TCP : <​code>​sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 25</​code>​
   * Refuser les données utilisant le protocole (//proto//) UDP provenant (//from//) de 1.2.3.4 ​ sur le port (//port//) 514 : <​code>​sudo ufw deny proto udp from 1.2.3.4 to any port 514</​code>​   * Refuser les données utilisant le protocole (//proto//) UDP provenant (//from//) de 1.2.3.4 ​ sur le port (//port//) 514 : <​code>​sudo ufw deny proto udp from 1.2.3.4 to any port 514</​code>​
 +  * Refuser à l'​adresse 192.168.0.5 de recevoir toutes données provenant du serveur web de la machine hébergeant le pare-feu : <​code>​sudo ufw deny out from 192.168.0.5 to any port 80</​code>​
 +
 +=== Inséré une règle ===
  
-==== insérer une règle ==== 
 Vous pouvez insérer une règle à une position précise en utilisant le [[#​numéro_de_regle|numéro]] Vous pouvez insérer une règle à une position précise en utilisant le [[#​numéro_de_regle|numéro]]
-  ​sudo ufw insert NUM RULE+<​code>​sudo ufw insert NUM RULE</​code>​
   * Insérer en numéro 2 une règle refusant le traffic entrant utilisant le protocole (//proto//) UDP (//to//) en direction de (//any//) toute les adresses en écoutes sur votre machine sur le port (//port//) 514 en provenance (//from//) de 1.2.3.4   * Insérer en numéro 2 une règle refusant le traffic entrant utilisant le protocole (//proto//) UDP (//to//) en direction de (//any//) toute les adresses en écoutes sur votre machine sur le port (//port//) 514 en provenance (//from//) de 1.2.3.4
-  ​sudo ufw insert 2 deny proto udp to any port 514 from 1.2.3.4 +<​code>​sudo ufw insert 2 deny proto udp to any port 514 from 1.2.3.4</​code
- +  
- +
- +
- +
- +
- +
-<note warning>​Dans le cas où vous devez bloquer une IP spécifique (ex: sudo ufw deny from <​ip_a_bloquer>​) sur un service que vous avez ouvert, +
- +
-il vous faudra [[:​tutoriel:​comment_modifier_un_fichier|éditer le fichier]] **/etc/​ufw/​before.rules** et y ajouter une section "Block IP" après la section "Drop INVALID packets"​ +
- +
-<file># drop INVALID packets (logs these in loglevel medium and higher) +
--A ufw-before-input -m state --state INVALID -j ufw-logging-deny +
--A ufw-before-input -m state --state INVALID -j DROP +
- +
-# Block IP +
--A ufw-before-input -s <​ip_a_bloquer>​ -j DROP +
-</​file>​ +
-</​note>​+
 ===== Configuration ===== ===== Configuration =====
  
 ==== IPv6 ==== ==== IPv6 ====
  
-UFW prend en charge les adresses IPv6 (Certains utilisateurs apprécieront)mais nécessite une configuration complémentaire pour activer ​ce support. ​+UFW prend en charge les adresses IPv6
 +Le support d'IPv6 est désormais activé par défautsi ce n'est pas le cas,  
 +il suffit de [[:​tutoriel:​comment_editer_un_fichier|modifier le fichier]] **/​etc/​default/​ufw** et d'y mettre ceci : 
  
-Pour cela il suffit de [[:​tutoriel:​comment_editer_un_fichier|modifier le fichier]] **/​etc/​default/​ufw** et d'y mettre ceci : +<file bash /​etc/​default/​ufw>​IPV6=yes</​file>​
  
-<​file>​IPV6=yes</​file>​+Il ne reste plus qu'à relancer UFW : 
  
-Il ne reste plus qu'à désactiver et activer de nouveau UFW : +  sudo ufw reload
  
-<​code>​ 
-sudo ufw disable 
-sudo ufw enable 
-</​code>​ 
 <​note>​ <​note>​
-Il vous faudra sûrement alors supprimer puis recréer vos règles.+Si le support d'IPv6 n'​était pas activé, il vous faudra sûrement alors supprimer puis recréer vos règles.
 </​note>​ </​note>​
 +
 ==== Ne pas autoriser le ping ==== ==== Ne pas autoriser le ping ====
  
Ligne 209: Ligne 225:
 Il faut [[:​tutoriel:​comment_editer_un_fichier|éditer]] ''/​etc/​ufw/​before.rules''​ et commenter en ajoutant un "​**#​**"​ à la ligne suivante :  Il faut [[:​tutoriel:​comment_editer_un_fichier|éditer]] ''/​etc/​ufw/​before.rules''​ et commenter en ajoutant un "​**#​**"​ à la ligne suivante : 
 <​code>#​ -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT</​code>​ <​code>#​ -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT</​code>​
-  
-==== Autoriser le ping ==== 
  
-Sous [[:​Lucid|Lucid Lynx]], si vous avez configuré UFW pour refuser par défaut les connexions sortantes, vous constaterez que vous ne pouvez plus effectuer de ping.  +==== Bloquer HADOPI ====
-Pour y remédier il vous suffit d'​[[:​tutoriel:​comment_editer_un_fichier|éditer]] **/​etc/​ufw/​before.rules** et de dupliquer : +
  
-  # ok icmp codes input +Bloquer toutes les IP de la HADOPI :
-  -A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT +
-  -A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT +
-  -A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT +
-  -A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT +
-  -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT+
  
-Puis de remplacer "​**input**"​ par "​**output**"​+    sudo ufw deny from 90.80.155.240/​28 
-Bien entendu, si vous désirez désactiver certains types de ping, il vous suffit de rajouter un "​**#​**"​ devant la ligne du type indésirable+    sudo ufw deny from 80.12.48.0/​24 
 +    sudo ufw deny from 5.23.42.12/​30 
 +    sudo ufw deny from 195.5.217.72/​29 
 +    sudo ufw deny from 81.80.36.231 
 +    sudo ufw deny from 81.80.36.232 
 +    sudo ufw deny from 81.80.36.233 
 +    sudo ufw deny from 81.80.36.234 
 +    sudo ufw deny from 194.79.189.240/29
  
-<note tip>​Script pour configurer UFW pour un fonctionnement optimal de MSN.</​note>​+===== Problèmes connus =====
  
-==== Ajouter les règles pour le protocole MSN ====+Si vous obtenez **"​ERROR:​ / is world writable!"​** en voulant activer Uncomplicated Firewall, ces commandes devraient régler ​le problème : 
  
-<​code>​ +  ​sudo chown root:​root ​
-#!/bin/sh +  sudo chmod 755 /
- +
-echo "Le programme va configurer les règles pour MSN Audio/​Vidéo/​Transfert de fichier."​ +
- +
-sudo ufw allow 6901 +
- +
-sudo ufw allow 6801/udp +
- +
-for i in `seq 2001 2120`; do +
-  sudo ufw allow $i/udp +
-done +
- +
-for i in `seq 6891 6900`; do +
-  sudo ufw allow $i/tcp +
-done +
- +
-echo "Tous les ports ont bien été configurés pour MSN."​ +
-echo "​Vérifiez la configuration du routeur."​ +
-echo "Les réglages sont issus du site support http://​support.microsoft.com/​kb/​324214/​en-us"​ +
-</code>+
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
   * (en) [[https://​wiki.ubuntu.com/​UncomplicatedFirewall|UncomplicatedFirewall]] sur le wiki ubuntu anglophone   * (en) [[https://​wiki.ubuntu.com/​UncomplicatedFirewall|UncomplicatedFirewall]] sur le wiki ubuntu anglophone
-  * ( fr ) [[http://​leshirondellesdunet.com/​pages/​parefeu.php]] un tutoriel pour apprendre à configurer ufw +  * ( fr ) [[http://​leshirondellesdunet.com/​pages/​parefeu.php|un tutoriel pour apprendre à configurer ufw]] 
-  * (en) [[http://​kde-apps.org/​content/​show.php?​content=137789]] une interface graphique pour configurer ufw sous kde dans le panneaux de configuration+  * (en) [[http://​kde-apps.org/​content/​show.php?​content=137789|une interface graphique pour configurer ufw sous kde dans le panneaux de configuration]]
 ---- ----
  
-//​Contributeurs : [[:​utilisateurs:​yoboy|YoBoY]].//​+//​Contributeurs : [[:​utilisateurs:​yoboy|YoBoY]], [[:​utilisateurs:​axel55|Axelos]].//


Le contenu de ce wiki est sous licence : CC BY-SA v3.0