iptables : se présenter avec une autre adresse et retour - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 17-10-2007 à 18:46:42
si personne ne possède l'adresse B, pourquoi ne pas plutôt créer une interface virtuelle sur ta machine A ? comme ça ton serveur répondrait à la bonne machine.
ifconfig eth0:0 bbb.bbb.bbb.bbb
Marsh Posté le 17-10-2007 à 22:59:29
fifi3349 a écrit : Bonjour a tous, |
Bonsoir,
Et pourquoi ?
Marsh Posté le 18-10-2007 à 11:32:22
Si , je me suis mal exprimé, ma machine possède B en interface virtuelle, mais quand tu interroge tu sort forcément par la première interface ...
Et pour répondre au pourquoi, j'ai cette obligation technique, le matériel en face ne peux être configuré différemment...
Merci pour vos interventions !
Marsh Posté le 18-10-2007 à 11:34:03
Je suis toujours dans mes essais, mais il me semblerai que mon pb vienne du postrouting, ce n'est pas que le retour ne matche pas, il ne semble pas y avoir de retour du tout.... l'horreur ..
Marsh Posté le 18-10-2007 à 11:56:00
En fait je ne comprend pas ton architecture...
Il faudrait que tu précises un peu mieux ton bordel car ca me semble un brin complexe. Et les archi de ce type si elle existe trop longtemps... ca va être galère à maintenir.
Deja essaye de poser ton probleme de manière plus carée. Je tente :
Si j'ai bien compris, tu as deux équipements A et B
Bref, mes questions.
1. Si ce que j'ai écrit est correct, je ne vois pas la raison d'etre de la premiere règle. Il suffit que tu configures ton client pour interroger l'adresse IPB2 et le port SNMP2. Ca sera certainement plus propre que de mettre du NAT dans tous les sens sur ton serveur.
2. L'utilisation des communautés SNMP ne perment pas de régler le probleme de double interrogation ?
3. Pour le trafic retour, je suis étonné qu'il récupère l'adresse IP B1... S'il le fait bien, une règle en SNAT pour le trafic émis depuis le port SNMP2 en modifiant l'adresse source devrait faire l'affaire dans la chaine POSTROUTING de la table nat.
Marsh Posté le 19-10-2007 à 13:02:15
En effet o'gure, mes explications sont un peu en vrac, je reprend donc avec une reprise de ton message:
- Le problème actuel a résoudre
* Soit IP A1, l'adresse normale de la machine A et IP B1 l'adresse de la machine B
* La machine A interroge la machine B en SNMP (soit A le client, et B le serveur)
* Le serveur possède un filtrage ne lui permettant de ne répondre qu'a l'adresse C
* Je ne peux modifier ni le filtrage ni l'ip de la machine A
* La machine A utilise le SNMP par ailleurs.
* je n'ai que peu d'accès a la machine B
- Pourquoi ce ce problème
Je reconnais l'aspect nébuleux de la chose, et j'ai du mal a expliquer mon soucis par écris, ha les avantages d'un tableau et d'une biere fraiche ;-)..., mon soucis est que le serveur ne répond qu'a une seule adresse. Et dans mon cas, cette adresse peux provenir de machine différentes a des moments différents bien entendu. C'est en fait une pseudo machine virtuelle basée sur du chroot qui se déplace entre serveurs. Bon, la je suis pas sur d'éclairer le tableau ....
----------
Marsh Posté le 19-10-2007 à 21:07:56
je saisi mal ton problème. Si ton server répond qu'a l'adresse C, et que tu veux faire du nat, je suppose que l'adresse C est non utilisée
Donc dans ce cas pourquoi tu ne mets pas une IP virtuelle sur le server. Tu as dis que tu l'avais fais, mais que ca ressortait toujours pas la meme interface.
Ca me semble bizarre ... si tu veux etre sur, regarde avec un tcpdump les échanges qui se font.
En tout cas, ca serait beaucoup plus simple que ton nat
Marsh Posté le 17-10-2007 à 17:18:33
Bonjour a tous,
Un petit conseil sur l'usage des iptables dans ce cas de figure me serait d'une grande utilité, la je dois dire, je n'ai plus pied ;-)
Posons le problème: J'ai une machine adresse IP A qui dois interroger en snmp un autre serveur, mais qui lui attend forcément une adresse B (adresse que personne ne possède bien sur)
Mon serveur utilisant le snmp par ailleurs , j'ai décidé de positionner dans mes fichier de conf le snmp sur un port différent que je vais noter SNMP2.
la j'ai créé les iptables suivantes
iptables -t nat -A POSTROUTING --protocol udp --destination-port "SNMP2" --destination 0.0.0.0/0 -j SNAT
--to-source "IP2":"SNMP"
En effet la regle est bien utilisé, mais pas de retour. Normal, me suis-je dit tu n'écoute pas ou il faut, donc re iptables:
iptables -A PREROUTING -t nat -p udp -d "IP2" --dport "SNMP" -j DNAT --to-destination "IP":"SNMP2"
Et la il faut le dire, ca ne marche pas, mais alors pas du tout...
Si quelqu'un accepterai de combler mon ignorance en terme d'iptables, un grand merci a lui(elle) par avance !!!