Installer UFW
UFW est installé par défaut dans Ubuntu 18.04, mais vous pouvez le vérifier:
which ufw
Vous devriez recevoir la sortie suivante:
/usr/sbin/ufw
Si vous ne recevez pas de sortie, cela signifie que UFW n'est pas installé. Vous pouvez l'installer vous-même si c'est le cas:
sudo apt-get install ufw
Autoriser les connexions
Si vous utilisez un serveur Web, vous souhaitez que le monde entier puisse accéder à vos sites Web. Par conséquent, vous devez vous assurer que les ports TCP par défaut pour le Web sont ouverts.
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
En général, vous pouvez autoriser tous les ports dont vous avez besoin en utilisant le format suivant:
sudo ufw allow <port>/<optional: protocol>
Refuser les connexions
Si vous devez refuser l'accès à un certain port, utilisez la deny
commande:
sudo ufw deny <port>/<optional: protocol>
Par exemple, vous pouvez refuser l'accès à votre port MySQL par défaut:
sudo ufw deny 3306
UFW prend également en charge une syntaxe simplifiée pour les ports de service les plus courants:
root@ubuntu:~$ sudo ufw deny mysql
Rule updated
Rule updated (v6)
Il est fortement recommandé de restreindre l'accès à votre port SSH (par défaut, il s'agit du port 22
), de n'importe où, à l'exception de vos adresses IP de confiance.
Autoriser l'accès à partir d'une adresse IP approuvée
En règle générale, vous devez autoriser l'accès uniquement aux ports ouverts publiquement, tels que le port 80
. L'accès à tous les autres ports doit être restreint ou limité. Vous pouvez ajouter à la liste blanche votre adresse IP personnelle ou professionnelle (de préférence une adresse IP statique) pour pouvoir accéder à votre serveur via SSH ou FTP:
sudo ufw allow from 192.168.0.1 to any port 22
Vous pouvez également autoriser l'accès au port MySQL:
sudo ufw allow from 192.168.0.1 to any port 3306
Activer UFW
Avant d'activer (ou de redémarrer) UFW, vous devez vous assurer que le port SSH est autorisé à recevoir des connexions de votre adresse IP. Pour démarrer / activer votre pare-feu UFW, utilisez la commande suivante:
sudo ufw enable
Vous verrez la sortie suivante:
root@ubuntu:~$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Appuyez sur Y, puis appuyez sur ENTERpour activer le pare-feu:
Firewall is active and enabled on system startup
Vérifier l'état UFW
Imprimez la liste des règles UFW:
sudo ufw status
Vous verrez une sortie similaire à la suivante:
Status: active
To Action From
-- ------ ----
80/tcp DENY Anywhere
443/tcp DENY Anywhere
3306 DENY Anywhere
22 ALLOW 192.168.0.1
3306 ALLOW 192.168.0.1
80/tcp (v6) DENY Anywhere (v6)
443/tcp (v6) DENY Anywhere (v6)
3306 (v6) DENY Anywhere (v6)
Utilisez le verbose
paramètre pour afficher un rapport d'état plus détaillé:
sudo ufw status verbose
Cette sortie ressemblera à ce qui suit:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
80/tcp DENY IN Anywhere
443/tcp DENY IN Anywhere
3306 DENY IN Anywhere
22 ALLOW IN 192.168.0.1
3306 ALLOW IN 192.168.0.1
80/tcp (v6) DENY IN Anywhere (v6)
443/tcp (v6) DENY IN Anywhere (v6)
3306 (v6) DENY IN Anywhere (v6)
Désactiver / recharger / redémarrer UFW
Si vous devez recharger les règles de pare-feu, exécutez ce qui suit:
sudo ufw reload
Pour désactiver ou arrêter UFW:
sudo ufw disable
Pour redémarrer UFW, vous devrez d'abord le désactiver, puis le réactiver:
sudo ufw disable
sudo ufw enable
Remarque: Avant d'activer UFW, assurez-vous que le port SSH est autorisé pour votre adresse IP.
Suppression de règles
Pour gérer vos règles UFW, vous devez les répertorier. Vous pouvez le faire en vérifiant l'état UFW avec le paramètre numbered
:
sudo ufw status numbered
Vous verrez une sortie similaire à la suivante:
Status: active
To Action From
-- ------ ----
[ 1] 80/tcp DENY IN Anywhere
[ 2] 443/tcp DENY IN Anywhere
[ 3] 3306 DENY IN Anywhere
[ 4] 22 ALLOW IN 192.168.0.1
[ 5] 3306 ALLOW IN 192.168.0.1
[ 6] 80/tcp (v6) DENY IN Anywhere (v6)
[ 7] 443/tcp (v6) DENY IN Anywhere (v6)
[ 8] 3306 (v6) DENY IN Anywhere (v6)
Maintenant, pour supprimer l'une de ces règles, vous devrez utiliser ces chiffres entre crochets:
sudo ufw delete [number]
Pour supprimer la HTTP
règle, ( 80
), utilisez la commande suivante:
sudo ufw delete 1
Activation de la prise en charge IPv6
Si vous utilisez IPv6 sur votre VPS, vous devez vous assurer que la prise en charge d'IPv6 est activée dans UFW. Pour ce faire, ouvrez le fichier de configuration dans un éditeur de texte:
sudo vi /etc/default/ufw
Une fois ouvert, assurez-vous qu'il IPV6
est réglé sur "oui":
IPV6=yes
Après avoir effectué cette modification, enregistrez le fichier. Ensuite, redémarrez UFW en le désactivant et en le réactivant:
sudo ufw disable
sudo ufw enable
Retour aux paramètres par défaut
Si vous devez revenir aux paramètres par défaut, tapez simplement la commande suivante. Cela annulera vos modifications:
sudo ufw reset
Félicitations, vous venez de configurer quelques règles de base du pare-feu. Pour en savoir plus d'exemples, consultez le UFW - Wiki d'aide communautaire .