Le pare-feu est l'un des logiciels indispensables pour presque tous les serveurs Linux publics, il peut protéger le serveur des attaques réseau. De nombreuses distributions Linux sont déjà livrées avec un pare-feu, généralement iptables ; sur les distributions Fedora, CentOS et Red Hat, le logiciel de pare-feu installé par défaut est firewalld, qui peut être configuré et contrôlé via la commande "firewall-cmd".
Linux dispose d'un pare-feu et d'un logiciel antivirus. Le pare-feu est presque un logiciel incontournable pour les serveurs Linux sur l'Internet public. De plus, presque toutes les salles informatiques disposent de pare-feu matériels pour la détection des intrusions, la protection contre les attaques, etc.
Un pare-feu raisonnable est la première barrière pour votre ordinateur afin d'éviter les intrusions sur le réseau. Lorsque vous surfez sur Internet à la maison, le fournisseur de services Internet installe généralement un pare-feu dans le routage. Lorsque vous n'êtes pas chez vous, le pare-feu de votre ordinateur est le seul, il est donc important de configurer et de contrôler le pare-feu de votre ordinateur Linux. Si vous gérez un serveur Linux, il est tout aussi important de savoir comment gérer votre pare-feu afin de pouvoir protéger votre serveur du trafic illégal, qu'il soit local ou distant.
Pare-feu d'installation Linux
Normalement, iptables est le pare-feu par défaut fourni avec de nombreuses distributions Linux. C'est puissant et personnalisable, mais un peu complexe à configurer. Les développeurs ont écrit des applications frontales pour aider les utilisateurs à gérer les pare-feu, remplaçant ainsi les règles iptables encombrantes.
Sur Fedora, CentOS, Red Hat et certaines distributions similaires, le logiciel de pare-feu installé par défaut est pare-feu, qui est configuré et contrôlé via la commande pare-feu-cmd. Firewalld peut être installé sur Debian ainsi que sur la plupart des autres distributions via des référentiels de logiciels. Ubuntu est livré avec un pare-feu simple (ufw), donc pour utiliser firewalld, vous devez activer le référentiel de logiciels de l'univers :
$ sudo add-apt-repository universe $ sudo apt install firewalld
Vous devez également désactiver ufw :
$ sudo systemctl disable ufw
Il n'y a aucune raison de ne pas utiliser ufw. Il s’agit d’un puissant frontal de pare-feu. Cependant, cet article se concentre sur firewalld car la plupart des distributions le prennent en charge et il est intégré à systemd, qui est inclus dans presque toutes les distributions.
Peu importe la distribution que vous utilisez, vous devez activer le pare-feu avant qu'il puisse prendre effet, et il doit être chargé au démarrage :
$ sudo systemctl enable --now firewalld
Comprendre le domaine du pare-feu
Firewalld est conçu pour effectuer la configuration de pare-feu aussi simple que possible. Il atteint cet objectif en établissant des zones de domaine. Un domaine est un ensemble de règles générales raisonnables qui s’adaptent aux besoins quotidiens de la plupart des utilisateurs. Par défaut, il existe neuf domaines.
trusted : Acceptez toutes les connexions. Il s'agit d'un paramètre de pare-feu très permissif qui ne doit être utilisé que dans des environnements absolument fiables, comme un laboratoire de test ou un réseau domestique où tout le monde se connaît.
La plupart des connexions sont reçues dans ces trois domaines : domicile, travail et interne. Ils excluent chacun le trafic entrant provenant de ports qui ne devraient pas être actifs. Tous les trois conviennent à une utilisation dans un environnement domestique, car il n'y aura pas de trafic réseau avec des ports incertains dans un environnement domestique et vous pouvez généralement faire confiance aux autres utilisateurs du réseau domestique.
public : utilisé dans les espaces publics. Il s'agit d'un paramètre paranoïaque, utilisé lorsque vous ne faites pas confiance aux autres ordinateurs du réseau. Seules les connexions entrantes sélectionnées, courantes et les plus sécurisées, peuvent être acceptées.
dmz : DMZ signifie Zone Démilitarisée. Ce nom de domaine est souvent utilisé pour les ordinateurs accessibles au public en dehors de l'organisation et ayant un accès limité au réseau interne. Cette phrase peut être réécrite ainsi : Bien que peu pratique pour les ordinateurs personnels, c'est un choix vital pour certains serveurs.
externe : Utilisé pour les réseaux externes, le masquage sera activé (l'adresse de votre réseau privé est mappée sur une adresse IP externe et masquée). Comme dans une DMZ, seules certaines connexions entrantes sont acceptées, y compris SSH.
bloquer : n'acceptez que les connexions réseau initialisées dans ce système. Toute connexion réseau sera refusée et un message icmp-host-prohibid sera envoyé. Il s'agit d'un paramètre très important, notamment pour les ordinateurs personnels ou certains types de serveurs situés dans des environnements non fiables ou non sécurisés en raison de leur haut niveau de paranoïa.
drop : tous les paquets réseau reçus sont abandonnés sans aucune réponse. Seules les connexions réseau sortantes sont disponibles. Une solution plus extrême que ce paramètre consiste à désactiver le WiFi et à débrancher le câble réseau.
Vous pouvez afficher toutes les zones de votre distribution ou afficher les paramètres de l'administrateur via le fichier de configuration /usr/lib/firewalld/zones. Par exemple, la zone FedoraWorkstation fournie avec Fedora 31 est la suivante :
$ cat /usr/lib/firewalld/zones/FedoraWorkstation.xml <?xml version="1.0" encoding="utf-8"?> <zone> <short>Fedora Workstation</short> <description>Unsolicited incoming network packets are rejected from port 1 to 1024, except for select network services. Incoming packets that are related to outgoing network connections are accepted. Outgoing network connections are allowed.</description> <service name="dhcpv6-client"/> <service name="ssh"/> <service name="samba-client"/> <port protocol="udp" port="1025-65535"/> <port protocol="tcp" port="1025-65535"/> </zone>
Obtenir la zone actuelle
À tout moment, vous pouvez utiliser l'option --get-active-zones pour voir dans quelle zone vous vous trouvez :
$ sudo firewall-cmd --get-active-zones
Résultats de sortie, il y aura le nom du domaine actuellement actif et l'interface réseau qui lui est attribuée. Sur un ordinateur portable, être dans le domaine par défaut signifie généralement que vous disposez d'une carte WiFi :
FedoraWorkstation interfaces: wlp61s0
Modifiez votre domaine actuel
要更改你的域,请将网络接口重新分配到不同的域。举个例子,将 wlp61s0 网卡修改为公用域
$ sudo firewall-cmd --change-interface=wlp61s0 --zone=public
你可以在任何时候、任何理由改变一个接口的活动域 —— 无论你是要去咖啡馆,觉得需要增加笔记本的安全策略,还是要去上班,需要打开一些端口进入内网,或者其他原因。在你凭记忆学会 firewall-cmd 命令之前,你只要记住了关键词 change 和 zone,就可以慢慢掌握,因为按下 Tab 时,它的选项会自动补全。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!