-
Configurer le firewall UFW
Ubuntu est livré par défaut avec le firewall « UFW », qui signifie «Uncomplicated FireWall», et qui n’est autre qu’une interface simplifiée pour l’utilisation des capacités de filtrage de paquets «netfilter» du noyau linux.
L’interface « habituelle » pour manipuler netfilter est «IPTABLES» qui permet de mettre en place une configuration avancée du firewall.
Tutoriel réalisé sur Ubuntu 11.04 Natty Narwhal
UFW est donc une interface de configuration, qui utilise IPTABLES pour configurer netfilter (élément de filtrage des paquets réseau du noyau linux).
UFW permet une approche plus simpliste de la gestion de firewall, évitant ainsi aux novices de devoir trop perdre de temps pour la configuration de celui ci.Par défaut, UFW est désactivé dans ubuntu.
Ufw peut se configurer en lignes de commandes ou par interface graphique.
Configuration en ligne de commandes.
Activer le firewall :
sudo ufw enable
(cliquer pour ouvrir l'image)
Pour autoriser le trafic entrant :
sudo ufw default allow incoming.
(cliquer pour ouvrir l'image)
Pour refuser le trafic entrant :
sudo ufw default deny incoming.
(cliquer pour ouvrir l'image)
Pour autoriser le trafic sortant :
sudo ufw default allow outgoing.(cliquer pour ouvrir l'image)
Pour refuser le trafic sortant :
sudo ufw default deny outgoing.(cliquer pour ouvrir l'image)
Pour vérifier le statut du firewall :
sudo ufw status
(cliquer pour ouvrir l'image)
Configuration des règles.
Pour avoir la liste connue des services connus ainsi que leur ports, rentrer dans un terminal la commande :
less /etc/services
(cliquer pour ouvrir l'image)
Il existe plusieurs manières de configurer les règles.
En partant du principe que le trafic entrant est refusé (sudo ufw default deny incoming ) et que le trafic sortant est autorisé (sudo ufw default allow outgoing ), je vais autoriser le service ssh (port 22 en tcp/udp) en entrée.
sudo ufw allow ssh.
Le firewall nous indique que la règle a bien été ajoutée.
(cliquer pour ouvrir l'image)
Vérifier que la règle a bien été ajoutée.
sudo ufw status
Le service ssh est bien autorisé.
(cliquer pour ouvrir l'image)
Je vais maintenant autoriser le service ftp (port 21 en tcp) et le port ftp-data (port 20 en tcp) en entrée.
sudo ufw allow 20,21/tcp
(cliquer pour ouvrir l'image)
Vérifier que les règles ont bien été ajoutées.
sudo ufw status
Les services ftp et ftp data sont bien autorisés.
(cliquer pour ouvrir l'image)
Je vais maintenant autoriser les données provenant du réseau 192.168.0.0/24 (ou 192.168.1.0 selon votre FAI) sur les ports samba.
sudo ufw allow proto tcp to any port 135 from 192.168.0.0/24
sudo ufw allow proto udp to any port 137 from 192.168.0.0/24
sudo ufw allow proto udp to any port 138 from 192.168.0.0/24
sudo ufw allow proto tcp to any port 139 from 192.168.0.0/24
sudo ufw allow proto tcp to any port 445 from 192.168.0.0/24
Vérifier que les règles ont bien été ajoutées.
sudo ufw status
(cliquer pour ouvrir l'image)
Je vais maintenant refuser à l'adresse 192.168.0.5 de recevoir les données provenant du réseau 172.16.0.0/16 sur le port 80 en TCP.
sudo ufw deny proto tcp from 172.16.0.0/16 to 192.168.0.5 port 80
Vérifier que les règles ont bien été ajoutées.
sudo ufw status
(cliquer pour ouvrir l'image)
Suppression des règles.
Pour supprimer par exemple la règle autorisant le ssh qui était :
sudo ufw allow ssh.
La commande qui va supprimer cette règle est :
sudo ufw delete allow ssh.
Pour supprimer la règle refusant à l'adresse 192.168.0.5 de recevoir les données provenant du réseau 172.16.0.0/16 sur le port 80 en TCP qui était
sudo ufw deny proto tcp from 172.16.0.0/16 to 192.168.0.5 port 80.
La commande qui va supprimer cette règle est :
sudo ufw delete deny proto tcp from 172.16.0.0/16 to 192.168.0.5 port 80.
Vérifier que les règles ont bien été supprimées.
sudo ufw status
(cliquer pour ouvrir l'image)
Pour activer la journalisation entrer dans un terminal la commande :
sudo ufw logging on.
(cliquer pour ouvrir l'image)
Pour afficher les fichiers de logs et les paquets bloqués :
sudo tail -f /var/log/ufw.log
(cliquer pour ouvrir l'image)
En partant maintenenant du principe que le trafic sortant va être refusé (sudo ufw default deny outgoing ) et que je n'ai par conséquent ouvert aucun port en sortie :
La connexion a GOOGLE ne fonctionne pas.
(cliquer pour ouvrir l'image)
La connexion à la messagerie ne fonctionne pas non plus.
(cliquer pour ouvrir l'image)
Je vais donc autoriser des services afin de rétablir les connexions.
Pour internet :
sudo ufw allow out 53 (port DNS).
sudo ufw allow out 80/tcp (port HTTP).
sudo ufw allow out 443/tcp (port HTTPS).
Pour la messagerie :
sudo ufw allow out smtp.
sudo ufw allow out 465/tcp (port SMTP sécurisé).
sudo ufw allow out pop3.
sudo ufw allow out pop3s/tcp (port POP3 sécurisé).
sudo ufw allow out imap.
sudo ufw allow out imaps/tcp (port IMAP sécurisé).
Vérifier que les règles ont bien été ajoutées :
sudo ufw status
(cliquer pour ouvrir l'image)
la connexion à GOOGLE fonctionne à nouveau.
(cliquer pour ouvrir l'image)
Ainsi que la connexion à la messagerie.
(cliquer pour ouvrir l'image)
Configuration via une interface graphique :
Il existe une interface graphique (GUFW) pour faciliter l'utilisation de UFW.
Pour installer cette interface graphique :
sudo apt-get install gufw.
Pour accéder à GUFW, aller dans Système => Administration => Configuration du pare-feu.
Cliquer sur Unlock pour déverrouiller GUFW, celui ci demandera alors le mot de passe.
(cliquer pour ouvrir l'image)
La première fenêtre nous donne l'état actuel du pare-feu ainsi que les différentes règles qui ont été établies en lignes de commandes.
(cliquer pour ouvrir l'image)
On peut depuis cette fenêtre ajouter ou enlever des règles.
Dans le cas qui nous intéresse, je vais cliquer sur ajouter.
A ce moment là, une nouvelle fenêtre apparait afin que je puisse ajouter des règles préconfigurées.
UFW a dans sa configuration une liste des applications et des services les plus courants (samba,ssh,skype...)
L'avantage est que je n'ai pas besoin de connaitre le port pour le service ou l'application puisque GUFW les ouvre automatiquement.
Dans la première case il y a 4 choix :
Reject renvoie une information de refus à l'application demandeuse.
Deny ne renvoie rien (plus discret).
Limit rejette la connexion si une adresse I.P. a tenté plus de 6 connexions dans les dernières 30 secondes.
Allow autorise la connexion.
Dans la 2ème, il y a le choix en choisir en entrée ou sortie.
Dans la 3ème le choix de choisir entre les applications et les services.
Dans la 4ème enfin le choix entre les noms de services ou d'applications.
(cliquer pour ouvrir l'image)
(cliquer pour ouvrir l'image)
Je vais par exemple autoriser en entrée le service POP3.
(cliquer pour ouvrir l'image)
Une fois que la règle a été ajoutée, je vois que le port 110 à bien été pris en compte en entrée (ALLOW IN).
(cliquer pour ouvrir l'image)
Maintenant je vais aller dans la partie règle simple.
La configuration des 2 premières cases est la même que pour la règle préconfigurée et dans la 3ème case par contre il y a le choix entre ouvrir le port en TCP,UDP ou bien les 2 en même temps.
Ici je vais rentrer un port correspondant à un service ou une application qui n'est pas dans la liste de UFW.
Il faut donc connaitre le port du service ou de l'application que l'on veut ouvrir.
J'autorise en entrée le port TELNET (port 23) en tcp.
(cliquer pour ouvrir l'image)
Une fois que la règle a été ajoutée, je vois que le port 23/tcp est bien autorisé en entrée.
(cliquer pour ouvrir l'image)
Pour finir, je vais aller dans la configuration avancée.
ici, le réglage est un peu plus pointilleux car on peut faire non seulement du filtrage par port, mais aussi par adresse IP.
Je vais maintenant refuser à l'adresse 192.168.0.6 de recevoir les données provenant du réseau 172.16.0.0 sur le port 22 en TCP.
(cliquer pour ouvrir l'image)
La règle a bien été ajoutée.
(cliquer pour ouvrir l'image)
Je ne vous ai montré que quelques exemples de configuration de UFW, après c'est à vous de configurer UFW selon vos besoins.
Pour moi UFW est un logiciel puissant qui reste néanmoins abordable dans sa configuration.
Pour plus d'informations sur la configuration de UFW :
« Installer le client de messagerie Thunderbird Création et restauration d'une image système sous Windows 7 »
Tags : ufw, sudo, ouvrir, port, cliquer
-
Commentaires