PB vpn et iptables - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 05-10-2007 à 01:57:06
Infos en plus:
Sur le routeur IPTABLES avec la commande:
iptables -L -v -n -t filter
Code :
|
Ca confirme ici que rien n'est envoyer du serveur VPN vers le client car il n'y a pas de bits en sortie mais il y en a bien entrée.
Est ce que cette commande iptables est suffisante voir correct?
$IPTABLES -A FORWARD -i eth0 -o eth1 -p udp --dport 4500 -s $SRV -j ACCEPT
Est enfin je croyais que tout était authorisé en sortie mais apparement ce n'est pas le cas?
Ne manque t'il pas quelque chose sur mon serveur genre une route pour indiqué la sortie?
Marsh Posté le 05-10-2007 à 03:34:08
Bou il est tard mais j'avance!!!
Maintenant j'ai un échange permanent de la clée IKE.
Sur mon serveur elle est bien authentifié mais pas de session ouverte car voila j'ai trouvé!!!
Code :
|
La on voit clairement l'autentification mais on vois aussi qu'il n'y a pas d'encapsulation IPSEC!!!
Pas de VPN bou...
J'ai pourtant bien Forward les Protocole 47,50,51 dans le doute j'ai mis les trois mais normalement ca devrais etre
To permit IPSec traffic on IP protocol 50 (ESP) or IP protocol 51 (AH)
un de c'est deux la?
Donc je pense que maintenant c'est le Netgear qui suit pas a suivre!!!
Le Netgear WGT624V3 prend bien en compte ESP et AH mais vers un port UDP!!!
Marsh Posté le 05-10-2007 à 14:36:43
Re Bonjour,
Je fais remonter mon topic car j'ai posté tard et les pro du vpn IPSEC EAP était peu etre couché!!!
Donc j'ai bien le port 4500 et l'authentification qui marche mais pas l'étape suivante.
Le VPN ce monte pas!!!
Le log de mon SRV VPN:
Code :
|
Code :
|
Si ca passe c'est que L'ESP et actif sur le routeur Netgear?
J'ai regardé ce qui ce passe avec une connection VPN local pas beaucoup d'info juste qu'il utilise UDP 500 à la place de 4500 ce qui est normal.
Je vous remet mon fichier IPTABLES a mon avis y a quelque chose qui bloque avec IPTABLES mais quoi?
http://smanob.free.fr/infos/script-iptables
Marsh Posté le 06-10-2007 à 12:56:50
J'avoue que jai pas tout lu, mais, si tu as un doute sur ton firewall, tu peux soit :
- tout autoriser entre ton routeur et ton srv qui a le fw (bof bof)
- mieux : tu mets une regles qui log tout le trafic qui est droppé et tu ajustes le firewall en conséquence.
Pour le log sous iptables c'est -j LOG (et tu peux y associer --log-prefix pour retrouver tes ptits facilements dans les logs ).
Au niveau des ports, de mémoire, tu dois ouvrir :
le 500 en udp pour isakmp
le protocole esp/ah (50/51)
et pour nat-t c'est le 4500 en udp.
Marsh Posté le 06-10-2007 à 15:58:09
Yes merci d'avoir répondu!!!
ALors effectivement j'ai des doute apprement mon routeur ferais du NAT-T unniquement Lan>WAN donc comme je passe par ce mm routeur pour aller au Routeur IPTABLES par WIFI je pense que ca passe pas.
A verifier.
Sinon ouais j'ai remarqué que le port 500 et bien utiliser pour l'authentification ensuite ca utilise le Port udp 4500 et la aprés normalement doit y avoir ESP/AH (50,51) mais jamais rien de transmis.
J'ai bien FW vers mon ip tables et j'ai retappé tous le script pour apprendre avec l'aide de ce site:
http://olivieraj.free.fr/fr/linux/ [...] /firewall/
pour moi ca devrais marché:
Je met le nouveau scritp utilisé, il est pas super propre car il me sert a faire des test mais je pense qu'il est pas mal au niveau Firewall.
Si tu peu me donner ton avis sur mon script ce serais cool!!!
http://smanob.free.fr/infos/script_new
Encore merci.
Marsh Posté le 06-10-2007 à 16:02:11
J'ai pas tout lu, je vais le faire tout a l heure mais pour résumer vite fait :
- première phase pour l'authentification et la négociation automatique sur le UDP 500 (protocole IKE)
- Dans cette premiere phase, les deux end points vont détecter la présence du NAT et devraient automatiquement passé en mode "NAT-traversal" et donc utilisation du port UDP 4500 pour le tunnel IPsec. Tout sera encapsulé dans l'UDP port 4500. Pour ton firewall, il ne verra ni ESP et AH vu que ca sera contenu dans l'UDP.
Marsh Posté le 06-10-2007 à 16:15:18
Ok ben alors ca devrais marché!!!
Car la connection sur le port 4500 ce fait bien.
Donc doit y avoir un autre port a forwarder.
Si quelqu'un peu regarder mons script ce serais super sympa!!!
http://smanob.free.fr/infos/script_new
Marsh Posté le 06-10-2007 à 16:20:29
Non il n'y a que le 500 pour IKE et le 4500.
regarde au niveau du routage
Marsh Posté le 06-10-2007 à 16:21:48
Tiens j'ai une nouvelle erreur cool ca veut dire que ca a changé!!!
Je crois que ca avance!!!
Merci de vous intéréssé a mon PB.
J'ai mis la couche pour être précis!!!
Et au fait pour les données y a le port 1701 qui est utilisé en udp je crois.
Je vous met mon
iptables -L -v -n> infosipouv
http://smanob.free.fr/infos/infosipouv
Plus facil pour comprendre je pense.
Encore merci.
Au moins si je trouve ca fera un mini tuto LoL!!!
Marsh Posté le 06-10-2007 à 16:29:18
J'ai l'impression que tu sais pas tout a fait ce que tu fais. Essaye de remettre dans l'ordre les choses dans ton esprit, tu t'en sortira mieux pour débugguer.
1701 en UDP: c'est L2TP (Layer 2 Tunnelling Protocol) C'est différent de IPsec
UDP port 500 : c'est IKE utilisé pour échanger des clés pour la crypto et détecter le NAT pour IPsec
UDP port 4500 : c'est l'encapsulation utilisé par IPsec pour passer les NAT.
Ce que tu veux c'est quoi exactement ?
un tunnel L2TP protégé par IPsec ?
Et es tu sûr d'avoir tout correctement configuré sur ton serveur IPsec ?
Si tu as du L2TP, tu as bien configuré ton serveur L2TP ? et pppd également ?
Marsh Posté le 06-10-2007 à 16:32:12
Bon ben de nouveau le même fonctionnement sans rien changer bou!!!
Code :
|
En boucle il s'idenfie accept et jamais ne monte le vpn il marche bien en local pourtant.
Ma config peu marché cf ma topo réseau???
Marsh Posté le 06-10-2007 à 16:34:45
DSL poste croisé!!!
Alors oui je sais tous ca mm si j'ai pas était précis merci.
Alors je veut ca:
Qui marche du feu de dieu en local sur le reseau 192.168.1.0 mais pas du 192.168.0.0.
Merci de me répondre c'est super sympa!!!
PS: ma carte wifi sur le routeur est une BG2200 qui me pausé deja pb sous windob pour me connecter a des vpn.
Pi etre ca?
Mais Linux gére mieux le wifi donc comme c'etait un pb de drivers peu etre pas ca.
Sinon dsl ca fait trois jour que je fais du IPTABLES donc je sais pas si c'est mon script le pb!!!
http://smanob.free.fr/infos/script_new
Marsh Posté le 06-10-2007 à 18:55:14
Re: Salut
Donc ca y est j'ai localisé le pb mais j'ai trop mal a la tete pour trouver de suite une solution viable!!!
Ca devrais etre facil pour vous:
Voila.
En fait ca marche depuis hier mais je me connecté pas a la bonne ip je m'explique car c'est en fait ca mon pb!!!
Voila:
Du reseau 192.168.0.x si je tape l'adresse ip de ma passerelle IPTABLES soit 192.168.0.12 (branche externe) ca passe pas!!!
Si du reseau 192.168.0.x je tape directement l'adresse IP de mon SRV soit 192.168.1.10 miracle ca passe LoL!!!
Le truc donc c'est que je peu pas me connecter en tappant l'ip du routeur 192.168.0.12, pourquoi?
Le deuxiéme truc c'est que je peu pas mis connecter en tappant l'ip public(peu etre car je fait du nat donc mon pc de test a lui mm cette ip public?).
Voila je suis pas loin mais j'en peu plus pas dormis un ptit coup de mains syouplais!!!
Un pb de route apparement mais la j'ai du mal j'avoue!!!
J'ai deux route static sur mon routeur Netgear:
destination 192.168.1.0 passerelle 192.168.0.12 (ip externe routeur IPTABLES)
destination 192.168.0.0 passerelle 192.168.0.1
Ip routeur netgear 192.168.0.1.
Merci d'avance c'est facil je pense je veut me connecter en tappant ip public merci.
Marsh Posté le 06-10-2007 à 21:56:15
Bon est bien non c'etait pas ca non plus.
Car j'ai test avec un script IPTABLES qui forward tous et ca marche.
Comportement étrange d'ailleur car je load mon script qui laisse tous passer ca marche.
Ensuite je load mon script actuel et ca passe.
Je redémarre la machine éxécute le script actuel et ca marche plus.
Donc ca vient de mon script je pense.
Un chtit coup d'oeille syouplé.
http://smanob.free.fr/infos/script_new
Marsh Posté le 07-10-2007 à 04:33:39
De nouveau moi dans l'espoire quond me réponde un jour:
J'ai avancé et maintenant je peu me connecter de mes deux réseau locaux.
192.168.0.x et 192.168.1.1 marche si je me connecte directement sur IP serveur 192.168.1.10.
Donc de l'exterieur je n'y arriverai pas.
J'ai aussi le pb suivant: je n'arrive pas a me connecter au port 22 SSH du reseau 192.168.0.x et de l'exterieur.
J'ai mon SSH bien configuré.
Encore un PB a résoudre mais les deux dernier qu'il me reste.
Je sent que c'est liéer au PREROUTING et au filtrage de netfilter.
Le resultat de la commande iptables -L -v -n -t filter
http://smanob.free.fr/infos/filterport
Mon nouveau script et dispo la:
http://smanob.free.fr/infos/script_new
Un grand Merci de prendre un peu de temps pour lire c'est nouvelles infos!!!
Marsh Posté le 07-10-2007 à 20:11:21
Bon ca y est j'ai bien compris comment marche IPTABLES, ca c'est une bonne nouvelle non???
Ma premiére erreur pour me connecter du subnet1 vers subnet2 venait de ma mauvaise compréhension des options de filtres (qui sont vraiment bien je trouve) NEW,RELATED et ESTABLISHED.
Une fois compris qui me fallait l'option RELATED pour que mon SRV puisse répondre tout marche parfaitement en LOCAL maintenant (subnet1, subnet2).
Alors pour le PB du port 22 c'etait liée au port qui doit être dport en entrée donc un port dynamique aléatoire.
(au passage merci tcpdump)
Et pour le VPN il faut faire du PREROUTING pour ce connecter de l'exterieur sur mon IP public comme pour l'accées
a ma page HTTPS car sinon il est perdu coco, ce qui est normal et ce qui fait la grosse sécu de IPTABLES avec netfilter.
J'ai pas encore testé de l'exterieur car comme le Netgear fait du NAT(mais surtout FW tous vers IPTABLES) et a donc la mm IP public, le SRV VPN IPTABLES ne peut lui répondre mais je vois qd mm la tentative de réponse partir et ce perdre car en local il peu toujours chercher le clients.
Donc en théorie ca devrais marché.
Je mettrais résolut qd j'aurais test de l'exterieur.
Le script Final:
http://smanob.free.fr/infos/script_new1
Vous pouver donner votre avis!!!
Marsh Posté le 05-10-2007 à 01:50:02
Bonjour,
Et d'abord salut!!!
Voila la topo de mon réseau:
Donc j'ai un serveur VPN IPSEC avec EAP (certificats) qui marche bien en local subnet 192.168.1.x.
J'aimerai que les postes du subnet 192.168.0.x si connecte et enfin que je puisse me connecter de l'extérieur.
Après plusieurs tests je n'arrive pas à me connecter depuis l'extérieur et depuis le subnet 192.168.0.x avec l'erreur Délais de la négociation de sécurité dépassé sur les postes client.
Alors le netgear et le routeur IPTABLES sont configurés pour faire du NAT le Netgear est en sortie donc NAT avec IP public et le routeur Linux IPTABLES avec eth1 (carte WIFI intel BG2200).
Je partage ma connexion internet avec le Netgear pour les deux réseaux, le routeur IPTABLES assure le partage web pour le subnet 192.168.1.x.
J'ai un site https (SSL certificats) sur le serveur VPN qui est accessibles de l'extérieur comme de l'intérieur donc qui fonctionne bien. Le routeur IPTABLES fait bien la redirection de port même si je le fait vers le même port.
Premier test connexion VPN:
Depuis station 192.168.0.x et extérieurs:
Mon serveur VPN reçois la demande d'identification mais ni répond pas:
Sur le routeur IPTABLES avec tcpdump -i eth1 -ln je vois ca:
Si je comprends bien il n’arrive pas à trouver le port udp 4500 du client 192.168.0.11 ?
eth1=branche Externe 192.168.0.12
eth0=branche interne 192.168.1.1
Infos complémentaires:
Sur le routeur Netgear j'ai mis une route static vers le routeur IPTABLES Comme ceci :
Destination 192.168.1.0 passerelle 192.168.0.12. Ce qui me permet de ping eth0 soit 192.168.1.1 mais bien sur pas le serveur a cause du NAT mais surtout grâce au NAT.
Je redirige tout le trafics de l'extérieur (internet) vers le routeur IPTABLES avec le Netgear donc sur eth1: 192.168.0.12. Tous les ports vers 192.168.0.12.
J'ai configuré IPTABLES avec les règles suivantes:
Je suis débutant en IPTABLES comme ca peu ce voir LOL!
Le script complet ICI: http://smanob.free.fr/infos/script-iptables
Voilà c’est un peu lourd mais comme c’est un PB complexe je pense qu’il vous faut un max d’infos.
Je me demande si la redirection de port de mon Netgear n’est pas le pb car si je redirige tous vers le routeur IPTABLES ca doit être normal que le SRV VPN n’arrive pas à trouver le port udp 4500 d’un client sur le subnet 192.168.0.x.
Est ce que je peu faire de la translation de port avec iptables dans l’autre sens ( cad eth0 vers eth1 le ports 4500 vers 6000) ce qui me permettrais de redirigé un port pas utils sur le Netgear vers le subnet 192.168.0.x ?
Je tourne en rond et je me demande si ma config me permet d’obtenir les résultats souhaités ?
Le protocole GRE sur le routeur IPTABLES et t’il bien configuré ?
Je prends tout, doc, infos, conseil c’est la grande braderie !!!
Votre avis et le bienvenu Merci d’avance!!!