GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Comment configurer un pare-feu avec UFW sur Ubuntu 18.04

Dans cet article, nous allons vous montrer comment installer et configurer UFW sur un VPS Ubuntu 18.04. Tout d'abord, nous prendrons un moment pour présenter et expliquer ce que sont les pare-feu, puis nous vous montrerons comment utiliser UFW et comment effectuer la configuration UFW appropriée.

Un pare-feu est un logiciel qui surveille le trafic réseau et empêche tout accès non autorisé vers ou depuis un réseau privé. En ce qui concerne le noyau Linux, un sous-système Netfilter est implémenté, qui est utilisé pour manipuler le trafic réseau. Presque toutes les solutions de pare-feu Linux modernes utilisent ce système pour filtrer les paquets réseau. De plus, "iptables" - un utilitaire de pare-feu accessible depuis la ligne de commande - fait également partie du framework Netfilter. Pour simplifier le processus de création de règles de pare-feu, Canonical (les créateurs d'Ubuntu) a développé une interface iptables appelée Uncomplicated Firewall (UFW).

Si vous utilisez Ubuntu 18.04 et que vous souhaitez sécuriser votre réseau sans avoir à apprendre à utiliser iptables, alors UFW peut être la solution appropriée que vous recherchez.

Prérequis

Pour suivre ce tutoriel, vous aurez besoin d'un serveur avec Ubuntu 18.04 et un accès SSH avec l'utilisateur root (ou un utilisateur avec les privilèges sudo). Commençons par le tutoriel.

Étape 1 :Connectez-vous à votre serveur

Avant de commencer, vous devrez vous connecter à votre serveur via SSH en tant que root ou utilisateur avec des privilèges sudo. Pour cela, utilisez la commande suivante :

ssh root@IP_Address -p Port_Number

bien sûr, vous devrez remplacer IP_Address et Port_Number avec l'adresse IP réelle de votre serveur et le numéro de port SSH.

Une fois connecté, assurez-vous que votre serveur est à jour en exécutant les commandes suivantes :

sudo apt update
sudo apt upgrade

Étape 2 :Installer UFW

UFW devrait déjà être installé par défaut sur Ubuntu 18.04 - mais si pour une raison quelconque il n'est pas installé, vous pouvez l'installer avec cette commande :

sudo apt install ufw

Une fois l'installation terminée, vous pouvez vérifier l'état d'UFW avec la commande :

sudo ufw status verbose

UFW par défaut est initialement désactivé, et si vous ne l'avez jamais activé auparavant, vous obtiendrez la sortie :

Output
Status: inactive

Si vous avez déjà activé UFW sur votre serveur, la sortie sera assez différente et ressemblera à ce qui suit :

Output:

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
22/tcp (v6)                ALLOW IN    Anywhere (v6)
80/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)
....

Étape 3 :Règles UFW par défaut

La première chose que vous devez savoir, ce sont les politiques par défaut. Par défaut, UFW est configuré pour refuser toutes les connexions entrantes et autoriser toutes les connexions sortantes. En d'autres termes, toutes les connexions qui tenteront d'accéder à votre serveur seront refusées et toutes vos applications et services qui se trouvent localement sur votre serveur pourront atteindre le monde extérieur et accéder à d'autres serveurs.

Si vous souhaitez vérifier ou modifier les politiques par défaut, vous pouvez les trouver dans le /etc/default/ufw fichier de configuration.

Pour définir ces règles UFW par défaut, vous pouvez exécuter les commandes suivantes :

sudo ufw default deny incoming
sudo ufw default allow outgoing

Gardez à l'esprit que les serveurs doivent généralement répondre à une demande entrante d'internautes. Ainsi, dans la plupart des cas, vous ne pouvez pas configurer votre pare-feu pour bloquer toutes les connexions entrantes. À l'étape suivante, nous apprendrons comment autoriser des connexions spécifiques.

Étape 4 :Autoriser les connexions SSH

Avant d'activer UFW, vous devez autoriser l'accès SSH sur votre serveur en ajoutant une règle qui autorisera les connexions SSH entrantes. Sinon, vous serez bloqué et vous ne pourrez pas vous connecter à votre serveur Ubuntu.

Vous pouvez utiliser la commande suivante pour configurer le pare-feu UFW afin d'autoriser toutes les connexions SSH entrantes :

sudo ufw allow ssh

Ensuite, vous recevrez la sortie suivante :

Rules updated
Rules updated (v6)

Veuillez noter que cette commande n'est disponible que si votre serveur écoute le port SSH standardisé :22. Si le service SSH utilise un port personnalisé non standard, vous devrez ouvrir ce port. Si le service SSH de votre serveur utilise un port unique, par exemple le port 900, vous pouvez utiliser la commande suivante :

sudo ufw allow 900

Notez que vous aurez besoin de savoir quel numéro de port votre service utilise actuellement.

Étape 5 :Activer UFW

Maintenant que votre pare-feu est configuré pour autoriser les connexions SSH et que vous êtes sûr que votre connexion SSH actuelle ne sera pas affectée, vous pouvez continuer avec l'activation du pare-feu UFW.

sudo ufw enable

Après quoi, vous recevrez la sortie suivante :

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

Vous recevrez un avertissement vous indiquant que vous devez avoir configuré des règles SSH autorisées, sinon la connexion SSH existante sera fermée. Comme vous l'avez déjà fait, tapez [y] et continuez avec [Entrée].

Étape 6 :Autoriser les connexions sur des ports spécifiques

Les applications et services que vous utilisez peuvent avoir besoin d'avoir leurs ports ouverts pour les connexions entrantes et sortantes, selon l'objectif de l'application. Les ports les plus courants que vous devrez débloquer sont les ports 80 et 443, qui sont utilisés par le serveur Web, et 25, 110, 143, 587 et 993, qui sont utilisés par le serveur de messagerie.

Nous allons vous montrer à travers quelques exemples comment autoriser les connexions entrantes pour certains services courants.

Pour autoriser toutes les connexions HTTP (port 80), exécutez cette commande :

sudo ufw allow http

De plus, si vous souhaitez spécifier le port, vous pouvez appliquer ce qui est essentiellement la même règle mais avec une syntaxe différente :

sudo ufw allow 80

Pour autoriser toutes les connexions HTTPS (port 443), exécutez la commande :

sudo ufw allow https

De plus, si vous souhaitez spécifier le port HTTPS, vous pouvez appliquer la règle avec une syntaxe différente :

sudo ufw allow 443

Si vous utilisez un serveur de messagerie, certaines des règles suivantes pourraient être utiles.

Pour autoriser tous les SMTP entrants, vous pouvez exécuter la commande :

sudo ufw allow 25

Pour autoriser toutes les connexions IMAP entrantes, exécutez la commande :

sudo ufw allow 143

Et pour autoriser toutes les requêtes IMAPS entrantes, vous pouvez utiliser la commande :

sudo ufw allow 993

Si vous utilisez plutôt POP3, cette commande ci-dessous autorisera toutes les connexions entrantes :

sudo ufw allow 110

Et pour toutes les requêtes POP3S entrantes, utilisez cette commande suivante :

sudo ufw allow 995

Enfin, si vous exécutez un programme spécifique nécessitant un accès Web, vous devrez également activer le port spécifique à ce programme. Par exemple, si vous exécutez Tomcat sur votre serveur, vous aurez besoin du port 8080. Vous pouvez autoriser toutes les connexions entrantes sur ce port avec la commande :

sudo ufw allow <port number>

Vous pouvez le faire pour tous les ports spécifiques dont vous pourriez avoir besoin.

Étape 7 :Autoriser les plages de ports

UFW peut également autoriser l'accès à des plages de ports au lieu d'autoriser l'accès à un seul port. Lorsque vous souhaitez autoriser des plages de ports sur le port UFW, vous devez spécifier la plage du port et le protocole, TCP ou UDP.

Par exemple, si vous souhaitez autoriser les ports de 8069 à 8080 pour TCP et UDP, vous pouvez utiliser les commandes suivantes :

sudo ufw allow 8069:8080/tcp
sudo ufw allow 8069:8080/udp

Étape 8 :Autoriser des adresses IP spécifiques

Si vous souhaitez autoriser une seule adresse IP (par exemple une machine de confiance trouvée sur votre réseau local) à pouvoir accéder à tous les ports, vous pouvez utiliser la commande :

sudo ufw allow from 206.207.208.209

En plus de cela, vous pouvez également autoriser une adresse IP spécifique à un port particulier ! Supposons que vous souhaitiez autoriser une adresse IP spécifique à utiliser le port MySQL (MySQL utilise le port 3306), vous pouvez simplement utiliser cette commande :

sudo ufw allow from 206.207.208.209 to any port 3306

Étape 9 :Refuser les connexions

Comme mentionné précédemment à l'étape 3 , la stratégie par défaut pour les connexions entrantes est définie sur "Refuser". Cependant, vous devrez parfois refuser des connexions spécifiques en fonction de l'adresse IP source ou du port spécifique.

La règle de refus est très utile si vous avez une attaque sur votre serveur depuis une adresse IP spécifique et que vos ports 80 et 443 sont ouverts. Dans ce cas, vous pouvez bloquer cette adresse IP en utilisant l'exemple suivant. Bien entendu, n'oubliez pas de remplacer l'adresse IP 24.25.26.27 par l'adresse IP réelle que vous souhaitez bloquer :

sudo ufw deny from 24.25.26.27

Cela empêchera l'adresse IP d'accéder à tous vos ports ouverts. Cependant, si vous souhaitez empêcher l'adresse IP d'accéder à un port particulier, vous pouvez utiliser l'exemple suivant :

sudo ufw deny from 24.25.26.27 to any port 80
sudo ufw deny from 24.25.26.27 to any port 443

Comme vous pouvez le constater, la création de règles de refus est similaire aux règles d'autorisation.

Étape 10 :Supprimer les règles UFW

L'importance de supprimer les règles UFW est aussi importante que de les créer. Il existe deux manières différentes de supprimer une règle UFW. La première méthode consiste à utiliser le numéro de règle et la seconde à spécifier la règle réelle.

Si vous souhaitez supprimer la règle UFW avec des numéros, vous devez connaître le numéro de la règle. Pour lister les numéros de règles, vous pouvez utiliser la commande :

sudo ufw status numbered
Output:

Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 80                         ALLOW IN    Anywhere
[ 2] 443                        ALLOW IN    Anywhere
[ 3] 22                         ALLOW IN    Anywhere
[ 4] Anywhere                   ALLOW IN    206.207.208.209
[ 5] 7022                       ALLOW IN    Anywhere
[ 6] 8069                       ALLOW IN    Anywhere
...

Pour supprimer la règle étiquetée comme règle numéro 4, qui autorise les connexions à partir de l'adresse IP 206.207.208.209, vous pouvez utiliser la commande :

sudo ufw delete 4

Si vous souhaitez utiliser la deuxième méthode, qui consiste à supprimer une règle en spécifiant la règle réelle. Supposons que vous vouliez fermer le port 8069 par exemple - dans ce cas, vous utiliseriez la commande suivante :

sudo ufw delete allow 8069

Étape 11 :Désactiver ou réinitialiser UFW

Si pour une raison quelconque vous devez arrêter toutes les règles UFW sur votre serveur, vous pouvez le désactiver en utilisant la commande :

sudo ufw disable

Cela arrêtera toutes les règles qui étaient actuellement actives sur votre serveur. Cependant, si vous avez besoin de réactiver les règles de pare-feu, vous pouvez simplement les réactiver.

sudo ufw enable

Si, pour une raison quelconque, vous souhaitez supprimer toutes les règles et commencer avec un nouvel UFW, vous pouvez utiliser la commande suivante :

sudo ufw reset

Veuillez noter que les règles par défaut ne retrouveront pas leurs paramètres d'origine si elles ont déjà été modifiées.

Dans cet article, nous vous avons montré comment installer UFW puis l'utiliser pour configurer un pare-feu sur Ubuntu 18.04. Vous pouvez maintenant utiliser les connaissances de ce guide pour commencer à créer vos propres règles de pare-feu UFW et protéger votre serveur.

Bien sûr, si vous êtes l'un de nos clients d'hébergement Ubuntu géré, vous n'avez pas besoin de configurer votre pare-feu avec UFW sur votre serveur - demandez simplement à nos administrateurs, asseyez-vous et détendez-vous. Nos administrateurs configureront immédiatement pour vous les règles de pare-feu sur votre serveur.

PS. Si vous avez aimé cet article sur la configuration d'un pare-feu avec UFW sur Ubuntu 18.04, partagez-le avec vos amis sur les réseaux sociaux à l'aide des boutons de partage ci-dessous, ou laissez simplement un commentaire dans la section des commentaires. Merci.


Panels
  1. Comment configurer le pare-feu UFW sur Ubuntu 18.04

  2. Comment configurer un pare-feu avec UFW dans Ubuntu \ Debian

  3. Comment configurer un pare-feu avec UFW sur Ubuntu 16.04

  4. Comment configurer un pare-feu avec UFW sur Debian 9

  5. Comment configurer le pare-feu UFW sur Ubuntu 18.04

Comment installer et configurer le pare-feu UFW sur Ubuntu 20.04

Comment installer le pare-feu UFW sur Ubuntu 16.04 LTS

Comment configurer le pare-feu UFW sur Ubuntu 18.04 LTS

Comment configurer le pare-feu UFW sur Ubuntu 20.04 LTS

Comment configurer le pare-feu avec UFW sur Ubuntu Linux

Comment configurer le pare-feu UFW sur Ubuntu 20.04