DNS et OpenVpn
-
Bonjour,
J'ai installe Pfsense (derniere version) sur une machine avec un SSD et 32Go de RAM.
Je l'ai configure pour le DHCP et OpenVpn, en suivant des tutos sur le net.
J'ai un serveur Windows (2016) configure pour l'active Directory et le DNS.Quand je suis connecte en local (via ethernet) , mon DNS marche bien: je peux faire un ping avec le nom du server ou son adresse IP.
Mon OpenVpn marche presque bien: Je me connecte a distance, j'arrive a acceder a mes serveurs et mes fichiers, mais je dois entrer l'adresse IP des serveurs ; lorsque j'entre le nom d'un serveur, ca me jette!
Mon pfsense est en 10.1.x.x , et mon OpenVpn en 172.1.x.x
J'ai active le DNS forwarder, puis le resolver. Pas de succes.
Dans le DNS resolver, j'ai cree une " access list" dans laquelle j'ai entre les plages openvpn en 172.x.x.x/24Les parametres de mon DNS Resolver sont :
Enable SSL/TLS Service ON
Network Interface, j'ai "All"
Outgoing Network Interface" j'ai "All"
DNSSEC ON
DNS Query Forwarding ON
DHCP Registration ON
Static DHCP ONDans "Host Override" , j'ai l'adresse IP de mon serveur DNS Windows 2016.
Dans mes reglages OpenVpn Server, J'ai DNS Server enable ON et j'ai mis l'adresse de mon serveur DNS en premier, suivi du serveur DNS de google
Force DNS cache update est ON.
Je dois manquer quelque chose, mais je ne sais pas quoi. J'ai essaye plein d'options differentes, mais rien n'y fait :(
Il faudrait peut etre une regle dans le firewall pour faire un transfert de 172.x.x.x (mon adresse openvpn quand je me connecte) a 10.1.x.x. (adresse de mon gateway) , mais je ne suis pas certain comment faire.Dans le "general setup" section DNS servers, j'ai mis les DNS de google en premier puis mon serveur DNS a moi.
Auriez vous des idees svp ?
Merci beaucoup !
-
1 - quel est ton DNS lorsque tu es sur le réseau local ?
2 - quel est ton DNS lorsque tu es en connecté au travers du VPN ?
La réponse à cette question devrait te mettre sur la piste beaucoup plus rapidement que toutes les options compliquées que tu as essayé autour de la configuration de ton DNS.
Pour aller un peu plus dans le détail, est-ce que ton serveur OpenVPN pousse bien vers le client qu'il doit utiliser un DNS "local" ? -
Bonjour chris,
Merci pour ta reponse.
1- En reseau local, mon DNS est mon serveur windows: ca marche!
2- En VPN, c'est un peux plus etrange: je met une capture d'ecran:Je n'ai pas de default gateway (est-ce normal ? ) et mon serveur DHCP est celui defini par openVpn
Mon server DNS est effectivement defini correctement , mais y'a pas de lien entre mon openvpn (172.x.x.x ) et mon serveur DNS (meme si j'arrive a "pinger" celui ci)
Il me manque un truc quelque part, mais je ne sais ou :( Dans les reglages du serveur vpn ? dans les reglages vpn client ? une regle firewall ?
Merci !
-
Il y a un problème de vision générale.
Imaginons une entreprise avec un site, une liaison internet, et des utilisateurs avec ordi portables voulant accéder au(x) serveurs(s) de l'entreprise depuis l'extérieur.
Il est probable que l'entreprise va avoir un serveur Windows avec un ActiveDirectory, donc un serveur sera 'Domain Controler'. Ce serveur va être serveur DNS et DHCP pour les micros/serveurs de l'entreprise.
Donc, premier point, le firewall pfSense ne sera pas DHCP et DNS (sauf pour le serveur DC).
Les utilisateurs voulant se connecter de l'extérieur vont utiliser OpenVPN pour se connecter à distance.
Donc, deuxième point, le firewall pfSense en serveur OpenVPN, devra fournir comme dns, le serveur DC.
Conseil pratique : dès qu'on a un DC dans un site, il faut laisser le rôle DHCP et DNS au DC et limiter la config du pfSense.
(S'applique à plusieurs fils ...)
-
@kalonkadour , tu as donc la réponse à ta question
comme en VPN, ton DNS n'est pas ton infra Microsoft, contrairement au mode réseau local, ça ne fonctionne pas de la même manière.
La solution est très simple: il faut dire à ton client, en mode VPN, que le DNS, c'est celui de Windows.
ça se fait en poussant l'option "dhcp-option DNS 10.1.1.15" au niveau du serveur OpenVPN.
https://openvpn.net/community-resources/pushing-dhcp-options-to-clients/ -
Merci pour ta reponse. J'ai essaye le push dhcp comme tu preconises
en modifiant le serveur openvpn et pas de succes.
En modifiant le client openvpn, itou.
Et les deux en meme temps, bah ca casse mon vpn.(j'ai redemarre mon pfsense plusieurs fois, pour etre certain que les services etaient bien redemarres )
Et j'ai toujours le meme probleme :(
Pas de gateway quand je me connecte avec openvpn, et mon log affiche les messages suivants :Fri Dec 13 15:10:00 2019 Set TAP-Windows TUN subnet mode network/local/netmask = 172.10.1.0/172.10.1.2/255.255.255.0 [SUCCEEDED]
Fri Dec 13 15:10:00 2019 Notified TAP-Windows driver to set a DHCP IP/netmask of 172.10.1.2/255.255.255.0 on interface {2846EFAE-12AB-46F1-BEA3-D5A63D22C88B} [DHCP-serv: 172.10.1.254, lease-time: 31536000]
Donc mon gateway est 172.x.x.254 et bien sur, il ne communique pas tres bien avec le 10.x.x.x de mon LAN. Pourtant je ping et je me connecte, j'accede a mes logiciels...
-
@kalonkadour j'imagine que le service IT et en particulier NET de AT&T doit pouvoir t'aider efficacement puisque tu sembles être sur leur réseau
Plaisanterie mise à part, tu ne peux pas, sauf si bien sûr tu es vraiment sur le réseau de AT&T, utiliser des adresses IP en 172.10.x.x/24
La RFC 1918 décrit très précisément que les adresses non-routées utilisables comme adresses "privées" sont:
10.0. 0.0 - 10.255. 255.255 (10/8 prefix)
172.16. 0.0 - 172.31. 255.255 (172.16/12 prefix)
192.168. 0.0 - 192.168. 255.255 (192.168/16 prefix)
donc tu vas vite changer ta confça ne résout pas ton problème de DNS, j'en conviens.
Il n'y a rien à changer coté client: c'est le serveur OpenVPN qui pousse l'option de DNS avec DHCP.
Une fois que tu as mis ça en place, quelle est ta configuration coté client ? au lieu de décrire celle-ci, tu montres juste des extraits de log... et je ne comprends pas ce que signifie "il ne communique pas tres bien". -
Bonjour,
Pouvez-vous :-
Se connecter en openvpn
-
Poster le résultat de la commande suivante : nslookup (sous le poste windows en cmd)
-
Poster aussi le log pfsense partie FireWall au moment de l'éxecutuon de la commande
-
-
Bonjour Trixbox,
Desole du retard de ma reponse, je suis en voyage avec un acces limite au net :(
Je me connecte en openvpn, j'ouvre mon "cmd" et je lance un nslookup.
Et voila la reponse:nslookup
Default Server: UnKnown
Address: 10.1.1.15Et le log semble (!) etre :
X Dec 18 20:05:30 WAN Default deny rule IPv4 (1000000103)Donc il semble falloir une regle supplementaire. Le firewall est "tel quel" , je n'ai pas ajoute de regles moi meme (a part celle creees par le wizard openvpn)
Merci beaucoup!
-
Hello @chris4916
Desole du retard, je suis en voyage avec un acces limite a internet :(Ahaha oui, j'etais aux US recemment mais maintenant en amerique latine! Je ne sais pas si "Claro" accepterai de m'aider desormais ;)
Je peux changer ma connexion VPN lan de 172.x.x.x a 173.x.x.x mais pour le moment, je vais eviter de faire des gros changements: comme je suis loin, reparer me sera difficile et j'ai pas envie de me mettre mes collegues a dos... ce serait de sacrees fetes de fin d'annee.
Par "il ne communique pas tres bien", je voulais dire que les serveurs sont joignables, les fichiers aussi (donc, ca passe) tant que j'utilise les addresses IP.
Si j'utilise les noms des serveurs, ben ca marche pu :(Oui, des logs, j'en ai a la pelle , mais je dois dire que je ne sais pas trop ou chercher :(
Le firewall etait une puce a mon oreille, et la config du vpn une autre... d'ou tous mes tests dns (forwarder et resolver)...
Quels logs faudrait il regarder en particulier ?
Merci encore , desole d'etre un boulet ^^' -
En lisant à nouveau tes premiers messages, tu as déjà 10.1.1.15 défini en tant que serveur DNS lorsque tu es en VPN. Donc ce n'est probablement pas un souci de "push".
Regarde dans le log du FW si les requêtes sur le port 53 en direction de 10.1.1.15 depuis ton réseau VPN sont bien autorisées.
Si c'est bien le cas, il te faudra ensuite regarder coté serveur DNS lui-même si tu n'as pas des règles locales qui rejettent ta requête issue d'un réseau autre que le LAN. -
Hello Chris4916,
Merci de ton aide. J'ai change mes adresses VPN et je suis desormais en 72.x.x.x (et plus en 172, ce qui etait un probleme en soit)
Et je n'ai toujours pas de DNS :( mais mon log de firewall me dit:
Default deny rule IPv4 (1000000103)
Ou
Default deny rule IPv4 (1000000104)quand je tape la commande nslookup
Alors j'aimerais bien autoriser les adresse IPv4 (bizarre, dans mon firewall je ne pense pas avoir de regles qui interdise cela)
J'ai bien essayer de chercher par moi meme (et google) mais la plupart des reponses (en anglais) se reduisent a RTFM (ce qui ne m'avance guere helas)
J'ai effectivement mon server DNS defini par defaut correctement, donc je m'oriente plus vers le firewall. Helas, je n'ai que 3 regles: Les 2 par defaut et celle creee par OpenVpn Wizard. (j'ai mis les copies d'ecran pour reference)J'ai bien essaye de creer ma propre regle (en la mettant "au dessus" des autres, meme si je n'ai pas compris si "au dessus" signifiait vraiment "dessus" ou si les regles qui apparaissent en haut dans l'ordre de lecture sont les dernieres a etre executees )
Bref, comment interpreter ce message du log du firewall ?
Merci beaucoup, et bonne annee a tous :)
-
Bonne initiative. Mais ton choix d'adresse n'est malheureusement pas bon et montre que tu n'as pas tout à fait compris le principe de la RFC1918.
Pour faire simple, les adresses IP publiques sont régies par un organisme (IANA) qui a décidé qu'il y avait 3 segments d'IP qi ne seraient jamais attribués à personne et qui ne sont pas routés sur internet. Ce sont des adresses IP "privées" définies dans la RFC1918.
Ces adresses sont:
10.0.0.0/8 (classe A)
172.16.0.0/12 (classe B)
192.168.0.0/16 (classe C)Bien sûr, tu n'es pas obligé, parce que tu as pris une adresse en 172.16.x.x, d'avoir un netmask en /12
Tu pourrais par exemple dans ton cas, choisir 172.16.1.0/24, puisque tu as besoin de peu d'adresse, choisir 172.16.1.0/28Tu noteras que pfSense, par défaut, bloque sur l'interface WAN l'usage des adresses de la RFC1918 (bien sûr puisque ces adresses sont supposées ne pas être utilisées depuis internet).
Ceci étant dit, je ne comprends pas ton message:
"quand je tape nslookup...." où ça et dans quel but ?
tes copies d'écran ne disent rien de précis parce qu'il manque le bandeau qui montre à quelle interface elles s'appliquent. -
Hello Chris,
Merci pour tes reponses :)
Une fois connecte en VPN, j'ouvre sous windows une CMD et je tape nslookup.
Puis je regarde le log du firewall, et je lis le message
Default deny rule IPv4 (1000000103), sur l'interface WAN.Quant a mes screenshots, ils sont effectivement un peu trop rognes :(
Mais en voila des tout nouveaux tout beaux.Si Pfsense bloque les adresses en 172.x.x.x (/24 dans mon cas) alors changer a 72.x.x.x est il un choix logique ou pas ? J'avoue qu'effectivement, le RFC est tout nouveau pour moi et que mon apprentissage est un peu laborieux :(
Merci encore!
-
@kalonkadour said in DNS et OpenVpn:
Si Pfsense bloque les adresses en 172.x.x.x (/24 dans mon cas) alors changer a 72.x.x.x est il un choix logique ou pas
non. Ce que tu n'as pas compris, c'est que 172.x.x.x n'est pas du tout la même chose que 172.16.x.x
la classe B de la RFC 1918 couvre de 172.16.0.0 à 172.31.255.255
tout ce qui est en dehors de ce range d'adresse n'est pas privé.
Techniquement, ce que tu n'as pas intégré, c'est le fonctionnement des netmask. Une adresse IP "seule" ne signifie pas grand chose, dans le cadre de cette discussion, si elle n'est pas accompagnée de son masque de réseau.
Pour faire simple, tant que tu n'as pas encore bien compris comment ça fonctionne et en attendant de progresser sur le sujet sans t'empêcher d'avancer sur ton problème de VPN, tu peux par exemple choisir 172.17.0.0/24 comme IP pour le tunnel.
Profites-en pour supprimer ton access list dans DNS resolver. ça ne te sert à rien pour le moment. D'une manière générale, et surtout si tu ne comprends pas encore tous les détails, il ne me semble pas opportun d'empiler tout un tas de "protections" dont tu ne vas pas savoir laquelle s'applique.
Une fois que ça fonctione, tu pourras éventuellement ajouter des couches de contrôle. -
Hello Chris,
Bon ben j'ai suivi ton conseil et je suis passe en 172.17.1.0/24 sur mon vpn, et j'ai toujours le meme message sur le log du firewall :
Default deny rule IPv4 (1000000103), sur l'interface WAN.c'est facheux, car je pietine depuis un moment :(
Je vais tacher de mieux comprendre cette histoire de RFC. Ceci dit, le probleme semble etre avec le firewall et une regle qui m'echappe, meme si, comme tu l'as tres justement souligne, mes regles sont tres minimalistes pour le moment et je ne compte pas en implementer avant de bien comprendre qui fait quoi !Merci encore :)
-
@kalonkadour cette "histoire de RFC" n'a rien a voir avec le problème que tu rencontres. C'est juste la base de la mise en œuvre du plan d'adressage IP.
1 - As-tu bien supprimé ton access list au niveau du DNS ?
2 - Peux-tu copier et coller ici le message d'erreur tel que tu le vois dans le log ? -
Un truc surprenant dans ce que tu décris: une fois le tunnel VPN établi, ton client ne devrait plus passer par l'interface WAN mais par le tunnel, ce qui est l'objectif des règles sur l'interface "OpenVPN"
-
Hello Chris,
Oui, j'ai bien enleve les access lists au niveau du DNS : c'est l'une des premieres choses que j'ai faite! J'ai aussi enleve l'option "dhcp-option DNS 10.1.1.15" (je devrais peut etre la remettre)
1- Quand je me connecte en VPN, et que je regarde le log du firewall , sans taper aucune commande aucune, j'ai :
Et quand je tape nslookup en ligne de commande sous windows, le meme message s'affiche (coincidence? )
Enfin, le meme message se repete de maniere recurrente, avec differentes IP en source: russie ou hollande! Je me demande si je suis sous attaque... Peut etre que ces messages du firewall n'ont rien a voir avec mon probleme.
Les logs openvpn ne montrent rien de special.
Et j'ai un autre souci (mineur) Les timestamps des logs du firewall ne correspondent pas aux autres timestamp. Pourtant j'ai configure le NTP :(
Merci beaucoup pour ton aide :)
-
tu te compliques probablement la vie pour pas grand chose.
1 - je ne comprends pas pourquoi tu masques l'adresse IP source de ta première copie d'écran, sauf si c'est une IP fixe qui est la tienne, mais auquel cas tu devrais savoir si ta machine fait ce genre de requête sur ce port.
2 - comme je te l'ai déjà écris, une fois le tunnel VPN établi, le client n'accède plus à l'interface WAN mais au tunnel VPN
3 - oui bien sûr, toutes les tentatives d'accès avec une IP source qui n'est pas la tienne n'ont rien à voir avec ton problème. quel est-il au fait ? des messages d'erreur dans le FW ou des vrais problèmes de fonctionnement ?
4 - "les timestamp du log ne correspondent pas aux autres timestamp". Lequels ? Ta machine semble être sur la coté Ouest des US, mais à part ça, ta copie d'écran ne montre aucun problème
5 - et donc quand tu tapes nslookup sur ton client Windows connecté en VPN, que se passe t-il ? Coté client, parce que coté pfSense, il ne se passe à priori rien d'anormal. Une fois que tu as tapé nslookup, il doit te donner le nom du serveur par défaut. Lequel est-il ? et si ce n'est pas le cas, lorsque tu tapes "server", il doit te le donner à nouveau.