Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1655 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [IPTables] Un règle avancée ....

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[IPTables] Un règle avancée ....

n°112369
246tNt
Resistance is futile
Posté le 12-06-2002 à 13:19:19  profilanswer
 

Voila, j'ai mon routeur en 10.0.0.1
Je veut que toute machine du sous reseau 10.0.0.0/24 sauf la 10.0.0.2  quand elle essaye de contacter l'ip w.x.y.z en tcp sur le  port p soit redirigée ( DNAT ) vers la machine 10.0.0.2 du reseau local.
 
J'ai essayé :
 
iptables -D PREROUTING -s \! 10.0.0.2/32 -d w.x.y.z -t nat -p tcp --dport p -j DNAT --to-destination 10.0.0.2:p
 
mais ca marche pas ...  
 
Quelqu'un a une idée ?

mood
Publicité
Posté le 12-06-2002 à 13:19:19  profilanswer
 

n°112375
djoh
Posté le 12-06-2002 à 14:08:32  profilanswer
 

246tNt a écrit a écrit :

Voila, j'ai mon routeur en 10.0.0.1
Je veut que toute machine du sous reseau 10.0.0.0/24 sauf la 10.0.0.2  quand elle essaye de contacter l'ip w.x.y.z en tcp sur le  port p soit redirigée ( DNAT ) vers la machine 10.0.0.2 du reseau local.
 
J'ai essayé :
 
iptables -D PREROUTING -s \! 10.0.0.2/32 -d w.x.y.z -t nat -p tcp --dport p -j DNAT --to-destination 10.0.0.2:p
 
mais ca marche pas ...  
 
Quelqu'un a une idée ?  




 
 
ben c'est plutot un -A qu'un -D non ?

n°112389
246tNt
Resistance is futile
Posté le 12-06-2002 à 14:39:54  profilanswer
 

... oui bon ... j'ai pris la mauvaise ligne lors du copier coller .. j'avais mis un -A puis j'ai fait un -D comme ca marchait pas

n°112406
djoh
Posté le 12-06-2002 à 15:55:48  profilanswer
 

ben redit exactement ce que tu veux (en bon français , si possible) et dis à quoi correspond l'ip w.x.y.z

n°112418
246tNt
Resistance is futile
Posté le 12-06-2002 à 16:10:47  profilanswer
 

J'ai un reseau local. Sur celui ci il y a deux serveur, deux machines linux. Une de celle ci c'est le routeur ( 10.0.0.1 ) et la deuxieme, c'est un serveur web proxy ( 10.0.0.2 ).  
Il y a une ip a l'exterieure w.x.y.z qui est aussi un serveur web et dont je veut "cacher" ( pas masquer, fait faire du cache, genre squid ). J'ai pour ca un programme qui tourne sur mon 10.0.0.2 et qui se charge de faire le cache. Mais pour que ca soit transparent a toutes mes machines dans mon LAN, il faut que toute les requete vers le site que je veut cacher soit redirigée vers le 10.0.0.2 ( sauf celle provenant de 10.0.0.2 sinon lui non plus ne pourait pas voir le contenu actuel ).
 
Alors j'ai essayé de mettre :
 
 iptables -A PREROUTING -s \! 10.0.0.2/32 -d w.x.y.z -t nat -p tcp --dport p -j DNAT --to-destination 10.0.0.2:p
 
Mais ca ne marche pas. Si par contre je redirige vers le 10.0.0.1 ( la machine ou je met la rules ), la ca marche, quand je me connecte a partir d'une machine du LAN vers le port 80 de w.x.y.z je tombe bien sur le serveur Web de ma passerelle

n°112435
djtoz
Posté le 12-06-2002 à 16:44:41  profilanswer
 

246tNt a écrit a écrit :

J'ai un reseau local. Sur celui ci il y a deux serveur, deux machines linux. Une de celle ci c'est le routeur ( 10.0.0.1 ) et la deuxieme, c'est un serveur web proxy ( 10.0.0.2 ).  
Il y a une ip a l'exterieure w.x.y.z qui est aussi un serveur web et dont je veut "cacher" ( pas masquer, fait faire du cache, genre squid ). J'ai pour ca un programme qui tourne sur mon 10.0.0.2 et qui se charge de faire le cache. Mais pour que ca soit transparent a toutes mes machines dans mon LAN, il faut que toute les requete vers le site que je veut cacher soit redirigée vers le 10.0.0.2 ( sauf celle provenant de 10.0.0.2 sinon lui non plus ne pourait pas voir le contenu actuel ).
 
Alors j'ai essayé de mettre :
 
 iptables -A PREROUTING -s \! 10.0.0.2/32 -d w.x.y.z -t nat -p tcp --dport p -j DNAT --to-destination 10.0.0.2:p
 
Mais ca ne marche pas. Si par contre je redirige vers le 10.0.0.1 ( la machine ou je met la rules ), la ca marche, quand je me connecte a partir d'une machine du LAN vers le port 80 de w.x.y.z je tombe bien sur le serveur Web de ma passerelle  




 
a premiere vue ta regle a l air correcte
qd tu dis que ca marche pas, c'est que tu obtiens une erreur qd tu applique cette regle ou bien que le routage apres ne se fais pas kom il faut ?
 
juste une chose a la limite le \, je le mettrai pas
je suppose que c pour ne pas interpreter le !, mais normalement c pas necessaire
 
puis je pense que c mieux de declarer le -t nat avant de mettre le -A PREROUTING


Message édité par djtoz le 06-12-2002 à 16:48:18
n°112470
246tNt
Resistance is futile
Posté le 12-06-2002 à 18:42:31  profilanswer
 

ben ca route pas correctement. Si j'essaie de faire a partir d'une machine du reseau un telnet w.x.y.z 80   ca met no route to host ...
 
Sinon le -t nat avant et le ! j'ai essayé mais ca change rien. Si je fait un iptables -t nat -L ca se marque comme il faut

n°112493
djtoz
Posté le 12-06-2002 à 20:11:08  profilanswer
 

246tNt a écrit a écrit :

ben ca route pas correctement. Si j'essaie de faire a partir d'une machine du reseau un telnet w.x.y.z 80   ca met no route to host ...
 
Sinon le -t nat avant et le ! j'ai essayé mais ca change rien. Si je fait un iptables -t nat -L ca se marque comme il faut  




 
ok
question conne
sur tes machines du LAN tu as bien en passerelle par defaut la 10.0.0.1 ?

n°112496
246tNt
Resistance is futile
Posté le 12-06-2002 à 20:19:21  profilanswer
 

Oui ...
 
Si a la place de --to-destination 10.0.0.2:p je met 10.0.0.1:80, la ca marche je tombe sur le port 80 de mon routeur ...

n°112501
djtoz
Posté le 12-06-2002 à 20:33:54  profilanswer
 

246tNt a écrit a écrit :

Oui ...
 
Si a la place de --to-destination 10.0.0.2:p je met 10.0.0.1:80, la ca marche je tombe sur le port 80 de mon routeur ...  




 
et ton site web sur la 10.0.0.2 marche kom il faut ?

mood
Publicité
Posté le 12-06-2002 à 20:33:54  profilanswer
 

n°112560
246tNt
Resistance is futile
Posté le 12-06-2002 à 23:19:54  profilanswer
 

oui ...

n°112568
djtoz
Posté le 12-06-2002 à 23:42:47  profilanswer
 

246tNt a écrit a écrit :

oui ...  




 
t as suivi un peu le traffic avec tcpdump ?

n°112578
246tNt
Resistance is futile
Posté le 13-06-2002 à 00:15:19  profilanswer
 

Pas trouvé grand chose ...
 
13:40:12.882187 10.0.0.10 48891 > www2.vip.lng.yahoo.com.www: S 3652653804:3652653804(0) win 5840 <mss 1460,sackOK,timestamp 257986857[|tcp]> (DF) [tos 0x10]  
 
13:40:12.905034 www2.vip.lng.yahoo.com > 10.0.0.10: icmp: host www2.vip.lng.yahoo.com unreachable

n°113200
246tNt
Resistance is futile
Posté le 14-06-2002 à 14:03:55  profilanswer
 

Ben alors, personne ne sait ???? J'ai cherché sur le web mais j'ai trouvé aucune solution ... ( J'ai bien trouvé des mec avec le meme problème que moi mais ca m'avance pas ... )

n°113216
djoh
Posté le 14-06-2002 à 14:44:59  profilanswer
 

ta machine qui fait routeur, c'est un hub ou un swith qui est dessus ?
et pk tu mets pas ton cache sur ton routeur, tu sera pu emmerder comme ça (enfin je pense que tu seras moins emmerder)


Message édité par djoh le 14-06-2002 à 15:43:23
n°113285
246tNt
Resistance is futile
Posté le 14-06-2002 à 16:27:06  profilanswer
 

C un hub ( 3 Com office connect 16 port )
Oui en effet je pourrait mettre le cache sur le routeur mais bon c pas une solution ...

n°113304
djoh
Posté le 14-06-2002 à 16:52:45  profilanswer
 

3 petites questions (je vois vraiment pas ce qui cloche) :
 

  • ton modem est branché directement sur ton routeur, ou sur ton hub ?
  • t'as pas une règle à la con qui empeche les connexion venant du web (balance ton script en entier, a la limite)?
  • w.x.y.z , c'est bien ton ip sur le net ?

n°113508
246tNt
Resistance is futile
Posté le 15-06-2002 à 01:24:21  profilanswer
 

Voila mon installation :
 
Routeur :
 eth0 - interface locale ( 10.0.0.1 ) - Connecté sur un HUB
 eth1 - Connexion Cable 1 ( 130.104.x.x )
 eth2 - Connexion Cable 2 ( 130.104.x.x )
 eth3 - Lien vers modem ADSL
 ppp0 - Interface PPPOE ( 130.104.x.x )
 
Cache WEB :
 eth0 - interface locale ( 10.0.0.2 )
 
Machine à caché : ( n'est PAS sur mon reseau local mais qq part sur internet )
 eth0 - interface vers le net ( w.x.y.z )
 
Machine cliente : ( dont le traffic vers w.x.y.z doit etre redirigée de maniere transparente vers 10.0.0.2 )
 eth0 - interface reseau local ( 10.0.0.3 )
 
Je met sur le routeur et la machine cache ( 10.0.0.1 & 10.0.0.2 ) un service a la con sur le port 80 ( qui envoie toujour la string OK quand on fait un telnet dessus ).
 
Si je met :  
 
iptables -A PREROUTING -s \! 10.0.0.2/32 -d w.x.y.z -t nat -p tcp --dport p -j DNAT --to-destination 10.0.0.1:80
 
et si je fait un telnet w.x.y.z 80 a partir de la machine cliente ( 10.0.0.3 ), je tombe bien sur le serveur du port 80 du 10.0.0.1
 
Je met :
 
iptables -A PREROUTING -s \! 10.0.0.2/32 -d w.x.y.z -t nat -p tcp --dport p -j DNAT --to-destination 10.0.0.2:80
 
Et la ca met no route to host.
 
En fait c comme si des packet venant d'une interface, qui sont DNATer ne pouvaient pas repartir par la même interface ...

n°113509
246tNt
Resistance is futile
Posté le 15-06-2002 à 01:25:21  profilanswer
 

J'ai essayé avec des rules minimale ( tout en ACCEPT + une rule MASQUERADE pour que les machine du lan aie internet ) et ca marche pas mieux ...

n°113517
djoh
Posté le 15-06-2002 à 03:12:09  profilanswer
 

ah ouai quand même  :heink:  
c'est bien la zone ton truc quand même   :/
y-a un peu un mélange de tout là ... en fait, y-a un gros truc qui me gene, c'est que tu es trois interface internet  :??:  
je comprends pas ça...

n°113529
246tNt
Resistance is futile
Posté le 15-06-2002 à 10:10:52  profilanswer
 

Ben j'ai trois interface internet parce que sur mon LAN on est 13. Et pour assurer un debit correct a tout le monde, il faut plus que un seul acces internet ... Alors on a deux access cable sur les quels sont routés les application gourmante en bande passante et/ou upload ( FTP, Peer To Peer, Envoi de mail , ...) et une autre sur la quel sont routé les application ou un ping bas et une reponse rapide sont appreciable ( Web, InstantMessaging, DNS, Jeux On Line, SSH, ... )

n°113532
246tNt
Resistance is futile
Posté le 15-06-2002 à 10:35:56  profilanswer
 

Euh ... ben merde ca marche maintenant ...
 
Apparemment un  
 
iptables -A FORWARD -s 10.0.0.0/24 -j ACCEPT
iptables -A FORWARD -d 10.0.0.0/24 -j ACCEPT
 
ca suffit pas ... il a fallu que je rajoute
 
iptables -A FORWARD -s 10.0.0.0/24 -d 10.0.0.0/24 -j ACCEPT
 
 
Mais je comprend pas pk quand j'ai mis les rules mininaml ca foirait ... J'avait du me gourer qq part ...
 
Enfin merci djoh et désolé de t'avoir dérangé ...

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [IPTables] Un règle avancée ....

 

Sujets relatifs
IpTables / Serveur Counter StrikeBesoin d'aide script IpTables !
[HELP] bloque les ports avec iptablesScript IpTables, rien ne marche :(
iptables et natquestion sur iptables
[Filtrage] Iptablesiptables routing vers le lan
Exemples de scripts IPTABLES[CONFIGURATION]iptables
Plus de sujets relatifs à : [IPTables] Un règle avancée ....


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR