Il y a un serveur OpenVPN fonctionnant sur Debian et il pousse un DNS dans le fichier de configuration du serveur:
pousser "dhcp-option DNS 8.8.8.8"
Existe-t-il une option pour permettre aux utilisateurs de modifier ces serveurs DNS côté client?
Voici le hic, le serveur openvpn doit pousser un DNS car sinon de nombreux clients OpenVPN ne pourront pas ouvrir de pages Web tant que les serveurs DNS définis manuellement dans les paramètres réseau du système.
Mon objectif est d'appliquer automatiquement un serveur DNS par défaut aux utilisateurs non techniquement qualifiés, tout en permettant également aux utilisateurs d'ordinateurs qualifiés de configurer leurs propres serveurs DNS.
Notez que simplement changer les paramètres DNS sur le PC alors que l'option 'push "dhcp-option DNS 8.8.8.8"' est active sur le serveur openvpn, ne fait rien. Le DNS poussé par le serveur reste quels que soient les paramètres DNS locaux.
Des idées?
Configuration du serveur OpenVPN:
# cat /etc/openvpn/openvpn.conf
server 10.186.35.0 255.255.255.0
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
ifconfig-pool-persist ipp.txt
#push "route 0.0.0.0 0.0.0.0"
#push "redirect-gateway"
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
comp-lzo
user nobody
group users
persist-key
persist-tun
status openvpn-status.log
verb 3
script-security 3
auth-user-pass-verify /etc/openvpn/auth-chap via-env
client-cert-not-required
duplicate-cn
management 127.0.0.1 5119
script-security 3 system
username-as-common-name
client-connect /etc/openvpn/scripts/clientconnect.sh
client-disconnect /etc/openvpn/scripts/clientdisconnect.sh
log-append /var/log/openvpn.log
log /var/log/openvpn.log
MISE À JOUR: Les systèmes d'exploitation clients sont Windows et Mac
Réponses:
Depuis 2017 (OpenVPN 2.4), cela est désormais possible. Ajoutez cette ligne à votre fichier de configuration client:
et il ignorera toutes les lignes de configuration poussées qui commencent par le texte cité.
Les options sont appariées de haut en bas, donc la première correspondance est utilisée. Vous pouvez l'utiliser pour autoriser certains itinéraires et en rejeter d'autres, si cela convient à vos besoins.
Les trois mots - clés d'action sont
accept
,ignore
etreject
. Je n'ai pas découvert de cas d'utilisation pourreject
.la source
Dans la documentation officielle d' OpenVPN, vous pouvez trouver:
Malheureusement, en plus de ce que vous demandez, cela a pour effet secondaire de désactiver également la passerelle de redirection fournie par votre configuration et cela peut représenter un problème, dans votre cas.
Ce que je suggère, c'est une approche complètement différente.
Comme vous l'avez explicitement mentionné: « Mon objectif est d'appliquer automatiquement un serveur DNS par défaut aux utilisateurs non techniquement qualifiés, tout en permettant également aux utilisateurs d'ordinateurs qualifiés de configurer leurs propres serveurs DNS. » Il semble que vous sachiez exactement quels utilisateurs vous souhaitez fournir. une configuration DNS et quels utilisateurs vous ne souhaitez pas fournir une telle configuration.
Par conséquent, au lieu de pousser votre configuration directement dans le fichier de configuration principal d'OpenVpn (... et, en tant que tel, de fournir une telle configuration à TOUS vos utilisateurs), vous pouvez implémenter une configuration par utilisateur . Vous pouvez le faire avec:
Donc, comme pour la configuration principale, vous devez supprimer :
et ajoutez une référence au répertoire / etc / openvpn / userconf (à titre d'exemple. N'hésitez pas à choisir ce que vous voulez):
Ensuite, dans un tel répertoire userconf, créez un fichier pour chacun des utilisateurs auxquels vous souhaitez fournir un tel DNS, y compris dans ce fichier les deux lignes supprimées ci-dessus.
Évidemment, vous êtes libre d'affiner la configuration openvpn pour chaque utilisateur, sans limiter la personnalisation aux deux lignes ci-dessus.
Enfin, vous pourriez également être intéressé par le paramètre exclusif ccd .
la source
Mon problème n'était pas exactement le même, mais les symptômes étaient suffisamment similaires pour que cette question apparaisse dans les résultats de recherche, donc au cas où quelqu'un d'autre se retrouverait ici pour la même raison:
J'utilise Tunnelblick , une interface graphique OpenVPN pour Mac OS. Mon serveur OpenVPN n'était pas configuré pour pousser des options DHCP ou DNS, mais le client utilisait toujours le serveur DNS sur VPN, au lieu du serveur DNS local non VPN que je voulais qu'il utilise.
La solution était d'aller dans Configurations → onglet Paramètres de Tunnelblick et de changer Définir DNS / WINS sur Ne pas définir de serveur de noms .
la source
Merci pour @aldaviva, cela fonctionne sur mon macOS 10.11.
Joignez ma capture d'écran.
la source