GNU/Linux >> Tutoriels Linux >  >> Debian

Comment configurer un pare-feu avec UFW sur Debian 9

Debian inclut plusieurs paquets qui fournissent des outils pour gérer un pare-feu avec iptables installé dans le cadre du système de base. Il peut être compliqué pour les débutants d'apprendre à utiliser l'outil iptables pour configurer et gérer correctement un pare-feu, mais UFW le simplifie.

UFW (Uncomplicated Firewall) est une interface conviviale pour la gestion des règles de pare-feu iptables. Son objectif principal est de faciliter la gestion d'iptables ou, comme son nom l'indique, de la simplifier.

Dans ce tutoriel, nous allons vous montrer comment configurer un pare-feu avec UFW sur Debian 9.

Prérequis #

Avant de poursuivre ce didacticiel, assurez-vous que l'utilisateur sous lequel vous êtes connecté dispose des privilèges sudo.

Installer UFW #

UFW n'est pas installé par défaut dans Debian 9. Vous pouvez installer le ufw package en tapant :

sudo apt install ufw

Vérifier le statut UFW #

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

sudo ufw status verbose

La sortie ressemblera à ceci :

Status: inactive

UFW est désactivé par défaut. L'installation n'activera pas automatiquement le pare-feu pour éviter un verrouillage du serveur.

Si UFW est activé, la sortie ressemblera à ce qui suit :

Politiques par défaut UFW #

Par défaut, UFW bloquera toutes les connexions entrantes et autorisera toutes les connexions sortantes. Cela signifie que toute personne essayant d'accéder à votre serveur ne pourra pas se connecter à moins que vous n'ouvriez spécifiquement le port, tandis que toutes les applications et tous les services exécutés sur votre serveur pourront accéder au monde extérieur.

Les politiques par défaut sont définies dans le /etc/default/ufw fichier et peut être modifié à l'aide de sudo ufw default <policy> <chain> commande.

Les stratégies de pare-feu constituent la base de la création de règles plus détaillées et définies par l'utilisateur. Dans la plupart des cas, les stratégies par défaut UFW initiales constituent un bon point de départ.

Profils d'application #

Lors de l'installation d'un paquet avec apt il ajoutera un profil d'application à /etc/ufw/applications.d répertoire décrivant le service et contenant les paramètres UFW.

Pour répertorier tous les profils d'application disponibles sur votre système, tapez :

sudo ufw app list

Selon les packages installés sur votre système, la sortie ressemblera à ce qui suit :

Available applications:
  DNS
  IMAP
  IMAPS
  OpenSSH
  POP3
  POP3S
  Postfix
  Postfix SMTPS
  Postfix Submission
  ...

Pour trouver plus d'informations sur un profil spécifique et les règles incluses, utilisez la commande suivante :

sudo ufw app info OpenSSH
Profile: OpenSSH
Title: Secure shell server, an rshd replacement
Description: OpenSSH is a free implementation of the Secure Shell protocol.

Port:
  22/tcp

RLa sortie ci-dessus nous indique que le profil OpenSSH ouvre le port 22 .

Autoriser les connexions SSH #

Avant d'activer le pare-feu UFW, nous devons d'abord autoriser les connexions SSH entrantes.

Si vous vous connectez à votre serveur depuis un emplacement distant, ce qui est presque toujours le cas et que vous activez le pare-feu UFW avant d'autoriser explicitement les connexions SSH entrantes, vous ne pourrez plus vous connecter à votre serveur Debian.

Pour configurer votre pare-feu UFW afin d'autoriser les connexions SSH entrantes, exécutez la commande suivante :

sudo ufw allow OpenSSH
Rules updated
Rules updated (v6)

Si le serveur SSH écoute sur un port autre que le port par défaut 22, vous devrez ouvrir ce port.

Par exemple, votre serveur ssh écoute sur le port 8822 , vous pouvez alors utiliser la commande suivante pour autoriser les connexions sur ce port :

sudo ufw allow 8822/tcp

Activer UFW #

Maintenant que votre pare-feu UFW est configuré pour autoriser les connexions SSH entrantes, vous pouvez l'activer en exécutant :

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

Vous serez averti que l'activation du pare-feu peut perturber les connexions ssh existantes, tapez simplement y et appuyez sur Enter .

Autoriser les connexions sur d'autres ports #

En fonction des applications exécutées sur votre serveur et de vos besoins spécifiques, vous devrez également autoriser l'accès entrant à d'autres ports.

Vous trouverez ci-dessous plusieurs exemples montrant comment autoriser les connexions entrantes à certains des services les plus courants :

Ouvrir le port 80 - HTTP #

Les connexions HTTP peuvent être autorisées avec la commande suivante :

sudo ufw allow http

Au lieu du http profil, vous pouvez utiliser le numéro de port, 80 :

sudo ufw allow 80/tcp

Ouvrir le port 443 - HTTPS #

Les connexions HTTPS peuvent être autorisées avec la commande suivante :

sudo ufw allow https

Pour obtenir la même chose au lieu de https vous pouvez utiliser le numéro de port, 443 :

sudo ufw allow 443/tcp

Ouvrir le port 8080 #

Si vous exécutez Tomcator n'importe quelle autre application qui écoute sur le port 8080, vous pouvez autoriser les connexions entrantes avec :

sudo ufw allow 8080/tcp

Autoriser les plages de ports #

Avec UFW, vous pouvez également autoriser l'accès aux plages de ports. Lorsque vous autorisez des plages de ports avec UFW, vous devez spécifier le protocole, soit tcp ou udp .

Par exemple, pour autoriser les ports de 7100 à 7200 sur les deux tcp et udp , exécutez la commande suivante :

sudo ufw allow 7100:7200/tcpsudo ufw allow 7100:7200/udp

Autoriser des adresses IP spécifiques #

Si vous souhaitez autoriser l'accès sur tous les ports à partir d'une adresse IP spécifique, utilisez le ufw allow from commande suivie de l'adresse IP :

sudo ufw allow from 64.63.62.61

Autoriser des adresses IP spécifiques sur un port spécifique #

Pour autoriser l'accès sur un port spécifique, disons le port 22 de votre machine de travail avec l'adresse IP 64.63.62.61, utilisez la commande suivante :

sudo ufw allow from 64.63.62.61 to any port 22

Autoriser les sous-réseaux #

La commande pour autoriser la connexion à partir d'un sous-réseau d'adresses IP est la même que lors de l'utilisation d'une seule adresse IP, la seule différence est que vous devez spécifier le masque de réseau. Par exemple, si vous souhaitez autoriser l'accès pour les adresses IP allant de 192.168.1.1 à 192.168.1.254 au port 3360 (MySQL) vous exécuteriez la commande suivante :

sudo ufw allow from 192.168.1.0/24 to any port 3306

Autoriser les connexions à une interface réseau spécifique #

Pour autoriser l'accès sur un port spécifique, disons le port 3360 sur une interface réseau spécifique eth2 , utilisez le allow in on commande suivie du nom de l'interface :

sudo ufw allow in on eth2 to any port 3306

Refuser les connexions #

La politique par défaut pour toutes les connexions entrantes est définie sur deny ce qui signifie que UFW bloquera toutes les connexions entrantes à moins que vous n'ouvriez spécifiquement la connexion.

Disons que vous avez ouvert les ports 80 et 443 et votre serveur est attaqué depuis le 23.24.25.0/24 réseau. Pour refuser toutes les connexions depuis le 23.24.25.0/24 , exécutez la commande suivante :

sudo ufw deny from 23.24.25.0/24

Si vous souhaitez uniquement refuser l'accès aux ports 80 et 443 du 23.24.25.0/24 vous utiliseriez :

sudo ufw deny from 23.24.25.0/24 to any port 80sudo ufw deny from 23.24.25.0/24 to any port 443

L'écriture de règles de refus est la même que l'écriture de règles d'autorisation, il vous suffit de remplacer allow avec deny .

Supprimer les règles UFW #

Il existe deux manières différentes de supprimer des règles UFW, par numéro de règle et en spécifiant la règle réelle.

La suppression de règles UFW par numéro de règle est plus facile, surtout si vous débutez avec UFW.

Pour supprimer une règle par un numéro de règle, vous devez d'abord trouver le numéro de la règle que vous souhaitez supprimer. Pour ce faire, exécutez la commande suivante :

sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere
[ 3] 8080/tcp                   ALLOW IN    Anywhere

Par exemple pour supprimer la règle numéro 3, la règle qui autorise les connexions au port 8080, vous saisirez :

sudo ufw delete 3

La deuxième méthode consiste à supprimer une règle en spécifiant la règle réelle. Par exemple, si vous avez ajouté une règle pour ouvrir le port 8069 vous pouvez le supprimer avec :

sudo ufw delete allow 8069

Désactiver UFW #

Si, pour une raison quelconque, vous souhaitez arrêter UFW et désactiver toutes les règles exécutées :

sudo ufw disable

Plus tard, si vous souhaitez réactiver UTF et activer toutes les règles, tapez simplement :

sudo ufw enable

Réinitialiser UFW #

La réinitialisation d'UFW désactivera UFW et supprimera toutes les règles actives. Ceci est utile si vous souhaitez annuler toutes vos modifications et recommencer à zéro.

Pour réinitialiser UFW, tapez simplement la commande suivante :

sudo ufw reset

Debian
  1. Définir une IP Statique sur Debian 11 - Comment faire ?

  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 CSF sur Debian 9

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

Comment configurer ModSecurity avec Nginx sur Debian/Ubuntu

Comment configurer un pare-feu avec GUFW sous Linux

Comment configurer le pare-feu UFW sur Debian 10

Comment configurer le pare-feu UFW sur Debian 11

Comment configurer un pare-feu avec UFW sur Debian 11

Comment configurer le pare-feu UFW sous Linux