web-dev-qa-db-fra.com

Comment démarrer et connecter automatiquement OpenVPN dans Windows 10?

Le démarrage de Windows 10 semble être étrange ou du moins nouveau. De nombreux programmes ne démarrent pas automatiquement comme ils le faisaient dans les versions précédentes, et beaucoup de personnes demandent comment faire en sorte que les choses démarrent automatiquement. Je le sais, car je cherche constamment à lancer automatiquement les programmes auxquels je suis habitué.

Comment faire en sorte qu'OpenVPN démarre au démarrage, empêche l'accès Internet jusqu'à ce qu'il soit connecté et se connecte automatiquement à un profil OVPN?

Je dispose déjà des informations d'identification enregistrées dans un fichier texte. OpenVPN doit donc simplement charger le fichier, le traiter et se connecter.

Auparavant, cela fonctionnait sous Windows 7, mais il semble que j'ai oublié comment le faire.

10

Le meilleur moyen est d'utiliser les services:

  1. Installez le service OpenVPN lorsque vous installez le client;
  2. Placez vos profils OpenVPN (avec l’extension .ovpn, pas .conf comme il est courant sous Linux) dans le sous-répertoire config du répertoire d’installation OpenVPN, probablement C:\Program Files\OpenVPN\config.
  3. Ouvrez la console Services (services.msc);
  4. Recherchez OpenVPNService, cliquez dessus avec le bouton droit de la souris, choisissez Propriétés et modifiez le type de démarrage de «Manuel» à «Automatique».
  5. Démarrez le service et OpenVPN recherchera et se connectera aux profils dans n’importe quel fichier .ovpn. Gardez à l'esprit que dans la plupart des situations, vous avez besoin d'une interface TUN/TAP par fichier de connexion. Dans les fenêtres, il est fortement conseillé d'associer de manière permanente une interface à leur connexion à l'aide des fichiers de configuration: dev-node TAP_Serv force OpenVPN à lier la connexion à l'interface réseau nommée "Tap_Serv".

Vous voudrez peut-être examiner la possibilité d'élaborer une liste blanche pour forcer le service à se connecter uniquement à des fichiers spécifiques, mais pas à tous. J'ai eu quelques problèmes dans le passé avec des personnes qui avaient besoin d'un serveur VPN en tant que service, ainsi que de plusieurs fichiers client VPN sur le même ordinateur, qui ne se connectent que de temps en temps. Dans ces situations, si je voulais que l'interface graphique OpenVPN leur montre une belle liste de connexions disponibles, cela signifiait que le service voyait ces fichiers et essayait de s'y connecter automatiquement. Dans ces cas, j'ai décidé de ne pas utiliser les services du tout:

Si l'utilisation d'un service n'est pas une option, vous pouvez passer des arguments de ligne de commande supplémentaires à l'invocation de l'interface graphique OpenVPN pour le connecter automatiquement au démarrage (ainsi que pour afficher l'icône de la barre d'état de la manière habituelle):

openvpn-gui.exe --connect myprofile.ovpn

Pour que cela fonctionne lorsque vous vous connectez, placez un tel raccourci dans le dossier de démarrage habituel. (Pour tous les utilisateurs, %ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup; ou pour l'utilisateur actuel uniquement, %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup.)


Je ne sais pas comment éviter que l'utilisateur se connecte à Internet avant la configuration du VPN. La seule façon pour moi de savoir si j'utilise le pare-feu Windows et je ne suis pas un expert en la matière. Si vous voulez éviter à un utilisateur de pouvoir accéder à Internet, vous devez installer un pare-feu dans votre passerelle ou des stratégies de groupe strictes pour éviter la multiplication des privilèges.

Pour un utilisateur normal, vous pouvez configurer la machine cliente Windows sans passerelle par défaut. Définissez un itinéraire statique persistant vers le serveur VPN sur les clients Windows à l'aide de la commande suivante (-P le rend persistant):

route -P add <target> mask <netmask> <gateway IP> metric <metric cost> if <interface>

Les Roues dans Windows sont stockés sous la clé de registre suivante:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes

À ce stade, un client déconnecté a uniquement accès au serveur VPN. Ensuite, vous pouvez ajouter les lignes suivantes dans le fichier de configuration du serveur VPN pour ajouter des itinéraires sur les clients lors de leur connexion:

Pour configurer le serveur VPN en tant que passerelle par défaut:

Push "redirect-gateway def1 bypass-dhcp"

Pour ajouter un itinéraire spécifique via le serveur VPN:

Push "route 192.168.1.0 255.255.255.0"

Parfois, la mise en route ne fonctionne pas sous Windows. Lorsque cela m’arrive, je désinstalle complètement OpenVPN et ses interfaces sous Windows, redémarre le système et installe la dernière version du logiciel. Ensuite, avant d’établir la première connexion, je redémarre Windows. Cela a toujours résolu les problèmes. Cependant, la mise à jour de Windows 10 Anniversary (1607) pose problème avec OpenVPN. Il existe un lien vers une discussion plus approfondie sur les forums OpenVPN:

Problèmes de connexion avec la mise à jour anniversaire de Windows 10

Gardez cela à l’esprit lorsque vous configurez vos clients Windows 10 OpenVPN.

23
DGoiko