Problème réseau multiples

Fermé
murmures1530 Messages postés 16 Date d'inscription samedi 4 août 2012 Statut Membre Dernière intervention 25 novembre 2016 - 23 juil. 2015 à 15:18
murmures1530 Messages postés 16 Date d'inscription samedi 4 août 2012 Statut Membre Dernière intervention 25 novembre 2016 - 30 juil. 2015 à 08:48
Bonjour,

J'ai un problème colossal... J'ai navigué des jours entiers sur le net pour essayer de comprendre et de mettre en place plusieurs réseau distincts...
DMZ, règles iptables, etc... Rien à faire.

Actuellement j'ai un serveur avec 3 cartes réseau:
  • Réseau 1 : 192.168.0.0/24
  • Réseau 2 : 192.168.1.0/24
  • Réseau 3 : 192.168.2.0/24


Sur le réseau 1, j'ai le modem (0.1) et le serveur (0.2)
Sur le réseau 2, j'ai le serveur (1.1) et plusieurs PC en DHCP (1.101-131)
Sur le réseau 3, j'ai le serveur (2.1) et un émetteur WiFI non sécurisé à courte portée (2.2) sur lequel il y a plusieurs PC en DHCP (2.201-231)

Le réseau 1 apporte Internet au serveur. C'est tout. Il n'y a pas d'autres appareils.
Le réseau 2 est le réseau d'entreprise réservé au personnel, il y a env. 30 appareils (PC, imprimantes, lecteurs CB, etc...).
Le réseau 3 est le réseau pour les clients et représentants.

Le but recherché est :
  • Donner un accès Internet complet au réseau 2
  • Donner un accès Internet complet au réseau 3
  • Le réseau 2 ne doit pas pouvoir communiquer avec le réseau 3
  • Le réseau 3 ne doit pas pouvoir communiquer avec le réseau 2
  • Le serveur doit pouvoir communiquer avec le réseau 1, 2 et 3


Les règles iptables que j'ai utilisées :
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth1 -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth2 -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth1 -j REJECT
iptables -A FORWARD -i eth2 -o eth2 -j REJECT

Résultat :
Internet est disponible sur le réseau 2 et 3
Le serveur a accès à Internet et peut communiquer sur le réseau 1, 2 et 3

Problème : Le réseau 2 et 3 peuvent communiquer ensemble


Quelqu'un de plus expérimenté que moi pourrait m'aider à empêcher que ces deux réseaux puissent communiquer ensemble?

1 réponse

cocoche95 Messages postés 1134 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 27 novembre 2019 543
Modifié par cocoche95 le 23/07/2015 à 19:17
Hello,

Deux solutions, vérifier que les "Policy" soient bien définies à DROP (attention à bien identifier tous les flux à autoriser avant d'appliquer cela) ou compléter avec les lignes suivantes :
iptables -A FORWARD -i eth1 -o eth2 -j REJECT
iptables -A FORWARD -i eth2 -o eth1 -j REJECT
0
murmures1530 Messages postés 16 Date d'inscription samedi 4 août 2012 Statut Membre Dernière intervention 25 novembre 2016
24 juil. 2015 à 08:24
Salut!
Merci pour ton aide néanmoins, malheureusement ça fait partie des règles que j'ai déjà essayé- sans succès.
Les réseaux communiquent toujours entre-eux.
0
murmures1530 Messages postés 16 Date d'inscription samedi 4 août 2012 Statut Membre Dernière intervention 25 novembre 2016
Modifié par murmures1530 le 24/07/2015 à 08:28
Je te poste l'intégralité de mon script pare-feu; peut-être qu'il y a une bulle que je ne vois même plus...

#!/bin/bash

echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

iptables -F ; iptables -X ; iptables -t nat -F ; iptables -t nat -X ; iptables -t mangle -F ; iptables -t mangle -X ; iptables -t raw -F ; iptables -t raw -X

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT -i lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT
iptables -A OUTPUT -o lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT

## DNS
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 127.0.0.1 --dport 53 -j ACCEPT

iptables -A INPUT -p tcp -s 172.17.64.0/24 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 172.17.64.0/24 --dport 53 -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.0.0/24 --dport 53 -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.1.0/24 --dport 53 -j ACCEPT

## SSH
iptables -A INPUT -p tcp -s 172.17.64.0/24 --dport 22 -j ACCEPT

## Activation du forwarding au niveau du kernel
echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

iptables -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.0.0/24 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.0/24 -d 0.0.0.0/0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

iptables -A FORWARD -i eth1 -o eth1 -j REJECT
iptables -A FORWARD -i eth2 -o eth2 -j REJECT

iptables -A FORWARD -i eth1 -o eth2 -j REJECT
iptables -A FORWARD -i eth2 -o eth1 -j REJECT
0
cocoche95 Messages postés 1134 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 27 novembre 2019 543
Modifié par cocoche95 le 26/07/2015 à 10:44
Salut !

Désolé du retard, je suis en vacances ;)
Quand ton script est appliqué et que tu tapes la commande 'iptables -nvL', elle te sort quoi ? Toutes tes règles sont bien prises en compte, tel que tu le souhaites ?
0
cocoche95 Messages postés 1134 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 27 novembre 2019 543
26 juil. 2015 à 10:49
Seconde remarque : dans ton script tu as les lignes suivantes
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE


Pourquoi il n'y a pas le réseau 192.168.2.0/24 ? Dans ce cas comment cela se fait que le réseau 3 ait internet ? As-tu fais un capture de trafic pour être sur que tout passe par le serveur quand les réseaux 2 et 3 communiquent ?
0
murmures1530 Messages postés 16 Date d'inscription samedi 4 août 2012 Statut Membre Dernière intervention 25 novembre 2016
Modifié par murmures1530 le 28/07/2015 à 11:54
Salut!
Merci de te pencher sur mon cas et d'essayer de me dépanner malgré tes vacances; c'est bien sympa.
Ce message est un poil plus ancien que celui que j'ai posté sur le forum Debian (où je n'ai pas trouvé d'aide même si un membre m'a aiguillé sur l'outil route).

Les plages IP et règles iptables ne correspondent plus à ce qui est noté sur ce fil.

Voici la configuration actuelle utilisée ;

eth0 : Réseau Internet : 172.17.64.0/24 (Modem + Serveur)
eth1 : Réseau entreprise : 192.168.0.0/24 (Serveur + ~30 postes)
eth2 : Réseau public : 192.168.1.0/24 (Serveur + ~10 postes)

(Ces plages IP sont temporaires, elles vont changer par la suite, lors de la mise en production- mais ce n'est pas ça qui me poser problème)

Script iptables :

#!/bin/bash

echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

iptables -F ; iptables -X ; iptables -t nat -F ; iptables -t nat -X ; iptables -t mangle -F ; iptables -t mangle -X ; iptables -t raw -F ; iptables -t raw -X

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT -i lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT
iptables -A OUTPUT -o lo -s 127.0.0.0/8 -d 127.0.0.0/8 -j ACCEPT

## DNS
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 127.0.0.1 --dport 53 -j ACCEPT

iptables -A INPUT -p tcp -s 172.17.64.0/24 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 172.17.64.0/24 --dport 53 -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.0.0/24 --dport 53 -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 53 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.1.0/24 --dport 53 -j ACCEPT

## SSH
#iptables -A INPUT -p tcp -s 172.17.64.0/24 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 22 -j ACCEPT

## Activation du forwarding au niveau du kernel
echo 1 > /proc/sys/net/ipv4/ip_forward

## On log pas les packets
echo 0 > /proc/sys/net/ipv4/conf/all/log_martians

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE

iptables -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.0.0/24 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.0/24 -d 0.0.0.0/0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

iptables -A FORWARD -i eth0 -o eth2 -s 0.0.0.0/0 -d 192.168.1.0/24 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth2 -o eth0 -s 192.168.1.0/24 -d 0.0.0.0/0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

iptables -A FORWARD -i eth1 -o eth1 -j REJECT
iptables -A FORWARD -i eth2 -o eth2 -j REJECT

iptables -A FORWARD -i eth1 -o eth2 -j REJECT
iptables -A FORWARD -i eth2 -o eth1 -j REJECT


Mes routes :

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 172.17.64.1 0.0.0.0 UG 0 0 0 eth0
172.17.64.0 * 255.255.255.0 U 0 0 0 eth0
192.168.0.0 * 255.255.255.0 U 0 0 0 eth1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth2


Mes interfaces :

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 172.17.64.254
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0

auto eth2
iface eth2 inet static
address 192.168.1.1
netmask 255.255.255.0



Et le retour de la commande iptables -nvL n'affiche rien d'erroné mais peut-être que je loupe un truc ?


Chain INPUT (policy DROP 1604 packets, 108K bytes)
pkts bytes target prot opt in out source destination
2178 601K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
5 356 ACCEPT all -- lo * 127.0.0.0/8 127.0.0.0/8
0 0 ACCEPT tcp -- * * 127.0.0.1 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- * * 127.0.0.1 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- * * 172.17.64.0/24 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- * * 172.17.64.0/24 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- * * 192.168.0.0/24 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- * * 192.168.0.0/24 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- * * 192.168.1.0/24 0.0.0.0/0 tcp dpt:53
373 24675 ACCEPT udp -- * * 192.168.1.0/24 0.0.0.0/0 udp dpt:53
2 104 ACCEPT tcp -- * * 172.17.64.0/24 0.0.0.0/0 tcp dpt:22

Chain FORWARD (policy DROP 53 packets, 2120 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- eth0 eth1 0.0.0.0/0 192.168.0.0/ 24 state RELATED,ESTABLISHED
0 0 ACCEPT all -- eth1 eth0 192.168.0.0/24 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
237K 804M ACCEPT all -- eth0 eth2 0.0.0.0/0 192.168.1.0/ 24 state RELATED,ESTABLISHED
346K 24M ACCEPT all -- eth2 eth0 192.168.1.0/24 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
0 0 REJECT all -- eth1 eth1 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- eth2 eth2 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- eth1 eth2 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- eth2 eth1 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT 2493 packets, 163K bytes)
pkts bytes target prot opt in out source destination
1134 194K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
5 356 ACCEPT all -- * lo 127.0.0.0/8 127.0.0.0/8
root@beta:~# iptables -nvL
Chain INPUT (policy DROP 1611 packets, 109K bytes)
pkts bytes target prot opt in out source destination
2192 602K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
5 356 ACCEPT all -- lo * 127.0.0.0/8 127.0.0.0/8
0 0 ACCEPT tcp -- * * 127.0.0.1 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- * * 127.0.0.1 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- * * 172.17.64.0/24 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- * * 172.17.64.0/24 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- * * 192.168.0.0/24 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT udp -- * * 192.168.0.0/24 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- * * 192.168.1.0/24 0.0.0.0/0 tcp dpt:53
373 24675 ACCEPT udp -- * * 192.168.1.0/24 0.0.0.0/0 udp dpt:53
2 104 ACCEPT tcp -- * * 172.17.64.0/24 0.0.0.0/0 tcp dpt:22

Chain FORWARD (policy DROP 53 packets, 2120 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- eth0 eth1 0.0.0.0/0 192.168.0.0/24 state RELATED,ESTABLISHED
0 0 ACCEPT all -- eth1 eth0 192.168.0.0/24 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
237K 804M ACCEPT all -- eth0 eth2 0.0.0.0/0 192.168.1.0/24 state RELATED,ESTABLISHED
346K 24M ACCEPT all -- eth2 eth0 192.168.1.0/24 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
0 0 REJECT all -- eth1 eth1 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- eth2 eth2 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- eth1 eth2 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- eth2 eth1 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT 2493 packets, 163K bytes)
pkts bytes target prot opt in out source destination
1154 196K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
5 356 ACCEPT all -- * lo 127.0.0.0/8 127.0.0.0/8
0