On Fri, 29 Dec 2006 14:57:54 +0100, Pascal Hambourg
:1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
Yep, mais avec la solution de "sansflotusspam", le PC Windows est
physiquement branché sur la freebox. Donc, soit on fait confiance à la
freebox et on n'a pas besoin d'un truc aussi compliqué, soit on ne lui
fait pas confiance et la solution est mauvaise.
Si on veut utiliser une machine Linux pour filtrer et protéger une
machine Windows, il faut AMHA que la passerelle Linux ait deux cartes
réseau, et que les deux sous-réseaux soient physiquement séparés.
On Fri, 29 Dec 2006 14:57:54 +0100, Pascal Hambourg
<boite-a-spam@plouf.fr.eu.org>:
1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
Yep, mais avec la solution de "sansflotusspam", le PC Windows est
physiquement branché sur la freebox. Donc, soit on fait confiance à la
freebox et on n'a pas besoin d'un truc aussi compliqué, soit on ne lui
fait pas confiance et la solution est mauvaise.
Si on veut utiliser une machine Linux pour filtrer et protéger une
machine Windows, il faut AMHA que la passerelle Linux ait deux cartes
réseau, et que les deux sous-réseaux soient physiquement séparés.
On Fri, 29 Dec 2006 14:57:54 +0100, Pascal Hambourg
:1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
Yep, mais avec la solution de "sansflotusspam", le PC Windows est
physiquement branché sur la freebox. Donc, soit on fait confiance à la
freebox et on n'a pas besoin d'un truc aussi compliqué, soit on ne lui
fait pas confiance et la solution est mauvaise.
Si on veut utiliser une machine Linux pour filtrer et protéger une
machine Windows, il faut AMHA que la passerelle Linux ait deux cartes
réseau, et que les deux sous-réseaux soient physiquement séparés.
Salut,
Je ne vois pas bien ce que ta solution apporte par rapport à une
config classique (tout en 192.168.0.x, et la freebox en routeur).
1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
2) La machine Linux a l'adresse IP publique de la connexion et une
connectivité complète sans NAT.
Salut,
Je ne vois pas bien ce que ta solution apporte par rapport à une
config classique (tout en 192.168.0.x, et la freebox en routeur).
1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
2) La machine Linux a l'adresse IP publique de la connexion et une
connectivité complète sans NAT.
Salut,
Je ne vois pas bien ce que ta solution apporte par rapport à une
config classique (tout en 192.168.0.x, et la freebox en routeur).
1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
2) La machine Linux a l'adresse IP publique de la connexion et une
connectivité complète sans NAT.
la freebox sur la linuxbox en ethernet, eth0 et 192.168.0.1 (static, pas
dhcp, dans ifcfg-eth0),
en câble droit, gateway 192.168.0.250 (= la gateway
de la freebox, à régler sur le site de free, compte perso)
une carte ethernet (ou le circuit ethernet de la carte mère, généralement un
realtek ou un via-rhine) en eth1 192.168.10.1, un câble droit sur le hub,
la win$box sur le hub en 192.168.10.2, câble ethernet droit.
les deux segments de réseau (192.168.0.0 et 192.168.10.0) , c'est exprès
pour faire faire le routage et les filtres iptables/netfilter par la
linuxbox.
activer les règles suivantes (au minimum) sur la linuxbox :
#!/bin/sh
# Le script commence par effacer les règles de filtrage actuelles
/sbin/iptables -F
/sbin/iptables -t nat -F
# Effacement des chaines existantes
/sbin/iptables -X
# on charge les modules NAT
modprobe iptable_nat
modprobe ip_nat_irc
modprobe iptable_filter
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_state
modprobe iptable_mangle
modprobe iptables_conntrack_rtsp
# on active l'IP-forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# on accepte les paquets relatifs aux connexions déjà ouvertes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# on accepte tout ce qui se passe sur lo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
# on accepte tout ce qui se passe sur le reseau local 192.168.10.0
/sbin/iptables -A INPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A OUTPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
# dans la table NAT (-t nat), on ajoute une règle (-A) pour masquer le
POSTROUTING
/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
# éventuellement, on autorise les requêtes dhcp
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootps --dport bootpc -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootps --dport bootpc -j
ACCEPT
# on autorise les requêtes dns venat de 192.168.10.0
/sbin/iptables -A INPUT -i eth1 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
# On DNAT la freebox
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -d
212.27.38.253 -j DNAT -d 192.168.0.250
# On autorise udp sur les ports utilisés par freeplayer
/sbin/iptables -A INPUT -p udp -m udp -s 192.168.0.250 --dport 32000:34000
-j ACCEPT
# On ouvre le port 8080 et le 1234
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 1234 - ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 1234 -j ACCEPT
# ... ainsi que les réponses
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 1234 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 1234 -j ACCEPT
# On ouvre le port 631 pour cups sur le réseau local 192.168.10.0
/sbin/iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 631 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.0/24 --sport 631 -j ACCEPT
^^^
# ON REFUSE TOUT CE QUI VIENDRAIT D'UN LAN PRIVE EN PROVENANCE D'INTERNET
/sbin/iptables -A FORWARD -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 192.168.0.0/16 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i eth0 -j REJECT
# ON REFUSE TOUT CE QUI IRAIT VERS UN LAN PRIVE EN DIRECTION D'INTERNET
/sbin/iptables -A FORWARD -d 10.0.0.0/8 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 172.16.0.0/12 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 192.168.10.0/16 -o eth0 -j DROP
au passage, toutes remarques, observations, suggestions, des contributeurs
du forum sont acceptées avec plaisir.
la freebox sur la linuxbox en ethernet, eth0 et 192.168.0.1 (static, pas
dhcp, dans ifcfg-eth0),
en câble droit, gateway 192.168.0.250 (= la gateway
de la freebox, à régler sur le site de free, compte perso)
une carte ethernet (ou le circuit ethernet de la carte mère, généralement un
realtek ou un via-rhine) en eth1 192.168.10.1, un câble droit sur le hub,
la win$box sur le hub en 192.168.10.2, câble ethernet droit.
les deux segments de réseau (192.168.0.0 et 192.168.10.0) , c'est exprès
pour faire faire le routage et les filtres iptables/netfilter par la
linuxbox.
activer les règles suivantes (au minimum) sur la linuxbox :
#!/bin/sh
# Le script commence par effacer les règles de filtrage actuelles
/sbin/iptables -F
/sbin/iptables -t nat -F
# Effacement des chaines existantes
/sbin/iptables -X
# on charge les modules NAT
modprobe iptable_nat
modprobe ip_nat_irc
modprobe iptable_filter
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_state
modprobe iptable_mangle
modprobe iptables_conntrack_rtsp
# on active l'IP-forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# on accepte les paquets relatifs aux connexions déjà ouvertes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# on accepte tout ce qui se passe sur lo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
# on accepte tout ce qui se passe sur le reseau local 192.168.10.0
/sbin/iptables -A INPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A OUTPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
# dans la table NAT (-t nat), on ajoute une règle (-A) pour masquer le
POSTROUTING
/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
# éventuellement, on autorise les requêtes dhcp
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootps --dport bootpc -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootps --dport bootpc -j
ACCEPT
# on autorise les requêtes dns venat de 192.168.10.0
/sbin/iptables -A INPUT -i eth1 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
# On DNAT la freebox
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -d
212.27.38.253 -j DNAT -d 192.168.0.250
# On autorise udp sur les ports utilisés par freeplayer
/sbin/iptables -A INPUT -p udp -m udp -s 192.168.0.250 --dport 32000:34000
-j ACCEPT
# On ouvre le port 8080 et le 1234
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 1234 - ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 1234 -j ACCEPT
# ... ainsi que les réponses
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 1234 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 1234 -j ACCEPT
# On ouvre le port 631 pour cups sur le réseau local 192.168.10.0
/sbin/iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 631 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.0/24 --sport 631 -j ACCEPT
^^^
# ON REFUSE TOUT CE QUI VIENDRAIT D'UN LAN PRIVE EN PROVENANCE D'INTERNET
/sbin/iptables -A FORWARD -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 192.168.0.0/16 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i eth0 -j REJECT
# ON REFUSE TOUT CE QUI IRAIT VERS UN LAN PRIVE EN DIRECTION D'INTERNET
/sbin/iptables -A FORWARD -d 10.0.0.0/8 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 172.16.0.0/12 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 192.168.10.0/16 -o eth0 -j DROP
au passage, toutes remarques, observations, suggestions, des contributeurs
du forum sont acceptées avec plaisir.
la freebox sur la linuxbox en ethernet, eth0 et 192.168.0.1 (static, pas
dhcp, dans ifcfg-eth0),
en câble droit, gateway 192.168.0.250 (= la gateway
de la freebox, à régler sur le site de free, compte perso)
une carte ethernet (ou le circuit ethernet de la carte mère, généralement un
realtek ou un via-rhine) en eth1 192.168.10.1, un câble droit sur le hub,
la win$box sur le hub en 192.168.10.2, câble ethernet droit.
les deux segments de réseau (192.168.0.0 et 192.168.10.0) , c'est exprès
pour faire faire le routage et les filtres iptables/netfilter par la
linuxbox.
activer les règles suivantes (au minimum) sur la linuxbox :
#!/bin/sh
# Le script commence par effacer les règles de filtrage actuelles
/sbin/iptables -F
/sbin/iptables -t nat -F
# Effacement des chaines existantes
/sbin/iptables -X
# on charge les modules NAT
modprobe iptable_nat
modprobe ip_nat_irc
modprobe iptable_filter
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_state
modprobe iptable_mangle
modprobe iptables_conntrack_rtsp
# on active l'IP-forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# on accepte les paquets relatifs aux connexions déjà ouvertes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# on accepte tout ce qui se passe sur lo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
# on accepte tout ce qui se passe sur le reseau local 192.168.10.0
/sbin/iptables -A INPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A OUTPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
# dans la table NAT (-t nat), on ajoute une règle (-A) pour masquer le
POSTROUTING
/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
# éventuellement, on autorise les requêtes dhcp
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootps --dport bootpc -j
ACCEPT
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootps --dport bootpc -j
ACCEPT
# on autorise les requêtes dns venat de 192.168.10.0
/sbin/iptables -A INPUT -i eth1 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
# On DNAT la freebox
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -d
212.27.38.253 -j DNAT -d 192.168.0.250
# On autorise udp sur les ports utilisés par freeplayer
/sbin/iptables -A INPUT -p udp -m udp -s 192.168.0.250 --dport 32000:34000
-j ACCEPT
# On ouvre le port 8080 et le 1234
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 1234 - ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 1234 -j ACCEPT
# ... ainsi que les réponses
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 1234 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 1234 -j ACCEPT
# On ouvre le port 631 pour cups sur le réseau local 192.168.10.0
/sbin/iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 631 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.0/24 --sport 631 -j ACCEPT
^^^
# ON REFUSE TOUT CE QUI VIENDRAIT D'UN LAN PRIVE EN PROVENANCE D'INTERNET
/sbin/iptables -A FORWARD -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 192.168.0.0/16 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i eth0 -j REJECT
# ON REFUSE TOUT CE QUI IRAIT VERS UN LAN PRIVE EN DIRECTION D'INTERNET
/sbin/iptables -A FORWARD -d 10.0.0.0/8 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 172.16.0.0/12 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 192.168.10.0/16 -o eth0 -j DROP
au passage, toutes remarques, observations, suggestions, des contributeurs
du forum sont acceptées avec plaisir.
la freebox sur la linuxbox en ethernet, eth0 et 192.168.0.1 (static, pas
dhcp, dans ifcfg-eth0),
Pourquoi pas en DHCP ?en câble droit, gateway 192.168.0.250 (= la gateway
de la freebox, à régler sur le site de free, compte perso)
Pourquoi mettre la Freebox en mode routeur et introduire un étage de NAT
supplémentaire (et inutile AMA) au lieu de donner l'adresse publique à
la machine Linux ?une carte ethernet (ou le circuit ethernet de la carte mère, généralement
un realtek ou un via-rhine) en eth1 192.168.10.1, un câble droit sur le
hub,
la win$box sur le hub en 192.168.10.2, câble ethernet droit.
les deux segments de réseau (192.168.0.0 et 192.168.10.0) , c'est exprès
pour faire faire le routage et les filtres iptables/netfilter par la
linuxbox.
activer les règles suivantes (au minimum) sur la linuxbox :
#!/bin/sh
# Le script commence par effacer les règles de filtrage actuelles
/sbin/iptables -F
/sbin/iptables -t nat -F
# Effacement des chaines existantes
/sbin/iptables -X
Je ne vois pas la définition des politiques par défaut des chaînes.
# on charge les modules NAT
modprobe iptable_nat
modprobe ip_nat_irc
modprobe iptable_filter
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_state
modprobe iptable_mangle
Pourquoi précharger des modules comme iptable_nat ou ip_conntrack qui
sont automatiquement chargés par les modules de suivi de connexion et de
NAT et les règles iptables qui en ont besoin ?
modprobe iptables_conntrack_rtsp
Il me semble que c'est plutôt "ip_conntrack_rtsp". Pourquoi ne pas aussi
charger son alter ego iptables_nat_rtsp ?
D'autre part, il faut noter
que ces modules ne sont disponibles que si le le patch rtsp-conntrack,
qui n'est pas encore inclus dans les source du noyau standard à ma
connaissance, a été appliqué au noyau.
# on active l'IP-forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# on accepte les paquets relatifs aux connexions déjà ouvertes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Il manque la même dans la chaîne FORWARD.
# on accepte tout ce qui se passe sur lo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
# on accepte tout ce qui se passe sur le reseau local 192.168.10.0
/sbin/iptables -A INPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A OUTPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
Ce n'est pas suffisant de se baser uniquement sur l'adresse source : il
faut aussi prendre en compte l'interface d'entrée et/ou de sortie pour
éviter les cas d'usurpation d'adresse IP. Ces règles acceptent un paquet
qui arrive de l'extérieur par eth0 avec une une adresse IP source dans
la plage du LAN. Le LAN, c'est 192.168.10.0/24 *sur eth1*. A la limite,
j'ai tendance à penser que l'interface est plus importante que l'adresse.
# dans la table NAT (-t nat), on ajoute une règle (-A) pour masquer le
POSTROUTING
/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
J'ajouterais "-i eth0" à cette règle pour ne prendre en compte que les
paquets établissant une connexion vers l'extérieur. Inutile de masquer
les communications de la machine vers le LAN.
# éventuellement, on autorise les requêtes dhcp
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j
ACCEPT
A condition que la machine Linux fasse tourner un serveur DHCP sur son
interface LAN.
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j
ACCEPT
Euh, du DHCP en TCP ?
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootps --dport bootpc -j
ACCEPT
Pour quoi faire ? Recevoir des réponses d'un serveur DHCP supposerait
que la machine émette des requêtes DHCP sur son interface LAN.
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootps --dport bootpc -j
ACCEPT
Euh, du DHCP en TCP (bis) ?# on autorise les requêtes dns venat de 192.168.10.0
/sbin/iptables -A INPUT -i eth1 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
Utile seulement si la machine fait tourner un serveur DNS genre bind ou
un relais DNS genre dsnmasq. Mais inutile en fait puisqu'une règle
précédente a déjà accepté les paquets provenant du LAN.# On DNAT la freebox
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -d
212.27.38.253 -j DNAT -d 192.168.0.250
Pourquoi DNATer l'adresse IP Freeplayer en entrée sur l'interface WAN ?
Je ne vois pas comment un paquet valide pourrait déclencher cette règle.
# On autorise udp sur les ports utilisés par freeplayer
/sbin/iptables -A INPUT -p udp -m udp -s 192.168.0.250 --dport
32000:34000 -j ACCEPT
Le module de suivi de connexion RTSP chargé plus haut n'est pas censé
s'occuper de ça automatiquement ?
# On ouvre le port 8080 et le 1234
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 1234 - ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 1234 -j ACCEPT
Indépendamment du fait que je n'ai pas la moindre idée des services
associés à ces règles, j'avoue que je ne comprends pas pourquoi accepter
en entrée des paquets dont l'adresse IP source appartient à la machine
elle-même. De tels paquets ne peuvent être valides que s'ils passent par
l'interface de loopback, et des règles plus génériques pour les accepter
sont déjà en place.
# ... ainsi que les réponses
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 1234 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 1234 -j ACCEPT
Inutile voire nuisible. Les réponses sont normalement déjà prises en
charge par des règles ESTABLISHED, et se baser sur le seul port source
pour déterminer qu'un paquet est une réponse est une erreur.
# On ouvre le port 631 pour cups sur le réseau local 192.168.10.0
/sbin/iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 631 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.0/24 --sport 631 -j ACCEPT
^^^
Typo probable. Et je réitère mes remarques sur la nécessité de prendre
en compte l'état de suivi de connexion pour reconnaître les paquets de
réponse et la nécessité de spécifier l'interface d'entrée et/ou de
sortie en plus de l'adresse source et/ou destination.
# ON REFUSE TOUT CE QUI VIENDRAIT D'UN LAN PRIVE EN PROVENANCE D'INTERNET
/sbin/iptables -A FORWARD -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 192.168.0.0/16 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i eth0 -j REJECT
Trop tard en ce qui concerne 192.168.10.0/24, des règles précédentes
l'ont déjà accepté sans vérifier l'interface. ;-)
Et si je ne m'abuse, le réseau entre interfae WAN et Freebox est aussi
en adressage privé, donc ça va bloquer les communications de la machine
vers l'extérieur.
Accessoirement, DROP est préférable à REJECT pour le traitement des
adresses sources invalides. Il ne sert à rien d'envoyer un message
d'erreur ICMP dans ce cas, bien au contraire. C'est comme les bounces en
SMTP en cas d'usurpation de l'adresse d'expéditeur.# ON REFUSE TOUT CE QUI IRAIT VERS UN LAN PRIVE EN DIRECTION D'INTERNET
/sbin/iptables -A FORWARD -d 10.0.0.0/8 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 172.16.0.0/12 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 192.168.10.0/16 -o eth0 -j DROP
Mêmes remarques que précédemment, sauf pour la cible : REJECT est ici
préférable à DROP pour signaler à la source présumée valide que la
destination est injoignable.
[...]au passage, toutes remarques, observations, suggestions, des
contributeurs du forum sont acceptées avec plaisir.
Serviteur. :-)
la freebox sur la linuxbox en ethernet, eth0 et 192.168.0.1 (static, pas
dhcp, dans ifcfg-eth0),
Pourquoi pas en DHCP ?
en câble droit, gateway 192.168.0.250 (= la gateway
de la freebox, à régler sur le site de free, compte perso)
Pourquoi mettre la Freebox en mode routeur et introduire un étage de NAT
supplémentaire (et inutile AMA) au lieu de donner l'adresse publique à
la machine Linux ?
une carte ethernet (ou le circuit ethernet de la carte mère, généralement
un realtek ou un via-rhine) en eth1 192.168.10.1, un câble droit sur le
hub,
la win$box sur le hub en 192.168.10.2, câble ethernet droit.
les deux segments de réseau (192.168.0.0 et 192.168.10.0) , c'est exprès
pour faire faire le routage et les filtres iptables/netfilter par la
linuxbox.
activer les règles suivantes (au minimum) sur la linuxbox :
#!/bin/sh
# Le script commence par effacer les règles de filtrage actuelles
/sbin/iptables -F
/sbin/iptables -t nat -F
# Effacement des chaines existantes
/sbin/iptables -X
Je ne vois pas la définition des politiques par défaut des chaînes.
# on charge les modules NAT
modprobe iptable_nat
modprobe ip_nat_irc
modprobe iptable_filter
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_state
modprobe iptable_mangle
Pourquoi précharger des modules comme iptable_nat ou ip_conntrack qui
sont automatiquement chargés par les modules de suivi de connexion et de
NAT et les règles iptables qui en ont besoin ?
modprobe iptables_conntrack_rtsp
Il me semble que c'est plutôt "ip_conntrack_rtsp". Pourquoi ne pas aussi
charger son alter ego iptables_nat_rtsp ?
D'autre part, il faut noter
que ces modules ne sont disponibles que si le le patch rtsp-conntrack,
qui n'est pas encore inclus dans les source du noyau standard à ma
connaissance, a été appliqué au noyau.
# on active l'IP-forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# on accepte les paquets relatifs aux connexions déjà ouvertes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Il manque la même dans la chaîne FORWARD.
# on accepte tout ce qui se passe sur lo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
# on accepte tout ce qui se passe sur le reseau local 192.168.10.0
/sbin/iptables -A INPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A OUTPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
Ce n'est pas suffisant de se baser uniquement sur l'adresse source : il
faut aussi prendre en compte l'interface d'entrée et/ou de sortie pour
éviter les cas d'usurpation d'adresse IP. Ces règles acceptent un paquet
qui arrive de l'extérieur par eth0 avec une une adresse IP source dans
la plage du LAN. Le LAN, c'est 192.168.10.0/24 *sur eth1*. A la limite,
j'ai tendance à penser que l'interface est plus importante que l'adresse.
# dans la table NAT (-t nat), on ajoute une règle (-A) pour masquer le
POSTROUTING
/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
J'ajouterais "-i eth0" à cette règle pour ne prendre en compte que les
paquets établissant une connexion vers l'extérieur. Inutile de masquer
les communications de la machine vers le LAN.
# éventuellement, on autorise les requêtes dhcp
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j
ACCEPT
A condition que la machine Linux fasse tourner un serveur DHCP sur son
interface LAN.
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j
ACCEPT
Euh, du DHCP en TCP ?
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootps --dport bootpc -j
ACCEPT
Pour quoi faire ? Recevoir des réponses d'un serveur DHCP supposerait
que la machine émette des requêtes DHCP sur son interface LAN.
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootps --dport bootpc -j
ACCEPT
Euh, du DHCP en TCP (bis) ?
# on autorise les requêtes dns venat de 192.168.10.0
/sbin/iptables -A INPUT -i eth1 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
Utile seulement si la machine fait tourner un serveur DNS genre bind ou
un relais DNS genre dsnmasq. Mais inutile en fait puisqu'une règle
précédente a déjà accepté les paquets provenant du LAN.
# On DNAT la freebox
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -d
212.27.38.253 -j DNAT -d 192.168.0.250
Pourquoi DNATer l'adresse IP Freeplayer en entrée sur l'interface WAN ?
Je ne vois pas comment un paquet valide pourrait déclencher cette règle.
# On autorise udp sur les ports utilisés par freeplayer
/sbin/iptables -A INPUT -p udp -m udp -s 192.168.0.250 --dport
32000:34000 -j ACCEPT
Le module de suivi de connexion RTSP chargé plus haut n'est pas censé
s'occuper de ça automatiquement ?
# On ouvre le port 8080 et le 1234
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 1234 - ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 1234 -j ACCEPT
Indépendamment du fait que je n'ai pas la moindre idée des services
associés à ces règles, j'avoue que je ne comprends pas pourquoi accepter
en entrée des paquets dont l'adresse IP source appartient à la machine
elle-même. De tels paquets ne peuvent être valides que s'ils passent par
l'interface de loopback, et des règles plus génériques pour les accepter
sont déjà en place.
# ... ainsi que les réponses
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 1234 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 1234 -j ACCEPT
Inutile voire nuisible. Les réponses sont normalement déjà prises en
charge par des règles ESTABLISHED, et se baser sur le seul port source
pour déterminer qu'un paquet est une réponse est une erreur.
# On ouvre le port 631 pour cups sur le réseau local 192.168.10.0
/sbin/iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 631 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.0/24 --sport 631 -j ACCEPT
^^^
Typo probable. Et je réitère mes remarques sur la nécessité de prendre
en compte l'état de suivi de connexion pour reconnaître les paquets de
réponse et la nécessité de spécifier l'interface d'entrée et/ou de
sortie en plus de l'adresse source et/ou destination.
# ON REFUSE TOUT CE QUI VIENDRAIT D'UN LAN PRIVE EN PROVENANCE D'INTERNET
/sbin/iptables -A FORWARD -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 192.168.0.0/16 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i eth0 -j REJECT
Trop tard en ce qui concerne 192.168.10.0/24, des règles précédentes
l'ont déjà accepté sans vérifier l'interface. ;-)
Et si je ne m'abuse, le réseau entre interfae WAN et Freebox est aussi
en adressage privé, donc ça va bloquer les communications de la machine
vers l'extérieur.
Accessoirement, DROP est préférable à REJECT pour le traitement des
adresses sources invalides. Il ne sert à rien d'envoyer un message
d'erreur ICMP dans ce cas, bien au contraire. C'est comme les bounces en
SMTP en cas d'usurpation de l'adresse d'expéditeur.
# ON REFUSE TOUT CE QUI IRAIT VERS UN LAN PRIVE EN DIRECTION D'INTERNET
/sbin/iptables -A FORWARD -d 10.0.0.0/8 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 172.16.0.0/12 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 192.168.10.0/16 -o eth0 -j DROP
Mêmes remarques que précédemment, sauf pour la cible : REJECT est ici
préférable à DROP pour signaler à la source présumée valide que la
destination est injoignable.
[...]
au passage, toutes remarques, observations, suggestions, des
contributeurs du forum sont acceptées avec plaisir.
Serviteur. :-)
la freebox sur la linuxbox en ethernet, eth0 et 192.168.0.1 (static, pas
dhcp, dans ifcfg-eth0),
Pourquoi pas en DHCP ?en câble droit, gateway 192.168.0.250 (= la gateway
de la freebox, à régler sur le site de free, compte perso)
Pourquoi mettre la Freebox en mode routeur et introduire un étage de NAT
supplémentaire (et inutile AMA) au lieu de donner l'adresse publique à
la machine Linux ?une carte ethernet (ou le circuit ethernet de la carte mère, généralement
un realtek ou un via-rhine) en eth1 192.168.10.1, un câble droit sur le
hub,
la win$box sur le hub en 192.168.10.2, câble ethernet droit.
les deux segments de réseau (192.168.0.0 et 192.168.10.0) , c'est exprès
pour faire faire le routage et les filtres iptables/netfilter par la
linuxbox.
activer les règles suivantes (au minimum) sur la linuxbox :
#!/bin/sh
# Le script commence par effacer les règles de filtrage actuelles
/sbin/iptables -F
/sbin/iptables -t nat -F
# Effacement des chaines existantes
/sbin/iptables -X
Je ne vois pas la définition des politiques par défaut des chaînes.
# on charge les modules NAT
modprobe iptable_nat
modprobe ip_nat_irc
modprobe iptable_filter
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ipt_state
modprobe iptable_mangle
Pourquoi précharger des modules comme iptable_nat ou ip_conntrack qui
sont automatiquement chargés par les modules de suivi de connexion et de
NAT et les règles iptables qui en ont besoin ?
modprobe iptables_conntrack_rtsp
Il me semble que c'est plutôt "ip_conntrack_rtsp". Pourquoi ne pas aussi
charger son alter ego iptables_nat_rtsp ?
D'autre part, il faut noter
que ces modules ne sont disponibles que si le le patch rtsp-conntrack,
qui n'est pas encore inclus dans les source du noyau standard à ma
connaissance, a été appliqué au noyau.
# on active l'IP-forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# on accepte les paquets relatifs aux connexions déjà ouvertes
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Il manque la même dans la chaîne FORWARD.
# on accepte tout ce qui se passe sur lo
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
# on accepte tout ce qui se passe sur le reseau local 192.168.10.0
/sbin/iptables -A INPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A OUTPUT -s 192.168.10.0/24 -j ACCEPT
/sbin/iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
Ce n'est pas suffisant de se baser uniquement sur l'adresse source : il
faut aussi prendre en compte l'interface d'entrée et/ou de sortie pour
éviter les cas d'usurpation d'adresse IP. Ces règles acceptent un paquet
qui arrive de l'extérieur par eth0 avec une une adresse IP source dans
la plage du LAN. Le LAN, c'est 192.168.10.0/24 *sur eth1*. A la limite,
j'ai tendance à penser que l'interface est plus importante que l'adresse.
# dans la table NAT (-t nat), on ajoute une règle (-A) pour masquer le
POSTROUTING
/sbin/iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE
J'ajouterais "-i eth0" à cette règle pour ne prendre en compte que les
paquets établissant une connexion vers l'extérieur. Inutile de masquer
les communications de la machine vers le LAN.
# éventuellement, on autorise les requêtes dhcp
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootpc --dport bootps -j
ACCEPT
A condition que la machine Linux fasse tourner un serveur DHCP sur son
interface LAN.
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootpc --dport bootps -j
ACCEPT
Euh, du DHCP en TCP ?
#/sbin/iptables -A INPUT -i eth1 -p udp --sport bootps --dport bootpc -j
ACCEPT
Pour quoi faire ? Recevoir des réponses d'un serveur DHCP supposerait
que la machine émette des requêtes DHCP sur son interface LAN.
#/sbin/iptables -A INPUT -i eth1 -p tcp --sport bootps --dport bootpc -j
ACCEPT
Euh, du DHCP en TCP (bis) ?# on autorise les requêtes dns venat de 192.168.10.0
/sbin/iptables -A INPUT -i eth1 -p udp --dport domain -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp --dport domain -j ACCEPT
Utile seulement si la machine fait tourner un serveur DNS genre bind ou
un relais DNS genre dsnmasq. Mais inutile en fait puisqu'une règle
précédente a déjà accepté les paquets provenant du LAN.# On DNAT la freebox
/sbin/iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -d
212.27.38.253 -j DNAT -d 192.168.0.250
Pourquoi DNATer l'adresse IP Freeplayer en entrée sur l'interface WAN ?
Je ne vois pas comment un paquet valide pourrait déclencher cette règle.
# On autorise udp sur les ports utilisés par freeplayer
/sbin/iptables -A INPUT -p udp -m udp -s 192.168.0.250 --dport
32000:34000 -j ACCEPT
Le module de suivi de connexion RTSP chargé plus haut n'est pas censé
s'occuper de ça automatiquement ?
# On ouvre le port 8080 et le 1234
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 8080 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 192.168.0.1 --dport 1234 - ACCEPT
/sbin/iptables -A INPUT -o udp -s 192.168.0.1 --dport 1234 -j ACCEPT
Indépendamment du fait que je n'ai pas la moindre idée des services
associés à ces règles, j'avoue que je ne comprends pas pourquoi accepter
en entrée des paquets dont l'adresse IP source appartient à la machine
elle-même. De tels paquets ne peuvent être valides que s'ils passent par
l'interface de loopback, et des règles plus génériques pour les accepter
sont déjà en place.
# ... ainsi que les réponses
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 8080 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.1 --sport 1234 -j ACCEPT
/sbin/iptables -A OUTPUT -p udp -d 192.168.0.1 --sport 1234 -j ACCEPT
Inutile voire nuisible. Les réponses sont normalement déjà prises en
charge par des règles ESTABLISHED, et se baser sur le seul port source
pour déterminer qu'un paquet est une réponse est une erreur.
# On ouvre le port 631 pour cups sur le réseau local 192.168.10.0
/sbin/iptables -A INPUT -p tcp -s 192.168.10.0/24 --dport 631 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -d 192.168.0.0/24 --sport 631 -j ACCEPT
^^^
Typo probable. Et je réitère mes remarques sur la nécessité de prendre
en compte l'état de suivi de connexion pour reconnaître les paquets de
réponse et la nécessité de spécifier l'interface d'entrée et/ou de
sortie en plus de l'adresse source et/ou destination.
# ON REFUSE TOUT CE QUI VIENDRAIT D'UN LAN PRIVE EN PROVENANCE D'INTERNET
/sbin/iptables -A FORWARD -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i eth0 -j REJECT
/sbin/iptables -A FORWARD -s 192.168.0.0/16 -i eth0 -j REJECT
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i eth0 -j REJECT
Trop tard en ce qui concerne 192.168.10.0/24, des règles précédentes
l'ont déjà accepté sans vérifier l'interface. ;-)
Et si je ne m'abuse, le réseau entre interfae WAN et Freebox est aussi
en adressage privé, donc ça va bloquer les communications de la machine
vers l'extérieur.
Accessoirement, DROP est préférable à REJECT pour le traitement des
adresses sources invalides. Il ne sert à rien d'envoyer un message
d'erreur ICMP dans ce cas, bien au contraire. C'est comme les bounces en
SMTP en cas d'usurpation de l'adresse d'expéditeur.# ON REFUSE TOUT CE QUI IRAIT VERS UN LAN PRIVE EN DIRECTION D'INTERNET
/sbin/iptables -A FORWARD -d 10.0.0.0/8 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 172.16.0.0/12 -o eth0 -j DROP
/sbin/iptables -A FORWARD -d 192.168.10.0/16 -o eth0 -j DROP
Mêmes remarques que précédemment, sauf pour la cible : REJECT est ici
préférable à DROP pour signaler à la source présumée valide que la
destination est injoignable.
[...]au passage, toutes remarques, observations, suggestions, des
contributeurs du forum sont acceptées avec plaisir.
Serviteur. :-)
Je ne vois pas bien ce que ta solution apporte par rapport à une
config classique (tout en 192.168.0.x, et la freebox en routeur).
2) La machine Linux a l'adresse IP publique de la connexion et une
connectivité complète sans NAT.
Je retire. Apparemment la solution de sansflotusspam suppose que la
Freebox est en mode routeur, ce dont je ne vois pas l'intérêt.
Je ne vois pas bien ce que ta solution apporte par rapport à une
config classique (tout en 192.168.0.x, et la freebox en routeur).
2) La machine Linux a l'adresse IP publique de la connexion et une
connectivité complète sans NAT.
Je retire. Apparemment la solution de sansflotusspam suppose que la
Freebox est en mode routeur, ce dont je ne vois pas l'intérêt.
Je ne vois pas bien ce que ta solution apporte par rapport à une
config classique (tout en 192.168.0.x, et la freebox en routeur).
2) La machine Linux a l'adresse IP publique de la connexion et une
connectivité complète sans NAT.
Je retire. Apparemment la solution de sansflotusspam suppose que la
Freebox est en mode routeur, ce dont je ne vois pas l'intérêt.
On Fri, 29 Dec 2006 14:57:54 +0100, Pascal Hambourg
:1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
Yep, mais avec la solution de "sansflotusspam", le PC Windows est
physiquement branché sur la freebox. Donc, soit on fait confiance à la
freebox et on n'a pas besoin d'un truc aussi compliqué, soit on ne lui
fait pas confiance et la solution est mauvaise.
Si on veut utiliser une machine Linux pour filtrer et protéger une
machine Windows, il faut AMHA que la passerelle Linux ait deux cartes
réseau, et que les deux sous-réseaux soient physiquement séparés.
On Fri, 29 Dec 2006 14:57:54 +0100, Pascal Hambourg
<boite-a-spam@plouf.fr.eu.org>:
1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
Yep, mais avec la solution de "sansflotusspam", le PC Windows est
physiquement branché sur la freebox. Donc, soit on fait confiance à la
freebox et on n'a pas besoin d'un truc aussi compliqué, soit on ne lui
fait pas confiance et la solution est mauvaise.
Si on veut utiliser une machine Linux pour filtrer et protéger une
machine Windows, il faut AMHA que la passerelle Linux ait deux cartes
réseau, et que les deux sous-réseaux soient physiquement séparés.
On Fri, 29 Dec 2006 14:57:54 +0100, Pascal Hambourg
:1) Le filtrage iptables par la machine Linux. La Freebox en mode routeur
NAT, on ne sait pas trop ce qu'elle filtre.
Yep, mais avec la solution de "sansflotusspam", le PC Windows est
physiquement branché sur la freebox. Donc, soit on fait confiance à la
freebox et on n'a pas besoin d'un truc aussi compliqué, soit on ne lui
fait pas confiance et la solution est mauvaise.
Si on veut utiliser une machine Linux pour filtrer et protéger une
machine Windows, il faut AMHA que la passerelle Linux ait deux cartes
réseau, et que les deux sous-réseaux soient physiquement séparés.