« LINUX:Firewall » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(5 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
__FORCETOC__ | __FORCETOC__ | ||
---- | |||
''→ [[LINUX:Routeur-PPPOE|retour au Routeur-PPPOE]]'' | |||
---- | |||
=But= | =But= | ||
Etape très importante, il faut sécuriser et filtrer les connexions d'autant plus qu'on est directement connecté à internet. Vient s'ajouter le problème, propre à IPV4 de l'interfaçage entre le réseau public et le réseau privé. En outre une particularité de la connexion PPP doit être appliquée. | Etape très importante, il faut sécuriser et filtrer les connexions d'autant plus qu'on est directement connecté à internet. Vient s'ajouter le problème, propre à IPV4 de l'interfaçage entre le réseau public et le réseau privé. En outre une particularité de la connexion PPP doit être appliquée. | ||
Ligne 10 : | Ligne 13 : | ||
dnf install iptables-services | dnf install iptables-services | ||
dnf install iptables-utils | dnf install iptables-utils | ||
dnf install iptables-legacy | |||
Il comporte deux volets: | Il comporte deux volets: | ||
Ligne 131 : | Ligne 135 : | ||
[[FILE:LINUX:Fw.input. | [[FILE:LINUX:Fw.input.pdf|300px]] | ||
[[FILE:LINUX:Fw.output. | [[FILE:LINUX:Fw.output.pdf|300px]] | ||
[[FILE:LINUX:Fw.forward. | [[FILE:LINUX:Fw.forward.pdf|300px]] | ||
Ligne 142 : | Ligne 146 : | ||
* le LAN n°2 héberge un serveur SSH accessible à partir du LAN n°1 (FORWARD) | * le LAN n°2 héberge un serveur SSH accessible à partir du LAN n°1 (FORWARD) | ||
* le LAN n°2 ne peut accéder au LAN n°1 (FORWARD) La première flèche du bas allant vers la gauche passe au rouge. | * le LAN n°2 ne peut accéder au LAN n°1 (FORWARD) La première flèche du bas allant vers la gauche passe au rouge. | ||
* le LAN n°2 peut faire ses mises à jour des logficiels et de l'heure, | * le LAN n°2 peut faire ses mises à jour des logficiels et de l'heure, et les résolutions DNS vers Internet (FORWARD) | ||
* le LAN n°1 peut aller sur Internet librement (FORWARD) | * le LAN n°1 peut aller sur Internet librement (FORWARD) | ||
[[FILE:LINUX:Fw2.input. | [[FILE:LINUX:Fw2.input.pdf|300px]] | ||
[[FILE:LINUX:Fw2.output. | [[FILE:LINUX:Fw2.output.pdf|300px]] | ||
[[FILE:LINUX:Fw2.forward. | [[FILE:LINUX:Fw2.forward.pdf|300px]] | ||
Ligne 155 : | Ligne 159 : | ||
Quand une machine (client) émet une requête vers une autre machine (serveur), le statut de ce paquet est "'''NEW'''". Le serveur la refuse ou l'accepte. S'il y a acceptation, la suite du flux aura le statut "'''ESTABLISHED'''" car une connexion a été établie et il n'y a pas lieu d'en établir une seconde. Il y a quelques cas particuliers comme le protocole FTP qui utilise deux ports (21 et 20); dans ce cas un statut "RELATED" est également utilisé pour ouvrir le second port nécessaire. Le protocole ICMP en a également besoin. | Quand une machine (client) émet une requête vers une autre machine (serveur), le statut de ce paquet est "'''NEW'''". Le serveur la refuse ou l'accepte. S'il y a acceptation, la suite du flux aura le statut "'''ESTABLISHED'''" car une connexion a été établie et il n'y a pas lieu d'en établir une seconde. Il y a quelques cas particuliers comme le protocole FTP qui utilise deux ports (21 et 20); dans ce cas un statut "RELATED" est également utilisé pour ouvrir le second port nécessaire. Le protocole ICMP en a également besoin. | ||
''Remarque'': Cette approche présentée globalement doit être analysée pour chaque type de trafic (interface, protocole, machines source et cible, ports cible et source,...). | |||
Ligne 234 : | Ligne 240 : | ||
Maintenant passons au second schéma. Le bloc ci-dessus est | Maintenant passons au second schéma. Le bloc ci-dessus est à remplacer par celui-ci. Ne pas oublier d'ajouter la seconde ligne (DNAT) ajoutée dans la table NAT. (voir au chapitre précédent) | ||
---- | ---- | ||
# '''INPUT''' | # '''INPUT''' | ||
Ligne 249 : | Ligne 255 : | ||
# Accès vers Internet | # Accès vers Internet | ||
# DNS: résolution de noms de machines | # DNS: résolution de noms de machines | ||
-A OUTPUT -o ppp0 -p tcp -m tcp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | -A OUTPUT -o ppp0 -p tcp -m tcp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | ||
-A OUTPUT -o ppp0 -p udp -m udp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | -A OUTPUT -o ppp0 -p udp -m udp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | ||
# NTP: mise à l'heure | # NTP: mise à l'heure | ||
-A OUTPUT -o ppp0 -p tcp -m tcp --dport 123 -m conntrack --ctstate NEW -j ACCEPT | -A OUTPUT -o ppp0 -p tcp -m tcp --dport 123 -m conntrack --ctstate NEW -j ACCEPT | ||
Ligne 278 : | Ligne 284 : | ||
# le LAN 2 a accès | # le LAN 2 a accès | ||
# DNS: résolution de noms de machines | # DNS: résolution de noms de machines | ||
-A FORWARD -i enp4s2 -o ppp0 -s 192.168.2.0/24 -p tcp -m tcp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | -A FORWARD -i enp4s2 -o ppp0 -s 192.168.2.0/24 -p tcp -m tcp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | ||
-A FORWARD -i enp4s2 -o ppp0 -s 192.168.2.0/24 -p udp -m udp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | -A FORWARD -i enp4s2 -o ppp0 -s 192.168.2.0/24 -p udp -m udp --dport 53 -m conntrack --ctstate NEW -j ACCEPT | ||
# NTP: mise à l'heure | # NTP: mise à l'heure | ||
-A FORWARD -i enp4s2 -o ppp0 -s 192.168.2.0/24 -p tcp -m tcp --dport 123 -m conntrack --ctstate NEW -j ACCEPT | -A FORWARD -i enp4s2 -o ppp0 -s 192.168.2.0/24 -p tcp -m tcp --dport 123 -m conntrack --ctstate NEW -j ACCEPT | ||
Ligne 293 : | Ligne 299 : | ||
-A FORWARD -i enp4s2 -o enp4s0 -j DROP | -A FORWARD -i enp4s2 -o enp4s0 -j DROP | ||
---- | ---- | ||
L'option suivante signifie: | |||
* --dport: port de destination sur le serveur | * --dport: port de destination sur le serveur | ||
Remarquons que pour une question de lisibilité, de nombreuses lignes à l'action "DROP" sont ajoutées. Elles sont facultative car une action "DROP" est ajoutée d'office en fin de traitement mais avec une écriture dans le journal. (voir point suivant) | Remarquons que pour une question de lisibilité, de nombreuses lignes à l'action "DROP" sont ajoutées. Elles sont facultative car une action "DROP" est ajoutée d'office en fin de traitement mais avec une écriture dans le journal. (voir point suivant) | ||
Ligne 399 : | Ligne 406 : | ||
---- | ---- | ||
'' | ''→ [[LINUX:Routeur-PPPOE|retour au Routeur-PPPOE]]'' | ||
---- | |||
__NOEDITSECTION__ | __NOEDITSECTION__ | ||
[[Category:LINUX]] | [[Category:LINUX]] |