Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

config iptables d'un routeur à base iptables derrière une livebox

19 réponses
Avatar
Thierry B
Bonjour,

Même si ca n'utilise pas explicitement une debian, je pense que l'on
peut me répondre sur la liste.

Je vais joindre à une livebox, un linksys WRT54GL que j'ai flashé avec
un firmware à base linux: openwrt et qui donc peut utiliser iptables.

En fait, vu que le livebox a un wifi pourri, je vais desactiver le wifi
+ dhcp de la livebox, pour utiliser ceux du linksys WRT54GL.

Je voulais avoir votre avis sur la config que je vais utiliser + sur
certains petits points dans iptables.

J'ai décidé de donner par exemple à la LB une ip du style: 192.168.0.1.

Je relie la LB au port wan du routeur à qui je donne une ip en 192.168.0.x.

Après je fais une dmz, pour rediriger tout ce qui vient sur la LB vers
l'ip wan du routeur.

Je donne une ip en 192.168.1.x à l'interface lan du routeur et tous les
ordis du lan (que ceux soit fillaire ou wii), utiiseront une ip en
192.168.1.qque chose.

Donc j'aurai un double nat.

Au niveau de la config iptables, j'ai certaines règles que j'hésite à
mettre car je ne suis pas sure de leur utilités:

# Refuser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter

# Journaliser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/log_martians

# Ignorer les messages de diffusion ICMP
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# Ne pas envoyer de messages redirigés
# echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

# Anti Flood
# iptables -N syn-flood
# iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
# iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
# iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
# iptables -A syn-flood -j DROP

# Rejets
# iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
# iptables -A INPUT -j REJECT --reject-with icmp-port-unreachable


Je me dis que ces règles de securité peuvent pour un simple nat
classique mais pour une double nat, peut-etre que la livebox, filtrera
ces paquets parasites non?

Merci :-)


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

9 réponses

1 2
Avatar
Thierry B
Pascal Hambourg a écrit :
Salut,

on4hu a écrit :
perso je ne vois aucune utilité d'utililiser 'iptables' ce qui te
donnerais 3 routeurs l' un derrière l'autre ????



Où ça, trois routeurs ? Je ne vois que la Livebox et le Linksys.

1) met ta Live Box en 'Bridge' de maniere a n' utiliser que la partie
modem



Si tu as la recette pour passer une Livebox en bridge, je pense que ça
intéressera du monde.

2) utilise ton routeur WRT54GL



C'est bien ce que ThierryB a annoncé avoir l'intention de faire.

3) aucun pare feu sur ta machine Linux nécessaire, ni sur d'autres PC
d'ailleurs



Ben voyons...

4) utiliser le WiFi du WRT54GL



C'est bien ce que ThierryB a annoncé avoir l'intention de faire.




Exactement tout bon pour Pascal lol :-)

Le Jeudi 21 Septembre 2006 10:56, Thierry B a écrit :

Même si ca n'utilise pas explicitement une debian, je pense que l'on
peut me répondre sur la liste.





Mouais, on va dire que je réponds parce que ça pourrait aussi servir sur
une Debian. ;-)

Au niveau de la config iptables, j'ai certaines règles que j'hésite à
mettre car je ne suis pas sure de leur utilités:

# Refuser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter





Attention : rp_filter n'est activé pour une interface donnée que s'il
est à 1 dans net/ipv4/conf/all/ *et* dans net/ipv4/conf/<interface>/.
D'autre part, il n'a pas pour but de "refuser les adresses sources
falsifiées ou non routables" mais de rejeter les paquets dont l'adresse
source n'est pas routée via l'interface d'arrivée.



Euh, tu peux juste me donner un petit exemple concret?
pq j'ai du mal à comprendre le fait de "rejeter les paquets dont
l'adresse source n'est pas routée via l'interface d'arrivée"


# Journaliser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/log_martians

# Ignorer les messages de diffusion ICMP
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# Ne pas envoyer de messages redirigés
# echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects





Il s'agit plutôt de "messages ICMP de redirection" (ICMP Redirect). Il
est AMA plus utile de les ignorer (accept_redirect=0) que de ne pas en
envoyer.



Euh, j'avais recopié ca d'un site mais là, je ne me rappelle plus ce que
représentent des messages redirigés.


# Anti Flood
# iptables -N syn-flood
# iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
# iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
# iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j
RETURN
# iptables -A syn-flood -j DROP





4 TCP SYN par seconde me paraît très faible.



Tu me conseilles de mettre combien?


# Rejets
# iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
# iptables -A INPUT -j REJECT --reject-with icmp-port-unreachable

Je me dis que ces règles de securité peuvent pour un simple nat
classique mais pour une double nat, peut-etre que la livebox, filtrera
ces paquets parasites non?





Peut-être, peut-être pas. Mais ça ne mange pas de pain de considérer que
la Livebox ne filtre rien. D'autant plus que tu n'as pas un contrôle
absolu sur elle !



Ok, merci pour tout :-)







--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry B
Pascal Hambourg a écrit :
Salut,

on4hu a écrit :
perso je ne vois aucune utilité d'utililiser 'iptables' ce qui te
donnerais 3 routeurs l' un derrière l'autre ????



Où ça, trois routeurs ? Je ne vois que la Livebox et le Linksys.

1) met ta Live Box en 'Bridge' de maniere a n' utiliser que la partie
modem



Si tu as la recette pour passer une Livebox en bridge, je pense que ça
intéressera du monde.

2) utilise ton routeur WRT54GL



C'est bien ce que ThierryB a annoncé avoir l'intention de faire.

3) aucun pare feu sur ta machine Linux nécessaire, ni sur d'autres PC
d'ailleurs



Ben voyons...

4) utiliser le WiFi du WRT54GL



C'est bien ce que ThierryB a annoncé avoir l'intention de faire.

Le Jeudi 21 Septembre 2006 10:56, Thierry B a écrit :

Même si ca n'utilise pas explicitement une debian, je pense que l'on
peut me répondre sur la liste.





Mouais, on va dire que je réponds parce que ça pourrait aussi servir sur
une Debian. ;-)

Au niveau de la config iptables, j'ai certaines règles que j'hésite à
mettre car je ne suis pas sure de leur utilités:

# Refuser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter





Attention : rp_filter n'est activé pour une interface donnée que s'il
est à 1 dans net/ipv4/conf/all/ *et* dans net/ipv4/conf/<interface>/.
D'autre part, il n'a pas pour but de "refuser les adresses sources
falsifiées ou non routables" mais de rejeter les paquets dont l'adresse
source n'est pas routée via l'interface d'arrivée.

# Journaliser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/log_martians

# Ignorer les messages de diffusion ICMP
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# Ne pas envoyer de messages redirigés
# echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects





Il s'agit plutôt de "messages ICMP de redirection" (ICMP Redirect). Il
est AMA plus utile de les ignorer (accept_redirect=0) que de ne pas en
envoyer.

# Anti Flood
# iptables -N syn-flood
# iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
# iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
# iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j
RETURN
# iptables -A syn-flood -j DROP





4 TCP SYN par seconde me paraît très faible.

# Rejets
# iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
# iptables -A INPUT -j REJECT --reject-with icmp-port-unreachable

Je me dis que ces règles de securité peuvent pour un simple nat
classique mais pour une double nat, peut-etre que la livebox, filtrera
ces paquets parasites non?





Peut-être, peut-être pas. Mais ça ne mange pas de pain de considérer que
la Livebox ne filtre rien. D'autant plus que tu n'as pas un contrôle
absolu sur elle !





Re,

Puisqu'on y est, tu pourrais qme dire ce que tu penses ue de mes autre
règles iptables de ce linksys si ca t'embetes pas? (j'ai enlevé ce dont
on avait déja parlé precedemment)

# Reset des tables

iptables -t filter -F
iptables -t filter -X
iptables -t nat -F
iptables -t nat -X
#iptables -t mangle -F
#iptables -t mangle -X

# Bloquer tout le trafic
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

# Pas de filtrage sur l'interface de "loopback"
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# J'autorise les requetes ICMP
iptables -A INPUT -p icmp -j ACCEPT

# J'autorise le ssh sur le routeur de l'exterieur
iptables -A INPUT -i $WAN -p tcp --dport 22 -j ACCEPT

# J'accepte les packets entrants relatifs à des connexions déjà établies
iptables -A INPUT -i $WAN -m state --state RELATED,ESTABLISHED -j
ACCEPT

# Resoudre les eventuels problèmes de MTU (je sais pas si c'est
necessaire aussi en second routeur)
# iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS
--clamp-mss-to-pmtu

# J'accepte les connexions du wan vers lan d'une connexion deja etablie
iptables -A FORWARD -i $WAN -m state --state RELATED,ESTABLISHED
-j ACCEPT

# Bloquer les requetes netbios du lan vers le net (y'a que des machines
windows lol)
iptables -A FORWARD -i $LAN -p tcp --sport 135:139 -o $WAN -j DROP
iptables -A FORWARD -i $LAN -p udp --sport 135:139 -o $WAN -j DROP

# On accepte tout ce qui vient du réseau local
iptables -A INPUT -i $LAN -j ACCEPT
iptables -A FORWARD -i $LAN -j ACCEPT

# Masquarade
iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE


Merci encore :-)


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
on4hu
non c'est toi qui a raison, mais cela implique que le PC doit rester sous
tension.. je ne trouve pas cette solution rentable mais ce n'est que mon
avis

Le Jeudi 21 Septembre 2006 18:52, Thierry B a écrit :
on4hu a écrit :
> 1 = LB
> 2 = Linksys
> 3 = iptable de cette machine Linux

Désolé, c'est peut-etre moi qui me suis mal exprimé mais justement
iptables je l'utilise avec le linksys (c'est pas pour rien, que je l'ai
flashé avec openwrt qui est un formware linux) enfin apparemment, Pascal
avait compris :-)

> Le Jeudi 21 Septembre 2006 16:44, Pascal Hambourg a écrit :
>> Salut,
>>
>> on4hu a écrit :
>>> perso je ne vois aucune utilité d'utililiser 'iptables' ce qui te
>>> donnerais 3 routeurs l' un derrière l'autre ????
>>
>> Où ça, trois routeurs ? Je ne vois que la Livebox et le Linksys.
>>
>>> 1) met ta Live Box en 'Bridge' de maniere a n' utiliser que la partie
>>> modem
>>
>> Si tu as la recette pour passer une Livebox en bridge, je pense que ça
>> intéressera du monde.
>>
>>> 2) utilise ton routeur WRT54GL
>>
>> C'est bien ce que ThierryB a annoncé avoir l'intention de faire.
>>
>>> 3) aucun pare feu sur ta machine Linux nécessaire, ni sur d'autres PC
>>> d'ailleurs
>>
>> Ben voyons...
>>
>>> 4) utiliser le WiFi du WRT54GL
>>
>> C'est bien ce que ThierryB a annoncé avoir l'intention de faire.
>>
>>> Le Jeudi 21 Septembre 2006 10:56, Thierry B a écrit :
>>>> Même si ca n'utilise pas explicitement une debian, je pense que l' on
>>>> peut me répondre sur la liste.
>>
>> Mouais, on va dire que je réponds parce que ça pourrait aussi serv ir sur
>> une Debian. ;-)
>>
>>>> Au niveau de la config iptables, j'ai certaines règles que j'hés ite à
>>>> mettre car je ne suis pas sure de leur utilités:
>>>>
>>>> # Refuser les adresses sources falsifiées ou non routables
>>>> # echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
>>
>> Attention : rp_filter n'est activé pour une interface donnée que s 'il
>> est à 1 dans net/ipv4/conf/all/ *et* dans net/ipv4/conf/<interface>/.
>> D'autre part, il n'a pas pour but de "refuser les adresses sources
>> falsifiées ou non routables" mais de rejeter les paquets dont l'adre sse
>> source n'est pas routée via l'interface d'arrivée.
>>
>>>> # Journaliser les adresses sources falsifiées ou non routables
>>>> # echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
>>>>
>>>> # Ignorer les messages de diffusion ICMP
>>>> # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
>>>>
>>>> # Ne pas envoyer de messages redirigés
>>>> # echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects
>>
>> Il s'agit plutôt de "messages ICMP de redirection" (ICMP Redirect). Il
>> est AMA plus utile de les ignorer (accept_redirect=0) que de ne pas en
>> envoyer.
>>
>>>> # Anti Flood
>>>> # iptables -N syn-flood
>>>> # iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
>>>> # iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
>>>> # iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j
>>>> RETURN # iptables -A syn-flood -j DROP
>>
>> 4 TCP SYN par seconde me paraît très faible.
>>
>>>> # Rejets
>>>> # iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
>>>> # iptables -A INPUT -j REJECT --reject-with icmp-port-unreachab le
>>>>
>>>> Je me dis que ces règles de securité peuvent pour un simple nat
>>>> classique mais pour une double nat, peut-etre que la livebox, filtre ra
>>>> ces paquets parasites non?
>>
>> Peut-être, peut-être pas. Mais ça ne mange pas de pain de consid érer que
>> la Livebox ne filtre rien. D'autant plus que tu n'as pas un contrôle
>> absolu sur elle !



--
WEB server: http://www.on4hu.be/
FTP server: ftp://ftp.on4hu.be/
COMPUTERS ARE LIKE AIR-CONDITIONERS THEY STOP WORKING
PROPERLY AS SOON AS YOU OPEN WINDOWS
Avatar
Pascal Hambourg
Thierry B a écrit :

# Refuser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter





Attention : rp_filter n'est activé pour une interface donnée que s'il
est à 1 dans net/ipv4/conf/all/ *et* dans net/ipv4/conf/<interface>/.
D'autre part, il n'a pas pour but de "refuser les adresses sources
falsifiées ou non routables" mais de rejeter les paquets dont
l'adresse source n'est pas routée via l'interface d'arrivée.



Euh, tu peux juste me donner un petit exemple concret?
pq j'ai du mal à comprendre le fait de "rejeter les paquets dont
l'adresse source n'est pas routée via l'interface d'arrivée"



Concrètement, pour activer la vérification d'adresse source des paquets
reçus par l'interface $WAN, il faut :
net/ipv4/conf/all/rp_filter=1
*et*
net/ipv4/conf/$WAN/rp_filter=1

Concrètement, l'effet dépend de la table de routage. Par exemple quand
un paquet est reçu sur l'interface $WAN avec l'adresse source 1.2.3.4,
le noyau vérifie que la table de routage contient une route pour 1.2.3.4
avec $WAN comme interface de sortie. S'il n'y a pas de route pour cette
adresse, ou si la route est de type "unreachable" ou passe par une autre
interface, le paquet est détruit lors de la décision de routage d'entrée
(entre la chaînes PREROUTING et la chaîne INPUT ou FORWARD).

Ça veut dire que pour bloquer les adresses sources des blocs privés que
tu n'utilises pas et autres blocs non routés sur internet, étant donné
que tu as une route par défaut, il te faut créer des routes
"unreachable" pour ces destinations.

Il s'agit plutôt de "messages ICMP de redirection" (ICMP Redirect). Il
est AMA plus utile de les ignorer (accept_redirect=0) que de ne pas en
envoyer.



Euh, j'avais recopié ca d'un site mais là, je ne me rappelle plus ce que
représentent des messages redirigés.



Un ICMP Redirect est émis par un routeur en réponse à un paquet reçu
pour signaler qu'il existe une route plus directe vers la destination du
paquet. Typiquement cela se produit (si send_redirects=1) quand un
routeur reçoit un paquet par une interface et sa table de routage
indique qu'il doit faire suivre ce paquet par la même interface.
L'émetteur du paquet original recevant l'ICMP Redirect, est censé (sous
certaines conditions et si accept_redirects=1) modifier sa table de
routage en conséquence.

# Anti Flood
# iptables -N syn-flood
# iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
# iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
# iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j
RETURN
# iptables -A syn-flood -j DROP






4 TCP SYN par seconde me paraît très faible.





En fait c'est même pire : une salve de 4 TCP SYN puis 1 TCP SYN par
seconde en continu. Si tu héberges un site web, la visualisation de la
moindre page avec quelques images suffira à atteindre la limite.

Tu me conseilles de mettre combien?



Ça dépend de tes besoins et de tes ressources. Le but de cette
limitation est d'éviter de saturer les machines qui reçoivent les
requêtes et la table de connexion/NAT du routeur (mais il y a aussi
celle de la Livebox sur laquelle tu n'as aucun contrôle).


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Pascal Hambourg
Thierry B a écrit :
[élagage sévère des citations sans intérêt des messages précédents]

Puisqu'on y est, tu pourrais qme dire ce que tu penses ue de mes autre
règles iptables de ce linksys si ca t'embetes pas? (j'ai enlevé ce dont
on avait déja parlé precedemment)


[...]
# J'autorise les requetes ICMP
iptables -A INPUT -p icmp -j ACCEPT



Cette règle n'accepte pas seulement les requêtes ICMP mais n'importe
quel paquet ICMP. Sachant que les messages d'erreur ICMP (destination
unreachable, time exceeded...) et les réponses ICMP (echo reply...) sont
déjà pris en compte par la règle ESTABLISHED,RELATED plus bas, tu peux
te limiter à autoriser les requêtes ICMP echo (ping) si tu veux que ton
routeur réponde au ping :

iptables -A INPUT -p icmp --icmp-type echo -m state NEW -j ACCEPT

Tu peux éventuellement agrémenter avec des limites en nombre (-m limit)
et en taille (-m length) si tu estimes ne pas être censé recevoir 1000
pings par seconde ni des pings de 8000 octets chacun.

# Resoudre les eventuels problèmes de MTU (je sais pas si c'est
necessaire aussi en second routeur)
# iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS
--clamp-mss-to-pmtu



C'est utile seulement si la Livebox ou le BAS-en-face ne fait pas déjà
ce qu'il faut.

# Bloquer les requetes netbios du lan vers le net (y'a que des machines
windows lol)
iptables -A FORWARD -i $LAN -p tcp --sport 135:139 -o $WAN -j DROP
iptables -A FORWARD -i $LAN -p udp --sport 135:139 -o $WAN -j DROP



En fait c'est plutôt --dport, même si les paquets Netbios UDP ont
tendance à avoir le même port en source et destination. Il n'est pas
interdit d'avoir les mêmes règles tantôt avec --sport et tantôt avec
--dport. Tu peux ajouter le port 445 utilisé par Windows NT pour SMB
(autre protocole de partage de ressources). Par contre Windows n'utilise
pas le port 136, et le port 135 n'est pas utilisé par Netbios mais par
MS-RPC, mais il est à filtrer quand même vu le nombre et la gravité des
failles ayant affecté ce service. Windows XP utilise aussi des ports
pour l'UPnP, mais je ne me souviens plus lesques (1900 et 5000 je crois).

# Masquarade
iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE



Si l'interface $WAN a une adresse statique, il est plus efficace
d'utiliser SNAT au lieu de MASQUERADE.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry B
on4hu a écrit :
non c'est toi qui a raison, mais cela implique que le PC doit rester sous
tension.. je ne trouve pas cette solution rentable mais ce n'est que mon
avis



LOL, quel pc?

Je ne comprends pas ta reflexion: j'ai juste 2 routeurs au lieu d'un,
quel est le rapport avec les eventuels pcs du réseau??


Le Jeudi 21 Septembre 2006 18:52, Thierry B a écrit :
on4hu a écrit :
1 = LB
2 = Linksys
3 = iptable de cette machine Linux


Désolé, c'est peut-etre moi qui me suis mal exprimé mais justement
iptables je l'utilise avec le linksys (c'est pas pour rien, que je l'ai
flashé avec openwrt qui est un formware linux) enfin apparemment, Pascal
avait compris :-)

Le Jeudi 21 Septembre 2006 16:44, Pascal Hambourg a écrit :
Salut,

on4hu a écrit :
perso je ne vois aucune utilité d'utililiser 'iptables' ce qui te
donnerais 3 routeurs l' un derrière l'autre ????


Où ça, trois routeurs ? Je ne vois que la Livebox et le Linksys.

1) met ta Live Box en 'Bridge' de maniere a n' utiliser que la partie
modem


Si tu as la recette pour passer une Livebox en bridge, je pense que ça
intéressera du monde.

2) utilise ton routeur WRT54GL


C'est bien ce que ThierryB a annoncé avoir l'intention de faire.

3) aucun pare feu sur ta machine Linux nécessaire, ni sur d'autres PC
d'ailleurs


Ben voyons...

4) utiliser le WiFi du WRT54GL


C'est bien ce que ThierryB a annoncé avoir l'intention de faire.

Le Jeudi 21 Septembre 2006 10:56, Thierry B a écrit :
Même si ca n'utilise pas explicitement une debian, je pense que l'on
peut me répondre sur la liste.




Mouais, on va dire que je réponds parce que ça pourrait aussi servir sur
une Debian. ;-)

Au niveau de la config iptables, j'ai certaines règles que j'hésite à
mettre car je ne suis pas sure de leur utilités:

# Refuser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter




Attention : rp_filter n'est activé pour une interface donnée que s'il
est à 1 dans net/ipv4/conf/all/ *et* dans net/ipv4/conf/<interface>/.
D'autre part, il n'a pas pour but de "refuser les adresses sources
falsifiées ou non routables" mais de rejeter les paquets dont l'adresse
source n'est pas routée via l'interface d'arrivée.

# Journaliser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/log_martians

# Ignorer les messages de diffusion ICMP
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# Ne pas envoyer de messages redirigés
# echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects




Il s'agit plutôt de "messages ICMP de redirection" (ICMP Redirect). Il
est AMA plus utile de les ignorer (accept_redirect=0) que de ne pas en
envoyer.

# Anti Flood
# iptables -N syn-flood
# iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
# iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
# iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j
RETURN # iptables -A syn-flood -j DROP




4 TCP SYN par seconde me paraît très faible.

# Rejets
# iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset
# iptables -A INPUT -j REJECT --reject-with icmp-port-unreachable

Je me dis que ces règles de securité peuvent pour un simple nat
classique mais pour une double nat, peut-etre que la livebox, filtrera
ces paquets parasites non?




Peut-être, peut-être pas. Mais ça ne mange pas de pain de considérer que
la Livebox ne filtre rien. D'autant plus que tu n'as pas un contrôle
absolu sur elle !











--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry B
Pascal Hambourg a écrit :
Thierry B a écrit :
[élagage sévère des citations sans intérêt des messages précédents]

Puisqu'on y est, tu pourrais qme dire ce que tu penses ue de mes autre
règles iptables de ce linksys si ca t'embetes pas? (j'ai enlevé ce
dont on avait déja parlé precedemment)


[...]
# J'autorise les requetes ICMP
iptables -A INPUT -p icmp -j ACCEPT



Cette règle n'accepte pas seulement les requêtes ICMP mais n'importe
quel paquet ICMP. Sachant que les messages d'erreur ICMP (destination
unreachable, time exceeded...) et les réponses ICMP (echo reply...) sont
déjà pris en compte par la règle ESTABLISHED,RELATED plus bas, tu peux
te limiter à autoriser les requêtes ICMP echo (ping) si tu veux que ton
routeur réponde au ping :

iptables -A INPUT -p icmp --icmp-type echo -m state NEW -j ACCEPT

Tu peux éventuellement agrémenter avec des limites en nombre (-m limit)
et en taille (-m length) si tu estimes ne pas être censé recevoir 1000
pings par seconde ni des pings de 8000 octets chacun.

# Resoudre les eventuels problèmes de MTU (je sais pas si c'est
necessaire aussi en second routeur)
# iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS
--clamp-mss-to-pmtu



C'est utile seulement si la Livebox ou le BAS-en-face ne fait pas déjà
ce qu'il faut.

# Bloquer les requetes netbios du lan vers le net (y'a que des
machines windows lol)
iptables -A FORWARD -i $LAN -p tcp --sport 135:139 -o $WAN -j DROP
iptables -A FORWARD -i $LAN -p udp --sport 135:139 -o $WAN -j DROP



En fait c'est plutôt --dport, même si les paquets Netbios UDP ont
tendance à avoir le même port en source et destination. Il n'est pas
interdit d'avoir les mêmes règles tantôt avec --sport et tantôt avec
--dport. Tu peux ajouter le port 445 utilisé par Windows NT pour SMB
(autre protocole de partage de ressources). Par contre Windows n'utilise
pas le port 136, et le port 135 n'est pas utilisé par Netbios mais par
MS-RPC, mais il est à filtrer quand même vu le nombre et la gravité des
failles ayant affecté ce service. Windows XP utilise aussi des ports
pour l'UPnP, mais je ne me souviens plus lesques (1900 et 5000 je crois).

# Masquarade
iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE



Si l'interface $WAN a une adresse statique, il est plus efficace
d'utiliser SNAT au lieu de MASQUERADE.





Merci :-)


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry B
Pascal Hambourg a écrit :
Thierry B a écrit :

# Refuser les adresses sources falsifiées ou non routables
# echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter





Attention : rp_filter n'est activé pour une interface donnée que s'il
est à 1 dans net/ipv4/conf/all/ *et* dans net/ipv4/conf/<interface>/.
D'autre part, il n'a pas pour but de "refuser les adresses sources
falsifiées ou non routables" mais de rejeter les paquets dont
l'adresse source n'est pas routée via l'interface d'arrivée.



Euh, tu peux juste me donner un petit exemple concret?
pq j'ai du mal à comprendre le fait de "rejeter les paquets dont
l'adresse source n'est pas routée via l'interface d'arrivée"



Concrètement, pour activer la vérification d'adresse source des paquets
reçus par l'interface $WAN, il faut :
net/ipv4/conf/all/rp_filter=1
*et*
net/ipv4/conf/$WAN/rp_filter=1

Concrètement, l'effet dépend de la table de routage. Par exemple quand
un paquet est reçu sur l'interface $WAN avec l'adresse source 1.2.3.4,
le noyau vérifie que la table de routage contient une route pour 1.2.3.4
avec $WAN comme interface de sortie. S'il n'y a pas de route pour cette
adresse, ou si la route est de type "unreachable" ou passe par une autre
interface, le paquet est détruit lors de la décision de routage d'entrée
(entre la chaînes PREROUTING et la chaîne INPUT ou FORWARD).

Ça veut dire que pour bloquer les adresses sources des blocs privés que
tu n'utilises pas et autres blocs non routés sur internet, étant donné
que tu as une route par défaut, il te faut créer des routes
"unreachable" pour ces destinations.

Il s'agit plutôt de "messages ICMP de redirection" (ICMP Redirect).
Il est AMA plus utile de les ignorer (accept_redirect=0) que de ne
pas en envoyer.



Euh, j'avais recopié ca d'un site mais là, je ne me rappelle plus ce
que représentent des messages redirigés.



Un ICMP Redirect est émis par un routeur en réponse à un paquet reçu
pour signaler qu'il existe une route plus directe vers la destination du
paquet. Typiquement cela se produit (si send_redirects=1) quand un
routeur reçoit un paquet par une interface et sa table de routage
indique qu'il doit faire suivre ce paquet par la même interface.
L'émetteur du paquet original recevant l'ICMP Redirect, est censé (sous
certaines conditions et si accept_redirects=1) modifier sa table de
routage en conséquence.

# Anti Flood
# iptables -N syn-flood
# iptables -A INPUT -i $WAN -p tcp --syn -j syn-flood
# iptables -A FORWARD -i $WAN -p tcp --syn -j syn-flood
# iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j
RETURN
# iptables -A syn-flood -j DROP






4 TCP SYN par seconde me paraît très faible.





En fait c'est même pire : une salve de 4 TCP SYN puis 1 TCP SYN par
seconde en continu. Si tu héberges un site web, la visualisation de la
moindre page avec quelques images suffira à atteindre la limite.

Tu me conseilles de mettre combien?



Ça dépend de tes besoins et de tes ressources. Le but de cette
limitation est d'éviter de saturer les machines qui reçoivent les
requêtes et la table de connexion/NAT du routeur (mais il y a aussi
celle de la Livebox sur laquelle tu n'as aucun contrôle).





Merci :-)


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Salut,

J'ai trouvé une petite doc. Si ça peut aider.
http://ceyquem.free.fr/www/articles/passerelle_freebox/passerell e_freebox.htm

Rv

----- Message d'origine -----
De: Thierry B
Date: Jeudi, Septembre 21, 2006 11:38 pm
Objet: Re: config iptables d'un routeur à base iptables derriè re une livebox

Pascal Hambourg a écrit :
> Thierry B a écrit :
> [élagage sévère des citations sans intérêt des messa ges précédents]
>>
>> Puisqu'on y est, tu pourrais qme dire ce que tu penses ue de mes
autre
>> règles iptables de ce linksys si ca t'embetes pas? (j' ai enlevé
ce
>> dont on avait déja parlé precedemment)
> [...]
>> # J'autorise les requetes ICMP
>> iptables -A INPUT -p icmp -j ACCEPT
>
> Cette règle n'accepte pas seulement les requêtes ICMP mais
n'importe
> quel paquet ICMP. Sachant que les messages d'erreur ICMP
(destination
> unreachable, time exceeded...) et les réponses ICMP (e cho
reply...) sont
> déjà pris en compte par la règle ESTABLISHED,RELATED plu s bas, tu
peux
> te limiter à autoriser les requêtes ICMP echo (ping) si tu v eux
que ton
> routeur réponde au ping :
>
> iptables -A INPUT -p icmp --icmp-type echo -m state NEW -j ACCEP T
>
> Tu peux éventuellement agrémenter avec des limites en nombre (-m
limit)
> et en taille (-m length) si tu estimes ne pas être censé rec evoir
1000
> pings par seconde ni des pings de 8000 octets chacun.
>
>> # Resoudre les eventuels problèmes de MTU (je sais pas s i c'est
>> necessaire aussi en second routeur)
>> # iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j
TCPMSS
>> --clamp-mss-to-pmtu
>
> C'est utile seulement si la Livebox ou le BAS-en-face ne fait pas
déjà
> ce qu'il faut.
>
>> # Bloquer les requetes netbios du lan vers le net (y'a qu e des
>> machines windows lol)
>> iptables -A FORWARD -i $LAN -p tcp --sport 135:139 -o $WAN -
j DROP
>> iptables -A FORWARD -i $LAN -p udp --sport 135:139 -o $WAN -
j DROP
>
> En fait c'est plutôt --dport, même si les paquets Netbio s UDP ont
> tendance à avoir le même port en source et destination. Il n'est
pas
> interdit d'avoir les mêmes règles tantôt avec --sport et tantôt
avec
> --dport. Tu peux ajouter le port 445 utilisé par Windows NT pour
SMB
> (autre protocole de partage de ressources). Par contre Windows
n'utilise
> pas le port 136, et le port 135 n'est pas utilisé par Netb ios
mais par
> MS-RPC, mais il est à filtrer quand même vu le nombre et l a
gravité des
> failles ayant affecté ce service. Windows XP utilise aussi d es
ports
> pour l'UPnP, mais je ne me souviens plus lesques (1900 et 50 00 je
crois).>
>> # Masquarade
>> iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE
>
> Si l'interface $WAN a une adresse statique, il est plus ef ficace
> d'utiliser SNAT au lieu de MASQUERADE.
>
>

Merci :-)


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs " From" et
"Reply-To:"

To UNSUBSCRIBE, email to an.org
with a subject of "unsubscribe". Trouble? Contact




1 2