1 votes

iptables et snatting vers différents réseaux

                linuxbox (p.q.r.t)
                    |
                    |
 INTERNAL  ------ ABCD ----- INTERNET
(p.q.r.s)                  (m.n.o.k)

ABCD a 3 interfaces connectées à linuxbox, INTERNAL N/W, INTERNET.

La Linuxbox a une adresse privée (p.q.r.t). En ce moment je snatte les paquets de linuxbox vers INTERNET à ABCD.

J'ai un petit doute concernant le FTP à partir de linuxbox puisque je dois supporter le FTP à partir de linuxbox à la fois sur INTERNAL N/W et sur INTERNET.

Comment puis-je créer une règle dans iptables présent dans ABCD où il peut décider si l'adresse IP de destination du serveur ftp est dans INTERNAL N/W ou dans INTERNET et faire le natting en conséquence.

1voto

d34dh0r53 Points 1651

Si linuxbox (p.q.r.t) et INTERNAL (p.q.r.s) sont sur le même sous-réseau, alors vous ne devriez pas rencontrer ABCD car il agit vraiment comme un routeur de masquage dans le scénario que vous avez décrit. Je dois supposer que la redirection est activée sur ABCD, sinon vous n'atteindriez pas l'Internet à partir de là, et je dois également supposer que les routes appropriées sont en place, sinon vos clients internes ne recevraient pas de trafic en retour.

Ce que womble dit est correct, mais si le réseau est câblé comme il devrait l'être, alors ftp devrait fonctionner et si ce n'est pas le cas, votre problème ne vient probablement pas de ABCD. Vous pouvez ajouter la journalisation iptables pour un trafic spécifique pour voir si ABCD est le problème, quelque chose comme ceci :

iptables -A INPUT -p tcp -m tcp --destination-port 21 -j LOG --log-level 7 --log-prefix "FTP Testing"

Vous pouvez bien sûr limiter les hôtes dont le trafic est consigné si vous avez beaucoup de trafic FTP sur votre réseau. Désactivez cette fonction lorsque vous avez terminé, car elle peut remplir un journal très rapidement.

0voto

Ryan Sampson Points 2898

Si vous voulez qu'une machine se trouve sur un segment de réseau différent, vous devez la placer dans un sous-réseau IP distinct - de cette façon, le routage normal fonctionne parfaitement. Si cela vraiment ne peut pas être fait, vous pouvez utiliser une technique appelée "proxy ARP", où la boîte de la passerelle ("ABCD") peut se faire passer pour d'autres machines sur le réseau et répondre aux requêtes ARP pour le compte de l'autre. Je fais no Nous vous le recommandons, cependant, à moins que vous ne sachiez vraiment ce que vous faites, et vous devriez simplement créer des sous-réseaux séparés (ce n'est pas comme si vous manquiez d'espace RFC1918 pour jouer avec).

0voto

profy Points 1118

La règle NAT que vous devez définir est une règle POSTROUTING (snat).

POSTROUTING signifie après l'enracinement, donc vous ne pouvez faire correspondre que les paquets allant vers INTERNET parce que vos tables de routage l'ont déjà décidé.

Quelque chose comme :

iptables -t nat -I POSTROUTING -o nameOfABCDInterfaceGoingToInternet -p tcp etc....

0voto

Allen Points 1315

Si ABCD est un routeur/switch spécialisé, il devrait fonctionner. Il suffit de brancher le serveur du réseau interne sur un port libre. En revanche, si ABCD est un serveur doté de plusieurs cartes réseau (ce qui semble être le cas d'après votre question), vous devrez alors pont les NICs ensemble.

Vous n'aurez plus deux NIC mais un seul périphérique de pont à leur place qui agira comme une seule "NIC". Tout semblera être dans le réseau p.q.r.0/24. Vos règles de pare-feu doivent être mises à jour pour refléter le nouveau périphérique (le pont). Si vous avez besoin de restreindre le trafic entre les machines dans INTERNAL et linuxbox, vous devez écrire ces règles. Gardez à l'esprit que FTP a deux des schémas de protocoles très différents dont il faut tenir compte. En ce qui concerne la communication avec INTERNET, il suffit de modifier les règles qui fonctionnent déjà pour linuxbox afin de refléter le nouveau dispositif.

BTW, vous ne devriez pas choisir vos propres numéros de réseau p.q.r.0. Il existe déjà une plage spécifiquement allouée pour ce type d'utilisation. Le réseau /16 est 192.168.x.x et il semble que vous devriez l'utiliser. Lisez sur le sujet . Le réseau /16 permet 2^16 = 65 536 (moins deux pour le routeur et l'adresse de diffusion). 192.168.1/8 permet d'accueillir environ 256 hôtes. Il devrait y avoir une règle qui supprime les paquets avec des adresses de type RFC1918 les adresses sources.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X