1.4. Contrôle des ports à l'aide de l'interface de programmation

Les ports sont des dispositifs logiques qui permettent à un système d'exploitation de recevoir et de distinguer le trafic réseau et de le transmettre en conséquence aux services du système. Ils sont généralement représentés par un démon qui écoute sur le port, c'est-à-dire qu'il attend tout trafic arrivant sur ce port.

Normalement, les services système écoutent sur les ports standard qui leur sont réservés. Le démon httpd, par exemple, écoute sur le port 80. Toutefois, les administrateurs système configurent par défaut les démons pour qu'ils écoutent sur des ports différents afin d'améliorer la sécurité ou pour d'autres raisons.

1.4.1. Ouverture d'un port

Les ports ouverts permettent au système d'être accessible de l'extérieur, ce qui représente un risque pour la sécurité. En règle générale, il convient de garder les ports fermés et de ne les ouvrir que s'ils sont nécessaires pour certains services.

Procédure

Pour obtenir une liste des ports ouverts dans la zone actuelle :

  1. Liste de tous les ports autorisés :

    # firewall-cmd --list-ports
  2. Ajouter un port aux ports autorisés pour l'ouvrir au trafic entrant :

    # firewall-cmd --add-port=port-number/port-type

    Les types de port sont soit tcp, udp, sctp, ou dccp. Le type doit correspondre au type de communication réseau.

  3. Les nouveaux paramètres doivent être conservés :

    # firewall-cmd --runtime-to-permanent

    Les types de port sont soit tcp, udp, sctp, ou dccp. Le type doit correspondre au type de communication réseau.

1.4.2. Fermeture d'un port

Lorsqu'un port ouvert n'est plus nécessaire, fermez-le dans firewalld. Il est fortement recommandé de fermer tous les ports inutiles dès qu'ils ne sont plus utilisés, car laisser un port ouvert représente un risque pour la sécurité.

Procédure

Pour fermer un port, il faut le supprimer de la liste des ports autorisés :

  1. Liste de tous les ports autorisés :

    # firewall-cmd --list-ports
    Avertissement

    Cette commande ne vous donnera qu'une liste des ports qui ont été ouverts en tant que ports. Vous ne pourrez pas voir les ports ouverts en tant que service. Par conséquent, vous devriez envisager d'utiliser l'option --list-all au lieu de --list-ports.

  2. Retirer le port des ports autorisés pour le fermer au trafic entrant :

    # firewall-cmd --remove-port=port-number/port-type
  3. Les nouveaux paramètres doivent être conservés :

    # firewall-cmd --runtime-to-permanent