Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
ufw [Le 03/05/2016, 17:30] 85.218.40.80 [Afficher l'état actuel des règles] m |
ufw [Le 01/01/2023, 03:12] (Version actuelle) Benjamin Loison Uniformisation de la mise en page |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Precise Trusty console pare-feu réseau sécurité}} | + | {{tag>Xenial console pare-feu réseau sécurité}} |
---- | ---- | ||
Ligne 5: | Ligne 5: | ||
====== Uncomplicated Firewall ====== | ====== Uncomplicated Firewall ====== | ||
- | //Le pare-feu tout simplement// | + | //Le pare-feu tout simplement.// |
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. | ||
Ligne 11: | Ligne 11: | ||
<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>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]]. | ||
- | 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érieures, voir éventuellement [[https://projects.kde.org/projects/playground/sysadmin/ufw-kde|ici]].</note> | + | Il existe également une interface spécialement adaptée pour KDE (Kubuntu) : [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>ufw-kde]]**.</note> |
===== Installation ===== | ===== Installation ===== | ||
- | Uncomplicated Firewall est pré-installé sous Ubuntu, mais si besoin vous devez simplement [[:tutoriel:comment_installer_un_paquet|installer le paquet]] [[apt>ufw|ufw]].\\ | + | **Uncomplicated Firewall** est pré-installé sous Ubuntu, mais en cas de besoin, vous devrez simplement [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>ufw]]**.\\ |
Ligne 33: | Ligne 33: | ||
État : actif ou inactif | État : actif ou inactif | ||
- | Activer UFW : | + | Activer UFW : (c'est à dire appliquer les règles définies) |
sudo ufw enable | sudo ufw enable | ||
- | Désactiver UFW : | + | Désactiver UFW : (c'est à dire ne plus appliquer les règles définies) |
sudo ufw disable | sudo ufw disable | ||
Ligne 43: | Ligne 43: | ||
==== Afficher l'état actuel des règles ==== | ==== Afficher l'état actuel des règles ==== | ||
- | Une unique commande qui vous permettra de jeter un œil sur la totalité des instructions que vous avez indiquées à UFW : | + | Une unique commande qui vous permettra de jeter un œil sur la totalité des instructions que vous avez indiquées à UFW : |
sudo ufw status verbose | sudo ufw status verbose | ||
- | Cette commande devrait vous afficher quelque chose comme ça : | + | Cette commande devrait vous afficher quelque chose comme ça : |
<code> | <code> | ||
Ligne 90: | Ligne 90: | ||
23/tcp (v6) DENY OUT Anywhere (v6)</code> | 23/tcp (v6) DENY OUT Anywhere (v6)</code> | ||
- | Liste toutes les règles que vous avez indiquées 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'IPv4. Pour l’édition de ces règles, voir la rubrique concernant [[#Ajouter/supprimer des règles|l’édition des règles]]. | + | Liste toutes les règles que vous avez indiquées au pare-feu. (V6) correspond aux règles adaptées pour l'IPv6, celles qui n'ont pas cette précision sont adaptées pour l'IPv4. Pour l’édition de ces règles, voir la rubrique concernant [[#Ajouter/supprimer des règles|l’édition des règles]]. |
=== Numéro de règle === | === Numéro de règle === | ||
Ligne 121: | Ligne 121: | ||
=== Activer/désactiver la journalisation === | === Activer/désactiver la journalisation === | ||
- | Activer la journalisation : | + | Activer la journalisation : |
sudo ufw logging on | sudo ufw logging on | ||
- | Désactiver la journalisation : | + | Désactiver la journalisation : |
sudo ufw logging off | sudo ufw logging off | ||
Ligne 139: | Ligne 139: | ||
sudo ufw deny [règle] | sudo ufw deny [règle] | ||
| | ||
- | Refuser une ip entrante : | + | Refuser une IP entrante : |
- | <note warning>Si vous voulez bloquer une ip sur tous vos services, il faut le faire "avant" les autorisations existantes. D'où le "insert 1" qui met ce "deny" avant tous les "allow". Dans le cas d'une série d'ip à bloquer vous pouvez utiliser à chaque entrée le "insert 1", pas besoin de spécifier dans le cas présent une autre place</note> | + | <note warning>Si vous voulez bloquer une IP sur tous vos services, il faut le faire "avant" les autorisations existantes. D'où le "insert 1" qui met ce "deny" avant tous les "allow". Dans le cas d'une série d'IP à bloquer vous pouvez utiliser à chaque entrée le "insert 1", pas besoin de spécifier dans le cas présent une autre place</note> |
sudo ufw insert 1 deny from [ip] | sudo ufw insert 1 deny from [ip] | ||
| | ||
Ligne 151: | Ligne 151: | ||
sudo ufw deny out [règle] | sudo ufw deny out [règle] | ||
- | Supprimer une règle : | + | Supprimer une règle : |
- | sudo ufw delete allow "ou deny" [règle] | + | sudo ufw delete allow [règle] |
+ | sudo ufw delete deny [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]] : | ||
Ligne 167: | Ligne 168: | ||
=== La syntaxe des règles === | === 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. |
* Ouverture du port 53 en TCP et UDP :<code>sudo ufw allow 53</code> | * Ouverture du port 53 en TCP et UDP :<code>sudo ufw allow 53</code> | ||
Ligne 174: | Ligne 175: | ||
=== 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..). Ces règles sont automatiquement convertis en ports. | + | 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 converties en ports. |
- | Pour avoir la liste des services : | + | Pour avoir la liste des services : |
<code>less /etc/services</code> | <code>less /etc/services</code> | ||
- | Exemple : Autoriser le service SMTP : | + | 1° exemple : Autoriser le service SMTP : |
<code>sudo ufw allow smtp</code> | <code>sudo ufw allow smtp</code> | ||
Ligne 192: | Ligne 193: | ||
=== Règles complexes === | === Règles complexes === | ||
- | L'écriture de règles plus complexes est également possible : | + | L'écriture de règles plus complexes est également possible : |
* Refuser le protocole (//proto//) TCP à (//to//) tout le monde (//any//) sur le port (//port//) 80 : <code>sudo ufw deny proto tcp to any port 80</code> | * Refuser le protocole (//proto//) TCP à (//to//) tout le monde (//any//) sur le port (//port//) 80 : <code>sudo ufw deny proto tcp to any port 80</code> | ||
Ligne 203: | Ligne 204: | ||
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]] | ||
<code>sudo ufw insert NUM RULE</code> | <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 trafic entrant utilisant le protocole (//proto//) UDP (//to//) en direction de (//any//) toute les adresses en écoute sur votre machine sur le port (//port//) 514 en provenance (//from//) de 1.2.3.4 |
<code>sudo ufw insert 2 deny proto udp to any port 514 from 1.2.3.4</code> | <code>sudo ufw insert 2 deny proto udp to any port 514 from 1.2.3.4</code> | ||
+ | |||
+ | ===Réinitialiser UFW=== | ||
+ | En cas d'erreur de vos règles vous pouvez réinitialiser le pare feu comme au début de l'installation en ouvrant un terminal puis vous écrivez: | ||
+ | <code>sudo ufw reset </code> | ||
+ | Vous pouvez aussi forcer sans demander d'autorisation : | ||
+ | <code>sudo ufw reset --force</code> | ||
| | ||
===== Configuration ===== | ===== Configuration ===== | ||
Ligne 211: | Ligne 218: | ||
UFW prend en charge les adresses IPv6. | UFW prend en charge les adresses IPv6. | ||
- | Le support d'IPv6 est désormais activé par défaut, si ce n'est pas le cas, | + | Le support d'IPv6 est désormais activé par défaut, si 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 : | 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 bash /etc/default/ufw>IPV6=yes</file> | ||
- | Il ne reste plus qu'à relancer UFW : | + | Il ne reste plus qu'à relancer UFW : |
sudo ufw reload | sudo ufw reload | ||
Ligne 226: | Ligne 233: | ||
==== Ne pas autoriser le ping ==== | ==== Ne pas autoriser le ping ==== | ||
- | Par défaut UFW autorise les requêtes de ping (ICMP Echo Requests). | + | Par défaut UFW autorise les requêtes de ping (ICMP Echo Requests). |
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> | ||
- | ==== Bloquer HADOPI ==== | ||
- | |||
- | Bloquer toutes les IP de la HADOPI : | ||
- | |||
- | sudo ufw deny from 90.80.155.240/28 | ||
- | 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 | ||
- | | ||
- | Cette configuration de blocage ne sert strictement à rien puisque que ce n'est pas la HADOPI qui récupère les IP !!! | ||
===== Problèmes connus ===== | ===== Problèmes connus ===== | ||
+ | ==== Si vous obtenez **"ERROR: / is world writable ==== | ||
- | Si vous obtenez **"ERROR: / is world writable!"** en voulant activer Uncomplicated Firewall, ces commandes devraient régler le problème : | + | en voulant activer Uncomplicated Firewall, ces commandes devraient régler le problème : |
sudo chown root:root / | sudo chown root:root / | ||
- | sudo chmod 755 / | + | sudo chmod 0755 / |
+ | ==== Si vous n'avez plus de place disque ==== | ||
+ | Il faut penser qu'il y a un problème de refus de connexion tracé dans **/var/log**. Si non résolvable, l'une de ces commandes pourra masquer le problème: | ||
+ | sudo ufw logging off | ||
+ | sudo ufw logging low | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||