Page 1 sur 3

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : dim. 24 juil. 2016 10:38
par yoplait21
Salut à tous,

j'ai remis en place mon bonding openvpn mais je rencontre un soucis pour le NAT ...
à tous les coups c'est un truc con comme mes pieds mais je dois avouer que ça fait 3 soirées que je passe sur le sujet sans avancer ..
le pire c'est que j'avais réussi à le faire fonctionner mais je ne me rappelle plus comment ...

je ne suis pas doué non plus en schéma donc je vais tenter de donner un max d'infos par texte


VPN-WAN = machine hébergée dans un DC sous debian avec openvpn et un bond, la patte qui me sers de sortie et d'entrée pour le net est sur eth0 et le vpn est sur bond0 (tap1 tap2 tap3) (172.16.16.1)
VPN-LAN = machine hébergée en local sous debian avec openvpn et un bond, la patte d'entrée est le bond0 (tap1 tap2 tap3) (172.16.16.2) et la sortie vers mon routeur est eth0 (192.168.254.1)
ROUTEUR-LAN = machine sous pfsense, une patte wan en 192.168.254.254 et une patte lan en 192.168.1.1
SERVEUR-LAN = machine debian, serveur ssh lancé et écoute sur 192.168.1.250


Je souhaite accéder à partir du net à mon serveur ssh localisé sur 192.168.1.250
J'ai mis en place 2 règles nat sur le ROUTEUR-LAN et sur VPN-LAN qui fonctionnent car depuis VPN-WAN je peux me connecter.
Par contre, il semblerait que le nat ne fonctionne pas depuis le net vers VPN-LAN en passant par VPN-WAN ... VPN-WAN semble ignorer la règle.

Attention les yeux, ça vas piquer et j'en vois certains qui se marrent (pour ceux qui auront pu digérer le pavé plus haut)

J'ai testé avec le port 80 qui est redirigé par le Pfsense sur le port 22 du SERVEUR-LAN bien sur :)

Règles VPN-WAN

Code : Tout sélectionner

#!/bin/bash
IPTABLES=/sbin/iptables
/sbin/iptables -A INPUT -i eth0 -p tcp  --sport 1024: --dport 2121 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -o eth0 -i bond0 -s 192.168.254.0/24 -m conntrack --ctstate NEW -j ACCEPT
/sbin/iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE


$IPTABLES -A FORWARD -p tcp --dport 80 -i eth0 -o bond0 -d 172.16.16.2 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -p tcp --sport 80 -i bond0 -o eth0 -s 172.16.16.2 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A PREROUTING -t nat -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.16.2:80



Règles VPN-LAN

Code : Tout sélectionner

#!/bin/bash
IPTABLES=/sbin/iptables

for i in tap1 tap2 tap3 bond0
do
$IPTABLES -A OUTPUT -o $i -j ACCEPT
$IPTABLES -A INPUT -i $i -j ACCEPT
$IPTABLES -A FORWARD -i $i -j ACCEPT
done


$IPTABLES -A FORWARD -p tcp --dport 80 -i bond0 -o eth0 -d 192.168.254.254 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -p tcp --sport 80 -i eth0 -o bond0 -s 192.168.254.254 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A PREROUTING -t nat -i bond0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.254.254:80

Donc pour résumer, si depuis VPN-WAN je fais un ssh 172.16.16.2 -p 80 j'ai bien accès au ssh de ma machine SERVEUR-LAN,
j'en déduit que la règle VPN--LAN est ok et que la règle sur ROUTEUR-LAN l'est aussi sinon je me ferais jeter,
par contre, si je tente de me connecter avec mon addresse publique (eth0 sur VPN-WAN) je n'ai pas d'invite de connection, j'en déduit que la règle NAT sur VPN-WAN n'est pas bonne ...

Bref, si quelqu'un pouvait m'aider à enlever le gras de jambon sur mes lunettes ça serais chouette :jap:

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : dim. 24 juil. 2016 21:17
par yoplait21
bon je m'auto répond ...

RTFM !!
plus sérieusement, c'est un ensemble ignoble de copiter copiler dont je ne comprend rien .. je vais reprendre à zéro ..

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : dim. 24 juil. 2016 21:43
par Zedoune
J'ai pas trop compris mais en fait tu veux juste permettre au serveur-lan d'être connecté à internet ?

Routeur-lan il a déjà internet lui ?

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : dim. 24 juil. 2016 22:15
par yoplait21
Niveau accès internet tout est ok et parfait ^^ je souhaite pouvoir accéder par exemple à mon service ssh tournant sur une machine du lan à partir d'internet, donc à travers le bond openvpn.

J'ai repris à plat et je ne comprend toujours pas pourquoi cela ne fonctionne pas ... je pense que le bond n'as pas grand chose à voir la dedans au final .. juste un soucis d'interface chaise-clavier.

Exemple:
sur mon serveur vpn distant je peux faire un ssh 192.168.254.1 -p 22, j'ai l'invite je peux me connecter au serveur ssh du VPN LOCAL c'est magique (192.168.254.1 est l'ip "locale" du vpn coté client), tout comme je peux me connecter en ssh avec 172.16.16.2 au VPN LOCAL, donc l'ip du tunnel vpn coté client.

Mais si je tente de faire du NAT pour pouvoir me connecter en ssh à mon SERVEUR LOCAL à partir du net cela ne fonctionne pas, je n'ai pas d'invite mais connection refused (mobaxterm en client ssh)

voici les règles que j'utilise coté vpn datacenter:

Code : Tout sélectionner

$IPTABLES -A FORWARD -o eth0 -i bond0 -s 192.168.254.0/24 -m conntrack --ctstate NEW -j ACCEPT
$IPTABLES -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A POSTROUTING -t nat -o eth0 -j MASQUERADE

$IPTABLES -A FORWARD -p tcp --dport 2121 -i eth0 -o bond0 -d 192.168.254.1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -p tcp --sport 2121 -i bond0 -o eth0 -s 192.168.254.1 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A PREROUTING -t nat -i eth0 -p tcp -m tcp --dport 2121 -j DNAT --to-destination 192.168.254.1:22


EDIT : le plus beau schéma que j'ai jamais fait ... j'ai honte :

Image

Petite précision, sur le vpn datacenter et vpn local j'ai 4 interfaces, la eth0 qui me sers de point d'entrée et de sortie et eth1 eth2 eth3 qui servent pour le bond, mais je ne veux pas sortir par elles pour mes règles NAT mais par le bond0 ...
et cela fonctionnait avant que je perde me fasse hacker oublie comme une daube de vérifier mes backups

Dans les grandes lignes, je veux pouvoir accéder depuis le net à mon serveur SSH 192.168.1.250.
Cependant, le soucis que je rencontre est bien plus en amont, à savoir que je n'arrive même pas à passer le NAT de VPN DATACENTER....
la règle pfsense est ok et validée depuis VPN Local, je peux bien me connecter à mon serveur ssh à travers le pfsense, c'est juste la règle iptables que je dois mal appliquer qui fait que je ne peut pas passer de VPN DATACENTER à VPN LOCAL.

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:15
par yoplait21
mon schéma as fait si peur que çà ? :)

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:26
par biour
:lol:

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:30
par poulpito
faut reprendre hôte par hôte avec du tcpdump et voir ou ça passe et ou ca repart pas (ou alors ou ca passe pas)

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:30
par Zedoune
ça doit être un problème d'iptables du coup, mais là j'y connais rien :(

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:37
par biour
faut reprendre hôte par hôte avec du tcpdump et voir ou ça passe et ou ca repart pas (ou alors ou ca passe pas)
DNS !!


(private joke)

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:50
par kalistyan
Il faut voir avec dsebire, il maîtrise bien iptables.

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 11:55
par poulpito
pour moi il manque un masquerade en entrée avant d'envoyer à travers ton bond0

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 12:40
par yoplait21
celui la ne fait pas l'affaire tu penses ?

$IPTABLES -A POSTROUTING -t nat -o eth0 -j MASQUERADE

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 12:45
par poulpito
non puisque la c'est pour les paquets qui sortent sur eth0
je connais pas après le fonctionnement avec tap mais je serai tenté de dire qu'il faudrait plutôt faire un -o bond0

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 13:03
par yoplait21
Bon .. déjà pour commencer ça serait chouette que j'évite de vouloir rediriger le port 2121 en nat car c'est le port de mon serveur openvpn ..... (ouaips .. chaise clavier tout ça) ...

Je tente donc de rediriger le 3333 externe vers le port 3333 en interne (vers le pfsense quoi, lui ensuite redirige comme il se doit en interne).

un petit tcpdump | grep 3333 sur eth0 m'indique bien une entrée mais la même commande sur bond0 ne me donne rien ..

j'ai bien rajouté
$IPTABLES -A POSTROUTING -t nat -o bond0 -j MASQUERADE

Bien entendu à partir de VPN WAN je peux faire un ssh 192.168.254.254 -p 3333 et ça répond bien ..

la règle ne doit pas être bonnne

Code : Tout sélectionner

#!/bin/bash
IPTABLES=/sbin/iptables
iptables=/sbin/iptables


for i in tap1 tap2 tap3  bond0
do
$IPTABLES -A OUTPUT -o $i -j ACCEPT
$IPTABLES -A INPUT -i $i -j ACCEPT
$IPTABLES -A FORWARD -i $i -j ACCEPT
done

$IPTABLES -A FORWARD -o eth0 -i bond0 -s 192.168.254.0/24 -m conntrack --ctstate NEW -j ACCEPT
$IPTABLES -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A POSTROUTING -t nat -o eth0 -j MASQUERADE
$IPTABLES -A POSTROUTING -t nat -o bond0 -j MASQUERADE

$IPTABLES -A FORWARD -p tcp --dport 3333 -i eth0 -o bond0 -d 192.168.254.254 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -p tcp --sport 3333 -i bond0 -o eth0 -s 192.168.254.254 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A PREROUTING -t nat -i eth0 -p tcp -m tcp --dport 3333 -j DNAT --to-destination 192.168.254.254:3333


[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 13:10
par poulpito
tcpdump port 3333 -n plutot ;) que le grep (et le -n pour oublier le dns qui met du temps)
et pour les règles iptables ... euh je vais relire ca a tête reposée :D :whistle: :lol:

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 13:16
par yoplait21
ha bah vi c'est plus propre qu'un | grep de goret ^^

merci pour l'info

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 13:27
par gizmo78
et un not port 22 pour retirer ta session ssh :)

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 13:29
par poulpito
ouai aussi and host xxx.xxxx.xxxx.xxx comme tu connais l'ip d'origine :D au moins tu verra que tes paquets :D

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:33
par yoplait21
okok, on vas faire la première échographie de madame et je vois tout ça en rentrant ^^

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:35
par Zedoune
cat /dev/maman | txt2img --out echographie.png :P

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:37
par poulpito
cat /dev/maman | grep bidon | txt2img --out echographie.png

sinon il a sa femme en 3D :D

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:38
par Zedoune
cat /dev/maman | grep bidon | txt2img --out echographie.png

sinon il a sa femme en 3D :D
ah non ici on a une faute commune :P

grep bidon /dev/maman | txt2img --out echographie.png :P

pas besoin d'utiliser cat si on fait un grep derrière :P

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:40
par poulpito
ouai pas faut :D chieuse :p
c'était hier ta journée en profite pas trop :non: :lol:

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:45
par Zedoune
ouai pas faut :D chieuse :p
c'était hier ta journée en profite pas trop :non: :lol:
journée de la femme ?
Image

[NAT] règle non fonctionelle .(resolu soucis de mac)

Publié : mar. 26 juil. 2016 14:54
par poulpito
ouaiiiiiii journée de la femme avec morena :D
partage en sucette !
Image

(HS OFF désolé pour le pourrissage de topic mais ca se fête )