Lanceur Produits Bitnami Documentationimaxe CLI Blog Contact
imaxe firewall pare-feu v1.0.0

Votre pare-feu, sous contrôle

Consultez l'état d'ufw, bloquez à la main les IP abusives et ouvrez ou fermez des ports avec une seule commande. Les bannissements automatiques, c'est fail2ban qui les met ; ceci est pour vos blocages manuels et les règles de ports.

$ imaxe firewall block 203.0.113.10 --reason "abuso" --ttl 24h
Version
v1.0.0
Sous-commandes
9
Config
/etc/imaxe/firewall.yml
Nécessite root
oui
Base
ufw + fail2ban

Ce que fait ce module #

Le pare-feu est la porte du serveur : il décide quelles connexions entrent et lesquelles sont rejetées. Sur ces machines, ce travail est assuré par ufw (le pare-feu d'Ubuntu), et le module firewall vous offre une commande pratique pour le piloter sans mémoriser la syntaxe d'ufw.

Avec lui, vous pouvez voir d'un coup d'œil l'état du pare-feu (actif, politique par défaut et règles), bloquer à la main une IP ou une plage qui vous embête, libérer ce blocage lorsqu'il n'est plus nécessaire, et ouvrir ou fermer des ports en maintenant la configuration synchronisée avec ce qu'ufw applique.

Blocages manuels, pas automatiques

Les bannissements automatiques dus aux tentatives d'intrusion (force brute SSH, etc.) sont gérés par fail2ban de son côté. Ce module travaille avec vos blocages manuels : block, unblock et flush ne touchent que ce que vous ajoutez à la main et n'interfèrent jamais avec les bannissements de fail2ban.

Guide rapidetâches pas à pas

Tâches courantes #

Choisissez ce que vous voulez faire. Chaque recette fournit la commande déjà écrite — il suffit de remplacer l'IP ou le port par les vôtres, puis de cliquer sur Copier.

1

Voir l'état du pare-feu

Vérifiez s'il est actif, sa politique par défaut et combien de règles il a.

Connectez-vous en SSH à votre serveur et demandez le résumé :

terminal
$ sudo imaxe firewall status

Vous le voulez pour un script ? Ajoutez --json et vous aurez la même information lisible par machine :

terminal
$ sudo imaxe firewall status --json
Vous voyez si le pare-feu est actif, la politique par défaut, le nombre de règles et combien de blocages manuels vous avez mis.
2

Bloquer une IP abusive

Coupez l'accès à une IP ou une plage qui vous dérange.

Bloquez une IP précise, en notant le motif pour vous en souvenir plus tard :

terminal
$ sudo imaxe firewall block 203.0.113.10 --reason "abuso"

Vous voulez seulement un blocage temporaire ? Donnez-lui une durée avec --ttl et il se lèvera tout seul. Vous pouvez aussi bloquer une plage entière en notation CIDR :

terminal
$ sudo imaxe firewall block 203.0.113.10 --reason "abuso" --ttl 24h
$ sudo imaxe firewall block 203.0.113.0/24 --reason "escaneo"
Cette IP ou plage ne peut plus se connecter au serveur. Si vous avez mis --ttl, le blocage expire tout seul à l'échéance du délai.
3

Voir quelles IP j'ai bloquées

Passez en revue la liste des blocages manuels actifs.

Listez les IP et plages que vous avez bloquées à la main (rappel : les bannissements de fail2ban n'apparaissent pas ici) :

terminal
$ sudo imaxe firewall blocked
Vous voyez chaque blocage manuel avec son motif et, le cas échéant, sa date d'expiration. Un blocage en trop ? Passez à Débloquer une IP.
4

Débloquer une IP

Libérez un blocage manuel qui n'est plus nécessaire.

Libérez l'IP ou la plage exactes que vous avez bloquées (telles qu'elles apparaissent dans blocked) :

terminal
$ sudo imaxe firewall unblock 203.0.113.10
Cette adresse peut de nouveau se connecter. Le reste des blocages et les bannissements de fail2ban restent intacts.
5

Ouvrir ou fermer un port

Laissez passer un nouveau service ou fermez-en un que vous ne proposez plus.

Ouvrez un port (avec un commentaire pour savoir à quoi il sert). Vous pouvez limiter qui entre avec --from :

terminal
$ sudo imaxe firewall allow 443/tcp --comment "https"
$ sudo imaxe firewall allow 5432/tcp --from 203.0.113.0/24 --comment "postgres interno"

Fermez un port que vous n'utilisez plus :

terminal
$ sudo imaxe firewall deny 8080/tcp
La règle est appliquée dans ufw et reflétée dans firewall.yml. Vérifiez-le avec imaxe firewall rules list.
Attention à la fermeture des ports

Ne fermez pas le port 22 (SSH) si vous êtes connecté en SSH : vous perdriez l'accès au serveur. Le module maintient 22/tcp autorisé par défaut justement pour éviter cette frayeur. Et rappelez-vous que flush efface tous vos blocages manuels d'un coup.

Référence CLIcommandes, flags et fichiers

Synopsis #

usage
imaxe firewall <subcomando> [<ip>|<puerto>] [flags]

Toutes les sous-commandes nécessitent des privilèges root (utilisez sudo) car elles opèrent sur ufw et écrivent dans /etc/imaxe/. Ajoutez --json à status, blocked ou rules list pour obtenir une sortie lisible par machine, adaptée au scripting.

Sous-commandes #

Sous-commandeRôleFlags pertinents
statusÉtat du pare-feu : actif, politique par défaut, nombre de règles et blocages manuels.--json
blockedListe les IP/plages bloquées manuellement (n'inclut pas les bannissements de fail2ban).--json
blockBloque une IP ou une plage manuellement, avec motif et durée optionnels.--reason, --ttl
unblockLibère un blocage manuel. Ne touche pas aux bannissements de fail2ban.
flushEfface tous les blocages manuels (destructif). Ne touche pas aux bannissements de fail2ban.--yes
rules listListe les règles de ports (ports autorisés, origines).--json
allowOuvre un port et le reflète dans la config.--from, --comment
denyFerme un port et le reflète dans la config.--from
reloadRecharge ufw (réapplique ses règles actives).

rules regroupe la gestion des règles de ports ; pour l'instant sa seule sous-commande est rules list.

Arguments et flags #

Argument / FlagTypePar défautDescription
<ip>[/cidr] req.stringIP ou plage CIDR sur laquelle opérer dans block et unblock (p. ex. 203.0.113.10 ou 203.0.113.0/24).
<port>[/proto] req.stringPort sur lequel opérer dans allow et deny (p. ex. 443 ou 443/tcp).
--reasonstringDans block : motif du blocage (informatif).
--ttlduréepermanentDans block : durée du blocage (p. ex. 24h). Par défaut, permanent.
--fromcidrn'importeDans allow/deny : restreint l'origine à un CIDR précis.
--commentstringDans allow : commentaire descriptif de la règle.
--yesboolfalseDans flush : confirme sans demander (opération destructive).
--jsonboolfalseDans status/blocked/rules list : émet le résultat en JSON sur stdout.

Fichiers et chemins #

CheminContenu
/etc/imaxe/firewall.ymlConfiguration du module : ports autorisés qu'allow/deny maintiennent synchronisés avec ufw.

Exemple de firewall.yml :

/etc/imaxe/firewall.yml
allow:
  - { port: 22, proto: tcp, comment: "ssh" }
  - { port: 443, proto: tcp, comment: "https" }

Codes de sortie et logs #

Chaque exécution renvoie un code que vous pouvez vérifier avec echo $? — utile pour l'enchaîner dans des scripts :

0OKOpération terminée correctement.
1ERRErreur générique non classée. Consultez le log.
2USAGEArguments invalides ou manquants.
3NOTFOUNDL'IP ou la règle indiquée n'existe pas.

Suivez l'état et les règles en direct pendant que vous déboguez :

terminal
$ sudo imaxe firewall status
$ sudo imaxe firewall rules list

Résolution des problèmes #

SymptômeCause probableSolution
Sort NOTFOUND (code 3) au déblocageL'IP ne correspond pas exactement au blocage posé (il manque le /cidr, par exemple).Exécutez imaxe firewall blocked et copiez l'entrée telle quelle pour le unblock.
J'ai bloqué une IP mais elle apparaît toujours bannie après unblockLe blocage a été posé par fail2ban, pas par vous.Ce module ne libère que les blocages manuels ; les bannissements automatiques sont gérés par fail2ban séparément.
J'ai ouvert un port mais aucun trafic n'entreLa règle est dans ufw mais un pare-feu externe (security group) reste fermé.Vérifiez avec imaxe firewall rules list et ouvrez aussi le port chez votre fournisseur cloud.
J'ai perdu l'accès SSH après avoir modifié des règlesLe port 22 a été fermé ou restreint.Accédez via la console du fournisseur et réautorisez 22/tcp avec imaxe firewall allow 22/tcp.

Bloqué sur le module Firewall ?

Écrivez-nous avec la sortie de « imaxe <module> status --json » et nous vous répondons rapidement.

Contacter le support